|
我認(rèn)為基礎(chǔ)的硬件知識對理解mcu的深入程度有一定的輔助作用。一:基礎(chǔ)模塊的修煉。(第一個(gè)階段不要看匯編,用c語言。匯編門檻太高容易一下子把脆弱的積極性和興趣給打擊掉。)
1:建議找個(gè)單片機(jī)的教程,先把單片機(jī)的基礎(chǔ)模塊摸一遍,理解基礎(chǔ)的mcu模塊(通論本質(zhì)上就是串行和并行的區(qū)別。了解本質(zhì)之后就是規(guī)則的問題而已)
1.2:輸出輸出端口操作、定時(shí)器、pwm模塊、adc轉(zhuǎn)換、模擬iic、模擬spi、硬件uart、外部中斷、系統(tǒng)時(shí)鐘、看門狗(你可能用的stc的mcu,系統(tǒng)時(shí)鐘可以暫時(shí)不弄,iic、spi的先用模擬的方式來。)
2:寄存器的操作一定要自己寫,可以參考別人寫得來拓展一下思路,(對mcu寄存器基本的操作可以參考新唐n76e003的demo程序,官網(wǎng)有資料。)
2.1:這個(gè)過程中你買一個(gè)邏輯分析儀(30rmb)、串口接收的ch340(8rmb),如果有示波器更好、暫時(shí)不強(qiáng)求。
3:每一個(gè)模塊需要一些硬件知識,一般的教程都會講解的;A(chǔ)的按鍵操作濾波、lcd的現(xiàn)實(shí)在這個(gè)過程中會學(xué)。
通訊部分優(yōu)先uart、后spi、iic。uart不要模擬實(shí)現(xiàn),用mcu模塊方式實(shí)現(xiàn)(模擬只是讓你對它了解更深刻,一般使用不模擬)。iic、spi先用模擬方式實(shí)現(xiàn)后用mcu模塊方式實(shí)現(xiàn)。
二:代碼編寫修煉
1:因?yàn)樯鲜龅牟僮魇莔cu的模塊操作,接下來是怎么優(yōu)化和讓你程序變得貼近應(yīng)用。需要對編寫代碼方式的修煉。
1.1:c51的語言的修煉暫時(shí)不需要做的太深刻。指針和結(jié)構(gòu)體慢慢來(先看懂,再慢慢會用),基礎(chǔ)的if else siwtch while break for #define 差不多就夠了(可能有遺漏一時(shí)想不起來)
2:看看《單片機(jī)編程魔法師》。最基礎(chǔ)的兩個(gè)思想要掌握。( 一定要擺脫掉對 delay這種延時(shí)超過1ms的用法 ,delay可以用,但是不能延時(shí)時(shí)間太長,影響程序的并行效率。)
2.1:驅(qū)動的思想/程序分層。
2.2:定時(shí)器的多層復(fù)用。
2.3:多任務(wù)并行(偽并行)。
三:基礎(chǔ)的模塊會了之后,并行的思想吸收了一些,這樣可以應(yīng)用在項(xiàng)目上。再反推回來去深刻理解mcu的基本原理和硬件的知識。。
|
|