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