做嵌入式開發(fā),特別是底層驅(qū)動相關(guān)的開發(fā),不管是軟件還是硬件工程師,能熟練閱讀數(shù)據(jù)手冊是必備的一個(gè)技能。
概述
比如:我們寫STM32底層驅(qū)動代碼,或者畫板子的時(shí)候,會牽涉到一些與芯片引腳、電氣特性相關(guān)的內(nèi)容。這個(gè)時(shí)候,就需要查看芯片對應(yīng)的官方手冊。 一般《Reference manual參考手冊》和《Datasheet數(shù)據(jù)手冊》這兩本手冊是我們底層編程常用到。所以,推薦初學(xué)者一定要把這兩本手冊下載來對照學(xué)習(xí)。
當(dāng)然,這里說的兩本手冊,是針對每一種型號STM32都應(yīng)該具有的,但不同型號的STM32對應(yīng)的手冊可能不同,也有可能相同。 比如:STM32F103R8和STM32F103ZE的參考手冊相同,但數(shù)據(jù)手冊不同。 不過,STM32的這些手冊,在排版或者說內(nèi)容上,都極為相似。所以,下面以STM32F103ZE為例,引導(dǎo)大家學(xué)習(xí)其數(shù)據(jù)手冊。
數(shù)據(jù)手冊
很多工程師英文水平都不好,而大部分?jǐn)?shù)據(jù)手冊都是英文版,導(dǎo)致很多人入門就放棄了。 有些廠商為了照顧中國開發(fā)者,特意將英文手冊翻譯為中文手冊,比如STM32就有很多中文手冊,比如針對STM32F1和F4系列都有很多翻譯版(只是版本相比較老)。 這里說一點(diǎn):芯片的數(shù)據(jù)手冊“大同小異”,只需要熟悉常見的一些英文單詞,我覺得都能閱讀個(gè)大概,閱讀多了,自然而然有些內(nèi)容就能看懂了。 這里為了照顧初學(xué)者,以STM32F103中文版為例來展開說明。 打開數(shù)據(jù)手冊,你會看到芯片的許多重要,如下圖:
主頁的內(nèi)容,相信大家看英文版文檔也能明白,以上是首頁預(yù)覽,可以抓住一些重要內(nèi)容。 再次就是查看目錄,目錄可以大概知道文檔講述了一些什么內(nèi)容。 最后,預(yù)覽沒文檔里面詳細(xì)內(nèi)容,可以知道整個(gè)數(shù)據(jù)手冊講述了一下什么知識。
細(xì)節(jié)知識點(diǎn)
一般來說,開發(fā)者需要根據(jù)自己需求,了解數(shù)據(jù)手冊中需要掌握的內(nèi)容,比如: 1.芯片有多少個(gè)TIM、多少個(gè)UART?這類問題,可以參看數(shù)據(jù)手冊“Device overview”器件概述的章節(jié)(一般第2章節(jié))。
如上圖,可以得出,STM32F103大容量芯片有8個(gè)TIM定時(shí)器(4個(gè)通用、2個(gè)高級、2個(gè)基本),有5個(gè)UART串口。 2.芯片具體有哪幾個(gè)定時(shí)器?及定時(shí)器位數(shù)?有的人看見別人代碼,使用的TIM7,而自己移植過來,編譯錯誤,發(fā)現(xiàn)沒有TIM7。因此,就問:我在怎么知道我芯片有哪些定時(shí)器呢? 這個(gè)一般在數(shù)據(jù)手冊第2章,或第3章的“Overview概述”下面有具體的概述。
這個(gè)概述的地方會有更多的信息:1.定時(shí)器位數(shù):比如有些定時(shí)器為32位;2.計(jì)數(shù)器類型:向上、向下等;3.捕獲通道數(shù):有些定時(shí)器不支持捕獲/比較,也就沒有。······3.引腳可以映射到哪些地方?有朋友看到其它人編程使用的UART串口1不是PA9和PA10,就產(chǎn)生了疑惑:我怎么知道這些UART串口可以使用哪些引腳呢? 這個(gè)問題答案在“Pinouts and pin descriptions引腳定義章節(jié)”。
比如你想知道UART串口1可以使用哪些引腳,可以使用“USART1_TX”搜索一下,看有哪些引腳有“USART1_TX”這個(gè)功能,那么這個(gè)引腳就具有這個(gè)功能。 4.IO可以輸入多高電壓?檢測時(shí)多高電壓才是高電平?有的朋友可能會產(chǎn)生疑問,我STM32是3.3V供電,那么我輸入IO的電壓是不是最高就為3.3V了呢? 之前有朋友問:我STM32做IO輸入檢測電平時(shí),按理說應(yīng)該為高電平。可能因?yàn)橥獠侩娐吩颍l(fā)現(xiàn)不對,就用萬用表測量,電壓在1V左右。 他就問了這么一個(gè)問題,我輸入電壓多高才認(rèn)為是高電平呢? 這個(gè)問題可以在數(shù)據(jù)手冊Electrical characteristics電氣特性下面找到答案。
輸入電壓,可以看引腳定義章節(jié),如果帶有FT的,證明可以承受5.5V電壓。 而被檢測為高電平,最小需要2V電壓。 好了,本文就寫到這里。以上只是提供思路,可能你遇到的問題不止這些,需要學(xué)會合理利用手中資源。
審核編輯 :李倩
-
電壓
+關(guān)注
關(guān)注
45文章
5641瀏覽量
116314 -
嵌入式開發(fā)
+關(guān)注
關(guān)注
18文章
1036瀏覽量
47739 -
數(shù)據(jù)手冊
+關(guān)注
關(guān)注
95文章
6087瀏覽量
42824
原文標(biāo)題:嵌入式開發(fā),數(shù)據(jù)手冊為啥是重要的文檔?
文章出處:【微信號:strongerHuang,微信公眾號:strongerHuang】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
Java開發(fā)和嵌入式開發(fā)
學(xué)習(xí)嵌入式開發(fā)要掌握哪些重要手冊
基于ARM的嵌入式開發(fā)
嵌入式開發(fā)
![<b class='flag-5'>嵌入式開發(fā)</b>](https://file1.elecfans.com//web2/M00/A6/18/wKgZomUMO7OAEKfdAABxPwNFQtI656.jpg)
學(xué)嵌入式開發(fā)入門_學(xué)嵌入式開發(fā)需要看哪些書籍
嵌入式開發(fā)好學(xué)嗎_嵌入式開發(fā)職業(yè)發(fā)展方向是什么
嵌入式開發(fā)的產(chǎn)品有哪些_嵌入式開發(fā)的流程
嵌入式開發(fā)(一):嵌入式開發(fā)新手入門
![<b class='flag-5'>嵌入式開發(fā)</b>(一):<b class='flag-5'>嵌入式開發(fā)</b>新手入門](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
嵌入式開發(fā)資料免費(fèi)分享
![<b class='flag-5'>嵌入式開發(fā)</b>資料免費(fèi)分享](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
python做嵌入式開發(fā)_Python和嵌入式的區(qū)別是什么?可以做嵌入式開發(fā)嗎?
![python做<b class='flag-5'>嵌入式開發(fā)</b>_Python和<b class='flag-5'>嵌入式</b>的區(qū)別是什么?可以做<b class='flag-5'>嵌入式開發(fā)</b>嗎?](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
Linux系統(tǒng)的嵌入式開發(fā)是什么
嵌入式開發(fā)前景怎么樣?
![<b class='flag-5'>嵌入式開發(fā)</b>前景怎么樣?](https://file.elecfans.com/web2/M00/4C/70/pYYBAGKv0omAZ5SxAABZOwjQSKM935.png)
評論