回覆列表
  • 1 # 西門245318375

    沒有用C語言很多年了,當時學習它的過程有點忘記了。我只能說說我比較印象深刻的。對於微控制器,中斷,排程,時鐘週期,暫存器,模數轉換,外圍電路等基本都要很清楚的,這樣才能做到知其然且知其所以然,為了以後自己能創新,而不僅僅是做個碼農打好基礎。那麼計算機原理,數位電路,作業系統這些基礎課是要學好的。後面再具體去精通C語言程式設計吧。

  • 2 # 玩轉嵌入式

    答主從事嵌入式、微控制器開發工作有幾年了,負責硬體電路的設計和程式的編寫除錯等,所以結合自身的情況給與回答。

    1.微控制器程式設計與PC程式設計不同

    微控制器C語言和PC程式設計時存在很大區別的,微控制器C語言程式設計是偏向於硬體的,在程式設計時接觸更多的是微控制器的暫存器的設定、硬體埠的控制、硬體邏輯的設計,這與PC程式設計區別很大。微控制器程式設計所面對的物件是以微控制器為核心的主控板、控制板,需要天天待在實驗室,搭建測試環境測試程式碼。

    2.微控制器程式設計需要學習哪些內容

    要懂微控制器的程式設計,首先要懂微控制器。懂微控制器的暫存器的配置方法,能從微控制器的datasheet和程式設計手冊上看懂暫存器如何配置才能實現自己所需要的功能。比如控制板要輸出佔空比可變的方波,如果用微控制器的片上資源實現PWM,需要配置相應的暫存器。可能涉及到時鐘週期的設定、外設時鐘的使能、GPIO複用功能的配置、定時器的配置、預裝初值的計算等。

    要懂微控制器的程式設計,其次要懂硬體設計。前面提到過,微控制器程式設計的物件還是以微控制器為核心的控制板,控制板要實現功能需要硬體的支援。比如要設計一個微控制器驅動電路,在程式設計時就要懂得給高電平繼電器動作,還是給低電平動作。所以三極體或者mos管如何工作一定要清楚。用程式控制LED燈,該給高電平還是低電平?這些都要知道。

    要懂微控制器的程式設計,要懂常用的通訊協議。微控制器要實現通訊功能,需要相應的硬體介面走相應的通訊協議,比如常用的IIC,SPI,RS232,RS485,CAN等,這些都是微控制器系統中常用的通訊方式,所以這些通訊方式的程式設計一定要有所瞭解。

    3.微控制器C語言程式設計該如何學習

    要學好微控制器C語言程式設計需要多加練習、多做專案、多除錯。在初學階段最好買一塊適合自己的開發板,前期多學習配套的例程,之後要自己根據板子上的硬體資源實現自己想要的功能。

    結合這麼多年的工作經歷,我還是感覺微控制器的程式設計應該是硬體的範疇,就我從事過的幾家公司來看,大多數公司還是把硬體跟程式設計放在一起,只有很大規模的公司才軟硬分開。

  • 中秋節和大豐收的關聯?
  • 典型的脾腎陽虛又吐黃痰,該怎麼調理?