學單片機首先得有電路基礎。至少你拿到任何一塊兒板子器件得認識的七七八八的。能夠看懂一些常見的電路。能夠設計至少一部分應用電路。其次,得有實際操作能力,設計完原理圖起碼得會畫圖吧,完了,投板子,買器件,自己焊接。再次。自己的板子,自己要用程序驅動一下,就需要寫程序了,先驅動個燈,然后再驅動蜂鳴器。等等。。。 其實,學單片機有個捷徑。1.認知元器件,并理解其作用,先認識簡單的阻容,然后是其它的。當然,這個是慢慢積累的,有的器件工作了好多年,也不一定認識。當然,這種極少極少。2.不要看單片機,看數字電子計算機原理。就看8086。切記,數字電子計算機。從簡單的觸發器講起的。要看明白mcu內部的累加器,接口部件是怎么工作的。地址尋址是怎么回事兒,反復讀,反復讀。前后對照的讀。要做到最后,每條匯編指令運行時,內部寄存器的值、狀態變化及處理器累加器的變化過程?偩變化過程,系統開銷等等。 這些搞明白了。再認認真真的把8086的各種外設工作原理搞清。比如,8251,8253,8259等等,當然,8253工作狀態比較多,不用掌握的那么細致。做完這些,基本上再講電子系統的原理都會有些底氣了。3.找到目前主流的單片機,比如stm32f103,找一款開發板,先把簡單的led等demo跑一下,有個感性認識,知道怎么搭建程序。然后,看手冊,反復看。從寄存器開始寫程序。注意,不要搞什么設備庫之類的。4.軟件基礎你也得學點兒吧。這個忘了說了。總之,單片機很簡單,但是給你寫完了之后,覺得作為同年紀的人,我自己現在無法做到。但,這個捷徑,是我差不多二十年前用過,覺得最有效的。所以,祝你好運。 |