知乎網(wǎng)友關(guān)于51單片機的學習感悟
1、我從不說51是基礎(chǔ),如果我這么說,也請把這句話理解為微機原理是基礎(chǔ)。
2、對51單片機的操作本質(zhì)上就是對寄存器的操作,對其他單片機也是如此。庫只是一個接口,方便使用者使用而已。
3、匯編語言在工作中很少用到,了解就好。
4、51的P0口很特別。
5、C語言就是C語言,51單片機就是51單片機,算法就是算法,外圍電路就是外圍電路,傳感器就是傳感器,通信器件就是通信器件,電路圖就是電路圖,PCB圖就是PCB圖,仿真就是仿真。
當你以后再也不使用51了,C語言的知識還在,算法的知識還在,搭建單片機的最小系統(tǒng)的技能還在,傳感器和通信器件的使用方法還在,還會畫電路圖和PCB圖,當然也會仿真。
6、51單片機是這個:
而不是這個:
7、當程序調(diào)試不如人意的時候,靜下心來好好查資料,51單片機最大的好處就是網(wǎng)上資料非常多,你遇到的問題別人肯定也遇到過。作為學習者,問人可能更方便點,但一直這樣是培養(yǎng)不出解決問題的能力的。
8、有些單片機初學者覺得看例程不好,覺得就等于看答案一樣有罪惡感。其實對初學者來說,看例程理解例程再看例程的注解是最好的學習途徑。做實驗做課程設(shè)計做參賽作品的時候也是可以移植程序的,不需要自己重新實現(xiàn)。(當然老師布置的作業(yè)還是獨立完成好)
但是,要清楚,移植程序不等于學習單片機,最重要的是知道例程是怎樣的框架及實現(xiàn)方法。初始化了哪些寄存器,做了哪些引腳配置,調(diào)用了哪些函數(shù),那些函數(shù)又是怎么實現(xiàn)的,設(shè)置了哪些中斷,用到了哪些片上資源(UART、ADC等),查詢了哪些狀態(tài),如果狀態(tài)變化(觸發(fā)事件)又會做些什么等等。由此整理出一個流程圖并知道其實現(xiàn)方式,基本上這個例程就學習得差不多了。
評論