單片機(jī)開發(fā)
- 首頁(yè) >> 電子技術(shù) >> 單片機(jī)開發(fā)
單片機(jī)C語(yǔ)言技術(shù)
雖然單片機(jī)有自己的編程語(yǔ)言,如果,我們用單片機(jī)的編程語(yǔ)言要做出實(shí)際的東西,那是非常不容易的。比如,你做一個(gè)除法,十六位的,你要編幾十條語(yǔ)句,如果沒有專門的研究單片機(jī)的經(jīng)歷,相信很難勝任。但你用C語(yǔ)言,一句就行了,而且編寫的程序精簡(jiǎn),容易查出錯(cuò)來,調(diào)試比較簡(jiǎn)單。只要你對(duì)單片機(jī)有一些硬件的了解,你就可以用C編些比較復(fù)雜的程序?,F(xiàn)在單片機(jī)的執(zhí)行速度很快了,時(shí)針頻率有的可以達(dá)到40MHz,不存在C語(yǔ)言的效率不高而影響你的程序運(yùn)行。另外,C語(yǔ)言作為一種高級(jí)編程語(yǔ)言,具有良好的結(jié)構(gòu)性和移植性,在單片機(jī)中引入C語(yǔ)言,可以極大地方便單片機(jī)的編程和開發(fā)。
一、單片機(jī)系統(tǒng)概述
(1)單片機(jī)的定義:?jiǎn)纹瑱C(jī)的英文全稱為single chip microcomputer,翻譯為單片微型計(jì)算機(jī),主要將CPU、半導(dǎo)體存儲(chǔ)器、I/O接口、中斷系統(tǒng)和定時(shí)器等各種元器件集成到一塊半導(dǎo)體芯片上,由此軟硬件構(gòu)成的整個(gè)數(shù)字電子計(jì)算機(jī)就叫做單片機(jī),也稱為MCU(Micro controller Unit)。
(2)單片機(jī)的系統(tǒng)組成:?jiǎn)纹瑱C(jī)系統(tǒng)通常包括硬件系統(tǒng)和軟件系統(tǒng)兩部分。硬件系統(tǒng)主要是指單片機(jī)芯片上集成的各種元器件以及被控對(duì)象。軟件系統(tǒng)通常有很多主程序或者子程序組成,利用匯編語(yǔ)言或者C語(yǔ)言編寫完成,具有對(duì)系統(tǒng)監(jiān)控等功能。
(3)單片機(jī)的功能特點(diǎn):?jiǎn)纹瑱C(jī)作為一種微型電子計(jì)算機(jī),具有許多功能特點(diǎn)。第一,單片機(jī)的元器件集成度高,適合制作大規(guī)?;虺笠?guī)模集成電路,可靠性和抗干擾能力都較強(qiáng)。第二,由于集成度高,單片機(jī)的價(jià)格相對(duì)較低廉,性價(jià)比較高。第三,單片機(jī)的指令較為豐富,擁有強(qiáng)大的控制功能。第四,很多單片機(jī)只需要2.2V甚至更低的電壓就可以運(yùn)行,所以其工作電壓低,功耗低。第五,單片機(jī)的體積小,攜帶方便。
(4)單片機(jī)的應(yīng)用范圍:?jiǎn)纹瑱C(jī)強(qiáng)大的功能特點(diǎn)決定了具有廣泛的應(yīng)用范圍。在國(guó)防、軍農(nóng)、工業(yè)、農(nóng)業(yè)等方面,單片機(jī)都有所發(fā)揮它的用處。概括起來,主要是在家用電器、機(jī)電一體化中、智能儀器儀表、實(shí)時(shí)過程控制、分布式多機(jī)系統(tǒng)等方面較多。
二、C語(yǔ)言在單片機(jī)開發(fā)中的特點(diǎn)
C語(yǔ)言作為一種結(jié)構(gòu)化的程序設(shè)計(jì)語(yǔ)言,具有很強(qiáng)大的功能性、結(jié)構(gòu)性、可移植性。使用C語(yǔ)言開發(fā)單片機(jī)系統(tǒng),可以讓編程人員在不懂得單片機(jī)指令集的情況下,也能夠?qū)懗鐾昝赖膯纬绦颉T诨贑語(yǔ)言的單機(jī)片系統(tǒng),可以對(duì)數(shù)據(jù)進(jìn)行專業(yè)化處理,能夠避免運(yùn)行中非異步的破壞。在所有的計(jì)算機(jī)語(yǔ)言中,C語(yǔ)言的運(yùn)用最為廣泛。在單片機(jī)的開發(fā)中,使用C語(yǔ)言會(huì)表現(xiàn)出以下優(yōu)勢(shì)。
(1)庫(kù)函數(shù)豐富,移植性好:C語(yǔ)言是一種編譯型程序設(shè)計(jì)語(yǔ)言,它的運(yùn)算速度快、編譯效率高,擁有齊全的函數(shù)庫(kù),比匯編語(yǔ)言更加具有可讀性。由于它是面向?qū)ο蟮恼Z(yǔ)言,所以其可移植性好。
(2)應(yīng)用廣泛,方便開發(fā)相比于匯編語(yǔ)言,C語(yǔ)言更加符合人類的思維方式。很多編程人員都習(xí)慣C語(yǔ)言,使用C語(yǔ)言進(jìn)行編程可以減少他們?cè)谟布ヅ渖纤ǖ木?,從而有更多的時(shí)間去調(diào)試程序和優(yōu)化算法。
(3)程序結(jié)構(gòu)完善,兼容性好:C語(yǔ)言編譯的程序往往具有較為完善的模塊化結(jié)構(gòu),在后續(xù)的開發(fā)中可以隨時(shí)修改和補(bǔ)充。正是由于C語(yǔ)言的程序結(jié)構(gòu)較為完善,也使得它在模塊化設(shè)計(jì)方面運(yùn)用較為廣泛。使用C語(yǔ)言編寫的單片機(jī)程序,采用的是自頂向下的結(jié)構(gòu)化程序。對(duì)應(yīng)不同的模塊,設(shè)計(jì)不同的功能,使整個(gè)程序功能模塊化,實(shí)現(xiàn)不同的兼容性。這種結(jié)構(gòu)化模塊可以使整個(gè)程序結(jié)構(gòu)清楚,方便后續(xù)的調(diào)試和修改。
三、基于C語(yǔ)言的單片機(jī)開發(fā)技術(shù)
3.1基于C語(yǔ)言的單片機(jī)開發(fā)環(huán)境
在眾多的單片機(jī)程序開發(fā)軟件中,KEILC5l是運(yùn)用最為廣泛的一個(gè)軟件,集合了編輯、編譯、仿真等功能,可以支持不同公司生產(chǎn)的MCS51芯片。同時(shí),KEILC51軟件具有友好的操作界面,而且已經(jīng)將C語(yǔ)言集成進(jìn)去,另外還支持匯編語(yǔ)言,所以具有強(qiáng)大的編程和調(diào)試功能。KEILC51的開發(fā)環(huán)境包括了編譯器、匯編器、實(shí)時(shí)操作系統(tǒng)、項(xiàng)目管理器、調(diào)試器等部分。而編寫的目標(biāo)程序的源文件可以構(gòu)成不同的組,利用項(xiàng)目管理器,可以方便地對(duì)應(yīng)目標(biāo)、組或單個(gè)文件。利用KEILC51中集成的瀏覽器包含了全局索索的功能,可以幫助用戶快速搜索文件和查找信息。KEILC51軟件中集成了源代碼編輯器,它的操作界面友好,許多特性都為用戶所熟悉。利用源代碼編輯器自然而又方便的編程環(huán)境,編譯人員可以在編輯器內(nèi)隨時(shí)編輯和調(diào)試代碼,更能對(duì)所寫程序進(jìn)行快速的檢查錯(cuò)誤和優(yōu)化代碼。
3.2基于C語(yǔ)言的單片機(jī)開發(fā)步驟
在使用C語(yǔ)言開發(fā)單片機(jī)程序時(shí),通常分為:程序代碼的編寫和編譯、目標(biāo)代碼的連接和轉(zhuǎn)換等過程。在編寫完程序代碼和調(diào)試完程序后,還應(yīng)當(dāng)將程序編譯為HEX文件,使其能夠移植到單片機(jī)上,并能執(zhí)行所編譯的代碼。基于C語(yǔ)言的單片機(jī)開發(fā)步驟,主要包括四個(gè)過程。
第一步,安裝軟件。登錄KEIL的官方網(wǎng)站,下載所需的商業(yè)軟件安裝包到電腦上。下載完成后解壓安裝包,然后雙擊SETUP.EXE文件,同意其協(xié)議條款,根據(jù)提示信息輸入序列號(hào),一步一步完成安裝過程??梢赃M(jìn)行完整安裝,并進(jìn)行對(duì)應(yīng)的設(shè)置。
第二步,創(chuàng)建源文件。首先,打開軟件建立一個(gè)新的項(xiàng)目,或者添加原有的項(xiàng)目,然后建立一個(gè)新的空白程序。在新程序的文字編輯窗口,編寫所需代碼,即可生產(chǎn)C語(yǔ)言程序的源文件。
第三步,編譯并調(diào)試。這也是單片機(jī)開發(fā)過程中的中間階段,開發(fā)人員將軟件轉(zhuǎn)換到調(diào)試模式,然后利用軟件的仿真功能,對(duì)源程序代碼進(jìn)行逐個(gè)調(diào)試。檢查并發(fā)現(xiàn)錯(cuò)誤的代碼,及時(shí)改正和完善。利用C51編譯器調(diào)試和編譯源程序,生成目標(biāo)代碼或模塊1。最后,將各模塊連接在一起,最終生成文件。
第四步,生成HEX文件。采用Intel公司提出的十六進(jìn)制字節(jié)寬度來保存HEX文件,然后將所編譯的目標(biāo)程序生成HEX文件,最后將該文件通過編譯器燒寫進(jìn)單片機(jī)的芯片中,用于后續(xù)的仿真調(diào)試。
結(jié)論
綜上所述,基于C語(yǔ)言的單片機(jī)技術(shù)具有強(qiáng)大的功能,可以實(shí)現(xiàn)硬件指定的作用。單片機(jī)的出現(xiàn)極大地推動(dòng)了計(jì)算機(jī)技術(shù)的快速發(fā)展,目前已經(jīng)運(yùn)用到了家用電器、汽車電子等生產(chǎn)生活的各個(gè)方面。C語(yǔ)言逐漸代替匯編語(yǔ)言,成為了單片機(jī)開發(fā)中最合適的語(yǔ)言,在未來的運(yùn)用中,基于C語(yǔ)言的單片機(jī)技術(shù)將會(huì)有更大的發(fā)展空間。
以上就是我們深圳市組創(chuàng)微電子有限公司為您介紹的基于C語(yǔ)言的單片機(jī)技術(shù)詳情。我們有豐富的智能電子產(chǎn)品定制開發(fā)經(jīng)驗(yàn),可以盡快評(píng)估開發(fā)周期與IC價(jià)格,也可以核算PCBA報(bào)價(jià)。我們是松翰單片機(jī)代理商、應(yīng)廣單片機(jī)代理商,出售并開發(fā)sonix與應(yīng)廣的MCU與語(yǔ)音IC方案。我們代理并開發(fā)杰理、安凱、全志、realtek等系列的IC與方案,還開發(fā)BLE藍(lán)牙IC、雙模藍(lán)牙模塊、wifi模塊、物聯(lián)網(wǎng)模塊。我們的擁有硬件設(shè)計(jì)與軟件開發(fā)能力。涵蓋了電路設(shè)計(jì)、PCB設(shè)計(jì)、單片機(jī)開發(fā)、軟件定制開發(fā)、APP定制開發(fā)、微信公眾號(hào)開發(fā)、語(yǔ)音識(shí)別技術(shù)、藍(lán)牙開發(fā)、wifi技術(shù)等。還可以承接智能電子產(chǎn)品研發(fā)、家用電器方案設(shè)計(jì)、美容儀器開發(fā)、物聯(lián)網(wǎng)應(yīng)用開發(fā)、智能家居方案設(shè)計(jì)、TWS耳機(jī)開發(fā)、藍(lán)牙耳機(jī)音箱開發(fā)、兒童玩具方案開發(fā)、電子教育產(chǎn)品研發(fā)。
- 返回頂部