如何學習單片機?單片機編程入門教程
單片機學習起來其實不難,反而是一件比較有趣的事情,之所以新手感覺比較難是因為不知道該怎么入手,從哪里開始學起。
單片機的學習無外乎兩方面:一,電路 ;二,編程語言。
先說電路,說到電路不得不提三本書。模電,數(shù)電,電路。可以說這三本書是學習電路的必經(jīng)之路,學好這些,即使你不學單片機也可以找到一份薪資滿意的工作。當然現(xiàn)在大公司工作都是分工明確的,做電路的就做電路。單片機編程的就做編程。不過能進大公司的還是少數(shù)。大部分小公司要求你全能,也就是說一個項目你要從芯片的選型,到外圍電路的搭建,最后I/O口的定義,程序的編譯調試,最后PCB板的制作,焊接,調試等等,你都要掌握。當然你的工資也是客觀的。我的意思是學習單片機最好是要學習電路。
接下來學編程語言,單片機的編程語言是結構化的C語言。C語言的學習也不是那么容易的,至少指針就夠你迷糊一段時間的。學習C你可以先系統(tǒng)的學習一段時間,做一些練習,不用著急去將它應用到單片機上。
學習單片機需要動手,不是照著課本去死記硬背。
所以學習單片機的第一個概念:確定好所學習的單片機具體型號。
比如說,你要學習51單片機,你所確定的型號是STC89C52,這款單片機雖然比較老了,但是依然具有學習價值,DIP40封裝的STC89C52單片機如下圖所示:
或者你選擇STM32單片機學習,比如STM32F103C8T6,LQFP48封裝的單片機如下圖所示:
確定了單片機的具體型號之后,出來第二個概念:確定使用的編程環(huán)境。
在單片機學習初期,我們可能會弱化做PCB板子的概念,但是編程的概念一定要強化。所以在初期你手里如果有一塊單片機的開發(fā)板是很有必要的。
編程環(huán)境是由所選擇的單片機來確定的,比如說前邊兩款單片機都可以使用keil來編程,所以你要安裝keil的編程環(huán)境,keil4的啟動界面如下圖所示:
編寫好的程序,如何下載到單片機去執(zhí)行?所以第三個概念:下載器。
下載器的選擇也是有單片機的型號來確定的,以上兩款單片機都可以通過USB/TTL或者是JLINK來下載,但是這里優(yōu)先推薦JLINK,因為JLINK可以實現(xiàn)單步調試,大大提高學習效率,方便定位、解決問題。JLINK的圖片如下所示:
經(jīng)過以上三個概念后,你就可以認真學習單片機了,該學習哪些內容?
1. GPIO:就是學習單片機引腳的控制方法,將引腳配置輸入或者輸出,比如說:點亮發(fā)光二極管、控制蜂鳴器發(fā)聲、控制繼電器吸合、控制按鍵輸入、點亮數(shù)碼管等;
2.定時器:學習單片機的片上資源timer,學習如何配置timer,如何設置初值,比如說:發(fā)光二極管定時閃爍、數(shù)碼管顯示的數(shù)值定時自加等;
3.UART:學習單片機的UART功能,學習RS232通訊,比如說:單片機發(fā)送字符用串口調試助手在電腦上顯示;
4.IIC:學習IIC通訊,比如說用AT24Cxx系列實現(xiàn)數(shù)值的掉電保存功能;
5.AD采樣:學習模數(shù)轉換知識,比如說:調節(jié)滑動變阻器,改變所采集的電壓,實時顯示此時的電壓;
初次之外可能還有:SPI,液晶屏、點陣、外部中斷、D/A等,等你學到這里,你就可以根據(jù)自己的想法實現(xiàn)想要的功能了。
編輯:admin 最后修改時間:2023-03-03