色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

部署處理特定任務的單片機來簡化復雜設計

21克888 ? 來源:廠商供稿 ? 作者:Robert Perkel ? 2022-05-11 15:39 ? 次閱讀

摘要:處理特定任務的單片機可減輕主單片機或微處理器的任務和工作負荷,從而有助于簡化各種應用的設計流程。

如今,運行實時操作系統(RTOS)的大型32位單片機(MCU)和微處理器(MPU)日益普及。不過,如果使用一個大型單片機處理復雜的應用,可能會在執行小型后臺處理任務時遇到CPU資源方面的問題,這些任務雖然并不復雜,但十分耗時。8位和16位MCU等小型器件可用于減輕32位器件的工作負荷。

試想一下這樣一個示例:將一個32位MCU用于控制汽車的非安全功能,如娛樂系統、環境照明和空調。此32位器件必須對其資源進行分配,以便處理與這些功能相關的所有任務。這樣的任務還包括測量駕駛室內多個點的溫度、打開/關閉空調系統、更新圖形顯示、處理用戶輸入、調整照明條件和播放音樂。即使對于大型32位器件,這些工作量也過于繁重。

但是,如果32位器件將部分任務負荷轉移給幾乎不需要監控的子處理器,每個子處理器僅負責處理其中的1或2個任務,那么這些任務會更易于管理。這可以釋放主處理器上的CPU資源,從而降低軟件的復雜性,同時提高性能并縮短執行時間。

這種解決方案與單片機中的外設有異曲同工之妙。外設是專用硬件的小型模塊,可以添加新功能(例如運算放大器模數轉換器),也可以減少執行給定功能時CPU必須承擔的工作量。在某些情況下,初始化后,外設可獨立于CPU運行。

為了說明外設的優勢,我們以產生脈寬調制(PWM)信號為例。要在沒有專用外設的情況下產生PWM,只需將I/O線設為高電平,等待一定數量的周期后,將其設為低電平,再等待一段時間,然后重復操作。這會占用大量CPU周期,并且對于某些功能(如RTOS)來說,難以可靠地執行。相比之下,PWM外設允許CPU在執行其他任務的同時設置所需的波形參數

本文中介紹的第一個示例說明了減輕CPU密集型任務負荷的優勢。在該案例中,使用了一個8位MCU來創建I/O擴展器。I/O擴展器并不復雜;然而,由于需要頻繁處理中斷,因此它們會占用大量的CPU時間。通過使用專用MCU來完成這項任務,大型32位器件可以減少I/O使用和需要處理的中斷次數。此外,I/O擴展器的功能集可在軟件中設置,因此支持針對應用進行定制和調整。

本文中的第二個示例以創建獨立于CPU運行的電壓頻率(V/F)轉換器為例,展示了獨立于內核的外設的性能。在這個示例中,CPU的唯一功能是初始化外設并將調試打印消息發送到UART。在大型系統中,當V/F在后臺運行時,CPU可以執行另一個簡單的任務。

I/O擴展器


使用8位MCU創建I/O擴展器的最大好處是提高靈活性。I/O擴展器ASIC的功能集已嵌入到器件中,而MCU可基于其執行的軟件定義其行為。這種靈活性使基于MCU的版本能夠滿足最終應用的需求。

實現高級I/O擴展器

在器件內部,高級I/O擴展器在基于查找表的結構上運行。在讀取或寫入之前,會發送一個虛擬地址。該地址與單片機上的寄存器無關——僅特定于查找表。這意味著,可以透明地添加不在單片機硬件寄存器中的功能。此外,還可以針對特定用途,輕松地重新排列表格中的條目。這種結構的另一個優勢是,能夠向查找表添加權限。例如,要創建一個只讀寄存器,只需省略查找表的寫條目即可。

高級I/O擴展器的查找表


這種較為復雜的結構也適用于非標準功能。“MEM OP”功能允許MCU將其當前的通用輸入和輸出(GPIO)配置保存或加載到存儲器中。

器件中的存儲器存儲


MEM OP也可以將GPIO配置重置為編譯時設置的參數。

注:并非所有字段均可用于所有操作

MEM OP的功能

此外,也可以選擇將單片機設置為在上電時加載保存的設置。如果已使能,單片機會嘗試加載配置0中的設置。如果配置執行校驗和驗證失敗,則MCU將恢復為編譯時常數。如果不需要,可以在軟件中禁用此功能。

該解決方案的要點

基于MCU的解決方案的優勢在于出色的靈活性。與市場上的ASIC不同,我們可以為MCU配置特定于應用場景的非標準功能。此應用程序針對通用PIC16F15244系列MCU開發。

如需深入了解該實現或想要試用該示例,請參見源資源庫中的README文件。此外,還提供帶有Arduino的高級I/O擴展器的演示。

源代碼、文檔和演示:https://github.com/microchip-pic-avr-examples/pic16f15244-family-advanced-i2c-io-expander

電壓頻率(V/F)轉換器

通過降低物料清單(BOM)成本,進而減小設計面積,電壓頻率轉換器可改進傳統的模擬解決方案。市場上的許多V/F轉換器需要配備外部電阻電容才能運行,而單片機只需使用通用去耦和上拉組件(所有MCU的必備組件)即可運行。

TC9400/TC9401/TC9402 10 Hz至100 kHz V/F轉換器的應用原理圖

MCU不使用模擬技術進行數字化,而是使用獨立于內核的外設和功能的組合。MCU使用內部帶計算功能的模數轉換器(ADCC)測量輸入信號,然后對時鐘信號進行分頻,以創建可變頻率輸出。在該示例中,外設已設置為在初始化后獨立于CPU運行。這意味著,CPU可以用于最終應用中的其他任務。

對于基于MCU的方案,其挑戰在于性能不如模擬解決方案。輸出的分辨率本身受到ADCC的限制。表面上看,ADCC為12位,但它會以配置為過采樣的14位分辨率運行,具體取決于程序的配置方式。同樣,用于合成輸出頻率的片內數控振蕩器(NCO)具有有限的分辨率,并且其輸出中可能存在抖動,具體取決于ADC測得的值。

基于MCU的解決方案可以分為三個不同的外設模塊——模擬采樣模塊、輸出振蕩器模塊和占空比發生器。

解決方案框圖


模擬采樣模塊

模擬采樣模塊實現

模擬采樣模塊負責執行模數轉換。為了在器件的頻率限制下實現100 kHz的輸出,已將ADCC配置為過采樣,然后通過平均值處理獲得14位結果。

這種過采樣配置有一個缺點,即向結果中增加額外的統計噪聲,可采取計算過采樣的平均值并增加滯后的方法來補償噪聲。要實現滯后,可使用ADCC的閾值中斷功能。(為簡單起見,將僅介紹有關此示例如何使用閾值中斷功能的細節。)

在ADCC完成過采樣的平均值計算后,將得出的值與外設中的設定值寄存器進行比較。如果兩者之差大于或小于設定閾值,則觸發中斷。CPU可屏蔽此中斷且不受影響,然而,此中斷會觸發直接存儲器訪問(DMA),將經過平均值處理的過采樣結果復制到ADCC的設定值寄存器,從而產生滯后。如果未超過閾值,則不會發生DMA復制,從而不會觸發輸出振蕩器模塊的DMA更新。

輸出振蕩器模塊

輸出振蕩器模塊的結構


該解決方案的輸出振蕩器模塊負責以所需輸出頻率產生時鐘信號。該輸出信號在內部連接到占空比發生器,該元件將輸出頻率減半,但會產生50%的占空比輸出。因此,輸出振蕩器模塊以輸出頻率的兩倍運行。

輸出振蕩器模塊的核心是數控振蕩器(NCO)。NCO外設的工作原理是在輸入時鐘的上升沿向累加器添加增量值,然后根據累加器溢出導出外設的輸出。(有關NCO的完整說明,請參見數據手冊。)

在該示例中,已將NCO2設置為在內部創建所需的輸入時鐘頻率,以通過14位輸入獲得100 kHz輸出。之所以使用14位結果,是因為ADCC本身的12位結果不足以在沒有外部時鐘源的情況下產生100 kHz輸出。

100 kHz V/F轉換器的理想輸出(看門狗已關閉)


如果改變NCO2的輸出頻率或使用備用源,則輸出頻率將調整為不同的輸出范圍。例如,如果NCO2的頻率降低到1.28 MHz,則輸出最大為10 kHz。

10 kHz V/F轉換器的理想輸出(看門狗已關閉)


占空比發生器

占空比發生器框圖

該解決方案的占空比發生器模塊負責創建50%的占空比輸出。這是一個可選功能——可以直接使用NCO的輸出,但這樣做會增加占空比的變化幅度。

該生成器使用一個可配置邏輯單元(CLC)實現。CLC是可配置邏輯的小型模塊,類似于現場可編程門陣列(FPGA)的一個單元。CLC可用作離散邏輯門(例如AND-OR或OR-XOR),也可以配置為鎖存器或觸發器。在該解決方案中,CLC實現為帶復位功能的J-K觸發器。J和K保持在邏輯高電平。輸出振蕩器模塊用作觸發器的時鐘。每個輸入時鐘脈沖均會導致輸出翻轉,從而產生50%的占空比。注意:輸出振蕩器模塊的頻率抖動將對占空比產生影響。

Timer6用作不穩定的“看門狗”定時器。如果輸出沒有產生邊沿(上升沿或下降沿),則定時器將溢出,并將產生的時鐘脈沖發送到CLC,這可以控制輸出頻率范圍的下限。輸出翻轉到定時器頻率的一半(輸出為6 Hz),而不是達到直流。

該解決方案的要點

該示例表明,要使用硬件外設創建獨立于內核的功能,通常必須使用外部集成電路。這種配置的一個最大優勢在于,外設操作可在軟件中設置,這樣便可輕松地根據最終應用調整示例。由于使用了大量外設,因此選擇PIC18-Q43系列MCU來實現該示例。

有關該示例的更多信息,請參見示例資源庫中的README文檔。此外,示例資源庫還包含頻率電壓轉換器的實現,可與電壓頻率轉換器在同一個器件上實現。

單擊以下鏈接獲取源代碼和文檔:https://github.com/microchip-pic-avr-examples/pic18f57q43-v-to-f-mplab-mcc

總結

盡管高性能單片機和微處理器都有一席之地,但在執行小型專門任務時,8位和16位MCU的作用不容小覷。這類任務并不一定十分復雜,但可能十分耗時,或者是時間關鍵型任務。任務負荷減輕后,32位器件可擁有更簡單的實現,從而提高可靠性、減少存儲器占用率并降低功耗。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 單片機
    +關注

    關注

    6042

    文章

    44617

    瀏覽量

    637615
  • 操作系統
    +關注

    關注

    37

    文章

    6889

    瀏覽量

    123602
  • 微處理器
    +關注

    關注

    11

    文章

    2274

    瀏覽量

    82665
收藏 人收藏

    評論

    相關推薦

    單片機Debug與仿真區別

    單片機的開發是一個復雜的過程,涉及到硬件設計、軟件開發和測試等多個環節。為了確保單片機能夠按照預期工作,開發者需要使用Debug和仿真技術檢測和修正代碼中的錯誤。 Debug(調試)
    的頭像 發表于 12-19 09:47 ?262次閱讀

    XD08M3232紅外感應單片機擁有哪些配置實現高性能處理能力

    需要12個時鐘周期,而1T8051內核則將這個時間縮短為1個時鐘周期,這極大地提高了指令執行速度,從而在處理數據和執行程序時能夠更快地響應,整體提升了單片機處理性能。雖然沒有直接表明這是高性能
    發表于 11-23 15:08

    單片機在工業自動化中的應用

    用電器、汽車電子和工業控制系統。在工業自動化中,單片機因其可靠性、靈活性和成本效益而受到青睞。 2. 單片機的特點 低成本 :單片機的價格相對較低,適合大規模部署。 高性能 :現代
    的頭像 發表于 11-01 14:15 ?429次閱讀

    單片機有哪些中斷類型

    單片機中斷是指在單片機執行程序的過程中,當外部設備或內部條件發生某個特定事件時,能夠暫停當前正在執行的程序,轉而去執行一個特定的服務程序(稱為中斷服務程序或中斷
    的頭像 發表于 10-17 18:12 ?885次閱讀

    單片機的中斷機制

    單片機的中斷機制是一種重要的處理方式,它允許單片機在執行主程序的過程中,能夠暫停當前任務,轉而處理外部或內部緊急事件。這種機制極大地提高了系
    的頭像 發表于 10-17 18:03 ?926次閱讀

    單片機芯片開發-單片機方案開發的關鍵技巧和流程步驟!

    復雜而富有挑戰性的任務。今天,英銳恩工程技術小編將為您解鎖單片機開發的關鍵技巧和流程步驟,讓您的項目更加順利! 明確項目需求: 在開始任何開發之前,首先要明確項目的具體需求。這包括功能、性能和環境
    發表于 09-26 17:04

    使用低成本的MSPMO單片機簡化TWS(真無線立體)控制的設計

    電子發燒友網站提供《使用低成本的MSPMO單片機簡化TWS(真無線立體)控制的設計.pdf》資料免費下載
    發表于 09-09 15:46 ?0次下載
    使用低成本的MSPMO<b class='flag-5'>單片機</b><b class='flag-5'>簡化</b>TWS(真無線立體)控制的設計

    單片機燒錄程序可以重新燒嗎

    好的程序代碼通過特定的方式寫入單片機的存儲器中,使其能夠按照預定的邏輯執行任務單片機燒錄程序可以重新燒錄,這是單片機編程和開發過程中的一個
    的頭像 發表于 09-02 10:04 ?1474次閱讀

    單片機燒錄程序的基本步驟是什么

    單片機燒錄程序是單片機開發過程中非常重要的一步,它涉及到將編寫好的程序代碼通過一定的方式傳輸到單片機內部的存儲器中,使單片機能夠按照預定的邏輯執行
    的頭像 發表于 09-02 09:47 ?1352次閱讀

    stm32和51單片機的區別是什么

    。 性能差異: STM32具有更高的主頻和更大的內存空間,可以處理復雜任務和算法。 51單片機的主頻和內存空間相對較小,適用于簡單的控制和數據
    的頭像 發表于 09-02 09:33 ?870次閱讀

    藍牙模塊如何實現單片機和手機端數據互傳

    ZX-D30、ZX-D37、ZX-D32等。 藍牙模塊設置 : 將藍牙模塊與單片機連接。通常,藍牙模塊通過串口(UART)與單片機通信。 設置藍牙模塊的工作模式和參數,例如波特率、名稱、停止位、數據位等。這通常通過發送特定的AT
    的頭像 發表于 07-24 17:59 ?2840次閱讀
    藍牙模塊如何實現<b class='flag-5'>單片機</b>和手機端數據互傳

    聊聊幾種常見的單片機通信方式

    的自動駕駛汽車,單片機都扮演著至關重要的角色。它們不僅負責執行基本的控制任務,還處理數據、管理用戶界面,并與其他設備進行通信,今天,我們就來深入了解一下單片機的幾
    的頭像 發表于 05-22 12:28 ?2112次閱讀
    聊聊幾種常見的<b class='flag-5'>單片機</b>通信方式

    數字電路仿真軟件單片機怎么用

    、調試和測試。 首先,使用單片機仿真軟件前,我們需要了解一些基本概念和背景知識。單片機是一種嵌入式系統的核心部件,它集成了微處理器、存儲器和各種外設輸入輸出接口,用于控制和執行特定
    的頭像 發表于 04-21 10:28 ?1133次閱讀

    有些汽車ECU會使用2片單片機,請問這2片單片機是如何分配任務的?

    來自一位用戶的咨詢,麻煩幫忙解答。越詳細越好,有圖有真相。如有相關的視頻、文檔也可以輔助說明,謝謝。 有些汽車ECU會使用2片單片機,請問這2片單片機是如何分配任務的? 下圖是某F1動力總成的ECU
    發表于 02-02 08:13

    單片機中斷功能及其應用

    單片機中斷功能及其應用? 單片機中斷是指在程序執行過程中,根據特定的條件或事件自動暫時中斷當前程序的執行,轉而執行特定的中斷服務程序。中斷是一種能提高
    的頭像 發表于 01-30 14:45 ?5773次閱讀
    主站蜘蛛池模板: 老熟女重囗味GRANNYBBW | 国产AV一区二区三区传媒 | 长泽梓黑人初解禁bdd07 | 国产精品久久久久久久人热 | 久久两性视频 | 欧美一区二区三区久久综 | 亚洲国产中文在线视频 | 亚洲欧美日韩高清专区 | 恋夜直播午夜秀场最新 | 祺鑫WRITEAS流出来了 | 91嫩草私人成人亚洲影院 | 福利片午夜 | 亚洲不卡一卡2卡三卡4卡5卡 | 蜜臀AV99无码精品国产专区 | 成人a毛片久久免费播放 | 九九免费精品视频 | 国产成人啪精视频精东传媒网站 | 久久艹伊人 | 日韩在线看片中文字幕不卡 | 精品国产成人系列 | 儿子日母亲B好爽 | 哒哒哒高清视频在线观看 | 日本高清不卡一区久久精品 | 欧美在线亚洲综合国产人 | 免费精品国产人妻国语 | 国产精品手机在线视频 | 2021乱码精品公司 | 看电影就来5566先锋av | 久草在线一免费新视频 | 伊人久久亚洲精品一区 | 欧美影院在线观看完整版 mp4 | 国产精品嫩草影院一区二区三区 | 十分钟免费视频大全在线 | 我在厨房摸岳的乳HD在线观看 | 兔费看少妇性L交大片免费 偷偷要色偷偷 | 伊人狠狠丁香婷婷综合尤物 | 97超碰免费人妻中文 | 肉奴隷 赤坂丽在线播放 | 中文文字幕文字幕亚洲色 | 精品久久久久久综合网 | 嫩草成人影院 |