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