本文提供了一些技巧,可以有效利用微控制器的數據表(或參考手冊或用戶指南)中的外圍部分。
在上一篇文章中,我指出了與微控制器文檔相關的一些困難,然后討論了我建議的過程中的前三個步驟,以避免數據表燒壞。前三個步驟通常適用于MCU文檔,在本文中,我們將重點介紹與外圍設備有關的信息。
步驟4:忽略不需要的外圍設備
微控制器內的外圍模塊在很大程度上彼此獨立。確保您了解這一點,因為在基于MCU的系統設計中這是一個重要的概念。下圖強調了這一點。
處理器的各個元素緊密互連,但是外圍設備被描述為與處理器具有獨立連接的獨立模塊。這準確地反映了實際的微控制器操作:如果不需要給定的外設,則將其置于非活動狀態,可以忽略。
但是,微控制器并非旨在防止單獨的外圍模塊之間進行交互,因為在某些情況下這種交互是可取的,這就是為什么我說外圍模塊“在很大程度上是獨立的”。例如,由計時器模塊生成的周期性信號可用于建立UART模塊的波特率或啟動ADC模塊執行的轉換。
但是,一般原則是合理的:未使用的外圍設備不會影響設備的整體功能,因此,您無需閱讀數據手冊中解釋這些未使用外圍設備所有詳細信息的部分。由于許多應用僅需要現代微控制器提供的大量外圍功能的一小部分,因此僅此一步就可以消除很大一部分文檔負擔。
步驟5:研究配置軟件
硬件配置可能是微控制器開發中最苛刻和最繁瑣的方面之一。對外圍模塊進行廣泛的寄存器級配置需要注意細節,仔細檢查數據表以及進行許多尷尬的位操作。
幸運的是,人們意識到這不是很好地利用工程師的時間,因此制造商決定創建軟件工具,以大大簡化硬件配置任務。例如,Microchip提供了MPLAB代碼配置器,使設計人員可以使用圖形界面生成外設配置代碼。Silicon Labs的Config2應用程序(請參見下面的屏幕截圖)執行相同的操作。
如果您在假設需要手動配置所有MCU硬件的情況下處理數據表,則可能會發現,越來越絕望的感覺使您無法集中精力。相信我,硬件配置工具可以大大減少您需要吸收的數據表資料的數量。
這里的困難是識別不必要的信息。不幸的是,我從來沒有遇到過一個數據表,該數據表的標題為“如果您打算使用配置工具,您實際上需要知道的事情”。我建議您在進入數據表之前,先閱讀配置軟件的文檔,當您閱讀涵蓋給定外圍設備的部分時,請忽略特定于配置的詳細信息,直到您對軟件有了一定的了解。
德州儀器(TI)僅為其MSP430 電容式觸摸感應功能提供了完整的軟件工具。圖形界面使您可以配置和優化電容感應按鈕,滾輪,滑塊和接近傳感器。
最重要的是,您不應浪費時間在已經集成到免費,用戶友好軟件中的數據表細節上。
第6步:調查您的API
硬件配置工具有一個主要限制:不能在程序執行期間使用它們。配置軟件是用于創建代碼的工具。它不能實時修改微控制器的操作。
幸運的是,所需硬件配置的很大一部分通常僅發生一次,即在重置后執行的初始指令序列期間。但是,確實有些時候您想在程序執行期間進行精確的修改,也許是為了響應外部事件。這是應用程序編程接口(API)發揮作用的地方。
“ API”可能不是此處的最佳術語,但我不熟悉任何其他更合適的詞或縮寫。我指的是制造商提供的編程“快捷方式”集合。Atmel將其稱為“高級軟件框架”(您可以在本文中閱讀有關ASF的更多信息),我認為Silicon Labs使用術語“軟件開發工具包”(SDK)。在任何情況下,名稱都遠不如內容重要,例如,庫函數,示例代碼,宏,預處理器定義以及任何其他有助于程序員直接與設備硬件交互而又不成為復雜配置設置專家的東西。
高級軟件框架具有與微控制器的外圍設備相對應的各個模塊。
熟悉微控制器的硬件很重要,不建議完全依賴庫函數,預打包的驅動程序,示例代碼和圖形配置工具的“跨接”方法。在我看來,這是麻煩的秘訣,并且削弱了使用可高效,直接訪問底層硬件的處理設備的好處。
因此,目標是找到適當的平衡。您需要研究微控制器的硬件并了解其內部功能的各個方面,但是當涉及到非常具體的細節時,您不想浪費時間重新設計輪子。您設備的數據表中可能包含許多已經包含在API中的信息,并且其中許多信息都可以被瀏覽甚至忽略。
結論
本文的標題是“如何閱讀微控制器數據表”,盡管也許更合適的標題是“如何不閱讀微控制器數據表”。事實是,文檔過載是現代微控制器的一個嚴重問題,而快速吸收重要信息的一項基本技術是學習避免不必要的信息。
原文標題:如何閱讀微控制器數據表(2)
文章出處:【微信公眾號:汽車電子硬件設計】歡迎添加關注!文章轉載請注明出處。
責任編輯:haq
-
控制器
+關注
關注
112文章
16444瀏覽量
179314 -
數據表
+關注
關注
0文章
298瀏覽量
11507
原文標題:如何閱讀微控制器數據表(2)
文章出處:【微信號:QCDZYJ,微信公眾號:汽車電子工程知識體系】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論