單片機(jī)學(xué)習(xí)起來其實不難,反而是一件比較有趣的事情,之所以新手感覺比較難是因為不知道該怎么入手,從哪里開始學(xué)起。
學(xué)習(xí)單片機(jī)需要動手,不是照著課本去死記硬背。
所以學(xué)習(xí)單片機(jī)的第一個概念:確定好所學(xué)習(xí)的單片機(jī)具體型號。
比如說,你要學(xué)習(xí)51單片機(jī),你所確定的型號是STC89C52,這款單片機(jī)雖然比較老了,但是依然具有學(xué)習(xí)價值,DIP40封裝的STC89C52單片機(jī)如下圖所示:
或者你選擇STM32單片機(jī)學(xué)習(xí),比如STM32F103C8T6,LQFP48封裝的單片機(jī)如下圖所示:
確定了單片機(jī)的具體型號之后,出來第二個概念:確定使用的編程環(huán)境。
在單片機(jī)學(xué)習(xí)初期,我們可能會弱化做PCB板子的概念,但是編程的概念一定要強(qiáng)化。所以在初期你手里如果有一塊單片機(jī)的開發(fā)板是很有必要的。
編程環(huán)境是由所選擇的單片機(jī)來確定的,比如說前邊兩款單片機(jī)都可以使用keil來編程,所以你要安裝keil的編程環(huán)境,keil4的啟動界面如下圖所示:
編寫好的程序,如何下載到單片機(jī)去執(zhí)行?所以第三個概念:下載器。
下載器的選擇也是有單片機(jī)的型號來確定的,以上兩款單片機(jī)都可以通過USB/TTL或者是JLINK來下載,但是這里優(yōu)先推薦JLINK,因為JLINK可以實現(xiàn)單步調(diào)試,大大提高學(xué)習(xí)效率,方便定位、解決問題。JLINK的圖片如下所示:
經(jīng)過以上三個概念后,你就可以認(rèn)真學(xué)習(xí)單片機(jī)了,該學(xué)習(xí)哪些內(nèi)容?
1. GPIO:就是學(xué)習(xí)單片機(jī)引腳的控制方法,將引腳配置輸入或者輸出,比如說:點亮發(fā)光二極管、控制蜂鳴器發(fā)聲、控制繼電器吸合、控制按鍵輸入、點亮數(shù)碼管等;
2.定時器:學(xué)習(xí)單片機(jī)的片上資源timer,學(xué)習(xí)如何配置timer,如何設(shè)置初值,比如說:發(fā)光二極管定時閃爍、數(shù)碼管顯示的數(shù)值定時自加等;
3.UART:學(xué)習(xí)單片機(jī)的UART功能,學(xué)習(xí)RS232通訊,比如說:單片機(jī)發(fā)送字符用串口調(diào)試助手在電腦上顯示;
4.IIC:學(xué)習(xí)IIC通訊,比如說用AT24Cxx系列實現(xiàn)數(shù)值的掉電保存功能;
5.AD采樣:學(xué)習(xí)模數(shù)轉(zhuǎn)換知識,比如說:調(diào)節(jié)滑動變阻器,改變所采集的電壓,實時顯示此時的電壓;
初次之外可能還有:SPI,液晶屏、點陣、外部中斷、D/A等,等你學(xué)到這里,你就可以根據(jù)自己的想法實現(xiàn)想要的功能了。
以上就是我的觀點,寫了有半個小時的時間,如果您有更好的方法那就留言討論吧。