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