㈠ 單片機和C語言有什麼關系嗎
語法、運算符和變數規則都一樣,由於CPU不同,所以庫函數都不一樣。在普通C中常用的頭文件是stdio.h,在單片機(51為例)常用的頭文件是reg51.h或reg52.h。單片機面向的是硬體環境更多一些。常用函數printf,普通C中輸出到屏幕,單片機中輸出到串口。等等,具體的需要自己去挖掘。
㈡ 單片機的編程用C語言好還是匯編語言好。為什麼
一般都用C語言編程。只有在C解決不了和代碼效率比較高的時候才會使用匯編。很明顯,C語言容易編程,更容易模塊化編程,容易學習,會的人多。編寫同一個程序,C語言所花的時間平均比匯編短很多。而且對應不同的單片機平台,匯編語言都是不同的,而C語言是通用的。
鑒於C語言有這么多好處,建議你用C語言編程,現在隨著編譯器功能的強大,如KIEL,基本上沒有C語言處理不了的單片機問題了。
現在的硬體技術的發展,硬體成本越來越低,在代碼效率不高的時候可以通過提升硬體的水平來實現系統的實時性需求。因此,在很多時候,代碼的優化工作量減少了很多。
總之,C語言編程優於匯編。C語言是硬體的語言。
㈢ 學C語言和單片機有關嗎
學習c語言和單片機是有很大關系的。因為單片機既可以用匯編語言編寫程序,也可以使用c語言編寫程序。然而匯編語言是接近與機器的語言,代碼可移植性差,導致其不像其他大多數的程序設計語言一樣被廣泛用於程序設計。在今天的實際應用中,它通常被應用在底層,硬體操作和高要求的程序優化的場合。驅動程序、嵌入式操作系統和實時運行程序都需要匯編語言。c語言是高級語言,編寫程序靈活性很強,代碼可移植性很好,所以許多人在編寫單片機程序時,往往選擇的是使用c語言,只有在極少數情況下才選擇使用匯編語言。
㈣ 為什麼單片機用c語言開發
單片機產品的成本是非常敏感的。
想用python和ruby和java又沒內存處理器又太慢,想用.net又嫌貴(M¥有wince或micro framework),所以只能用C/C++了,無奈面對單片機的C++編譯器又沒有一個靠譜的,所以就只能用C語言了。
基於成本原因,對於單片機開發來說,最重要的是在極其有限的ROM和RAM中實現最多產品的功能。或者反過來說,實現相同的產品功能,所需要的ROM和RAM越小越好,因為一般來說ROM/RAM越小單片機越便宜。C++的高級特性引起的代碼體積膨脹比C大得多,這一缺陷是致命的。以前有過Embedded C++,去掉了一些標准C++的復雜特性,但是用的人不多,因為單片機產品的業務邏輯一般沒那麼復雜,用C就綽綽有餘。