單片機是一門很有用的技術,懂單片機可以找一份很好的研發崗工作。所謂萬事開頭難,在初學入門階段可能摸不著頭腦無從下手,如果有了比較好的學習方法單片機學習起來也是很有趣、很容易的。和大家分享一下單片機以及單片機C語言編程的學習方法。
1.選擇一塊單片機開發板
不管你是從51單片機開始,還是直接從STM32、AVR開始,建議買一塊單片機開發板。切記,在學習單片機的時候不要和學習高數一樣天天抱著書看,單片機是一門實踐性非常強的課程,如果只看書不動手永遠是紙上談兵。書都不要看,直接買一塊開發板,對單片機而言,最好的書就是單片機的數據手冊。
2.學習單片機普通GPIO口的配置方式
不管你選擇哪個型號的單片機入門,其學習方法都是一致的。首先要學習單片機普通GPIO口的配置方法,這包括單片機GPIO口的輸出控制和輸入檢測。比如學習如何用C語言實現單片機點亮LED燈、如何用C語言控制蜂鳴器發聲、如何用C語言控制繼電器動作、如何用C語言實現按鍵電燈、按鍵使蜂鳴器發聲、按鍵使繼電器動作等。
3.學習單片機的定時器、AD轉換、中斷等片上資源
單片機具有豐富的片上資源,合理的使用這些片上資源可以簡化產品的設計使方案最優。所以學習這些片上資源非常重要。這些片上資源包括定時器,可以實現定時功能或計數功能,該功能非常有用。單片機的AD轉換功能可以將模擬量轉化成數字量,在信號采集方面是非常重要的。使用單片機的中斷資源可以節省單片機的資源,提高代碼執行效率。
4.學習UART、IIC、SPI、CAN等通訊功能
通訊功能可以實現數據的傳輸,如wifi、藍牙、RS485等都是常用的通訊功能,所以這一塊一定要學習。現在絕大多數的單片機都帶有UART、IIC、SPI甚至CAN通訊功能,其他一些通訊功能可能都是由這幾種通訊功能延時出來的,比如說UART功能配合不同的電平轉換芯片可以實現RS232、RS485、CAN,甚至藍牙和wifi通訊等。
5.參與/主導單片機項目
學習的目的是為了以后能夠用單片機設計出方案合理、性能穩定的產品,所以要抓住參與項目的機會,在項目中鍛煉實踐動手能力。