{eval=Array;=+count(Array);}
現(xiàn)在單片機(jī)的型號比較多,絕大部分編寫單片機(jī)程序都用的比較多的語言有兩種,一種是苦澀難懂而執(zhí)行效率高的匯編語言;另一種是普遍受廣大嵌入式工作者喜愛的C語言。以上兩種語言是目前編寫單片機(jī)程序用的最多的。
這兩種語言各有優(yōu)缺點(diǎn),匯編語言好處是執(zhí)行的效率高,它直截訪問的是單片機(jī)內(nèi)部的寄存器,但其可讀性和維護(hù)性不好;而C語言好處是容易維護(hù)、可讀性好并且接近人類語言,但執(zhí)行效率只是匯編的80%。在做單片機(jī)大型控制系統(tǒng)時所用C語言較多;而在控制時間精度和實(shí)時性要求較強(qiáng)的場和應(yīng)用匯編語言較多?,F(xiàn)在有的編程軟件可以支持c語言和匯編語言的混合編程,比如KeiI軟件就是支持混合編程的。
當(dāng)然還有一些單片機(jī)也有一些自己的編程語言,它們用的是精簡指令,類似匯編語言的編程模式,比如OTP(一次性編程單片機(jī))、PIC單片機(jī)等;還有一種是可編程的邏輯芯片(CPLD)運(yùn)用的是硬件描述語言(VHDL)類似C語言風(fēng)格??傮w來說匯編語言和C語言是單片機(jī)兩大主流編程語言!
以上是我對這個問題的回答,歡迎大家參與討論并觀注電子及工控技術(shù)!
目前大部分單片機(jī)都可采用C語言和匯編語言,部分高級單片機(jī)如DSP,可采用C++進(jìn)行面向?qū)ο蟮木幊獭?/p>
1、匯編語言。采用匯編語言進(jìn)行編程,優(yōu)點(diǎn)是會對單片機(jī)的架構(gòu)理解的比較透徹,軟件運(yùn)行速度較快,可控性比較高。缺點(diǎn)是不同單片機(jī)的匯編指令不同,可移植性較差。所以目前大部分編程都采用C語言。但對于時間可控性較高的,則還需要匯編編程,以及實(shí)時系統(tǒng)移植也需要匯編語言。
2、C語言。C語言是目前單片機(jī)編程最常用的語言。C語言具有易編程,結(jié)構(gòu)化,可移植性的優(yōu)點(diǎn),因此被廣泛利用。
3、C++。由于DSP具有處理速度快,可處理較為復(fù)雜的系統(tǒng),因此某些開發(fā)壞境支持C++面向?qū)ο蟮木幊蹋鏑ode Composer Studio。
單片機(jī)程序的開發(fā)可以使用的兩種語言,分別是C語言和匯編語言。這里要指出的一件事是,這不是嵌入式單片機(jī)開發(fā)工程師唯一可以使用的兩種語言,在許多情況下,使用其他語言可能是更好的選擇。
話雖這么說,C語言和匯編語言不僅有助于學(xué)習(xí)單片機(jī)編程,而且有助于實(shí)際進(jìn)行高效的單片機(jī)編程。它們支持的單片機(jī)也很廣泛,無論你選擇哪種單片機(jī),它幾乎肯定都有可用的匯編程序(用于處理匯編語言源代碼)和C編譯器(用于處理C源代碼)。對于其他語言來說,可能是不支持的。但是,如果你愿意,考慮學(xué)習(xí)和使用其他語言并不是壞事。
關(guān)于匯編語言,即使不打算在嵌入式編程中使用它,但建議單片機(jī)初學(xué)者至少要熟悉這些概念,并使用單片機(jī)的指令集。這樣做的原因是,即使你最終沒有編寫任何匯編語言,你仍會發(fā)現(xiàn)自己需要使用匯編語言為單片機(jī)編寫啟動文件。
你好,本人最近正在學(xué)習(xí)單片機(jī),看到你上圖的芯片,應(yīng)該是stm芯片。
什么語言學(xué)習(xí)單片機(jī),就要看你自己本身的能力,能力高了可以學(xué)習(xí)匯編語言,普通能力就學(xué)習(xí)C語言。匯編語言是基于硬件的及其基礎(chǔ)語言,可以直接操作任何一個儲存空間。
但是就目前簡單的學(xué)習(xí)和應(yīng)用來講,還是學(xué)習(xí)c語言,意識資料多好理解,二是更接近人類語言習(xí)慣。
其他的行業(yè)我不知道,但是嵌入式這個行業(yè)真的資料多到學(xué)也學(xué)習(xí)不完。沒有任何人可以自信的講我知道的比你多。
C語言是比較成熟的語言。
如果想入門單片機(jī) 你可以準(zhǔn)備的有 一個功能齊全的開發(fā)板
一本C語言講解的單片機(jī) 一本C語言的基礎(chǔ)書,這三本足以學(xué)習(xí)三個月以上??磿鵀橹?,動手為王。希望你能成功。
本人最近也在學(xué)習(xí)單片機(jī),并且錄制學(xué)習(xí)視頻,有興趣可以一起學(xué)習(xí)。
基本上C語言是絕對的主流,其次是匯編,也有混合使用的。近年來單片機(jī)性能越來越高,有些單片機(jī)已經(jīng)可以運(yùn)行閹割版的python,還有l(wèi)ua等解釋型語言。另外,arduino使用的也是類似c語言的一種語言。
匯編、C、Java、JavaScript、乃至Python都是可以的,根據(jù)硬件需求來?,F(xiàn)在硬件這些越來越強(qiáng)大,很多物聯(lián)網(wǎng)系統(tǒng)下的硬件已經(jīng)開始使用JavaScript這些解釋性語言來開發(fā)了。
7
回答5
回答9
回答10
回答3
回答5
回答3
回答0
回答3
回答5
回答