單片機(jī)第6章 C語言編程與應(yīng)用.ppt

單片機(jī)第6章 C語言編程與應(yīng)用.ppt

ID:56466574

大?。?.82 MB

頁數(shù):160頁

時間:2020-06-19

單片機(jī)第6章 C語言編程與應(yīng)用.ppt_第1頁
單片機(jī)第6章 C語言編程與應(yīng)用.ppt_第2頁
單片機(jī)第6章 C語言編程與應(yīng)用.ppt_第3頁
單片機(jī)第6章 C語言編程與應(yīng)用.ppt_第4頁
單片機(jī)第6章 C語言編程與應(yīng)用.ppt_第5頁
資源描述:

《單片機(jī)第6章 C語言編程與應(yīng)用.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、6.1概述6.251單片機(jī)C語言編寫的一般方法6.3C51數(shù)據(jù)類型及在MCS-51中的存儲方式6.4C51語言的程序結(jié)構(gòu)6.5C語言在MCS-51單片機(jī)中的典型運用第6章C語言編程與應(yīng)用7/28/202116.1概述傳統(tǒng)開發(fā)單片機(jī)系統(tǒng)主要用匯編語言編寫系統(tǒng)程序。匯編語言的缺點:可讀性和結(jié)構(gòu)較差,可移植性也不好,跨硬件平臺移植幾乎不可能。采用匯編語言編寫單片機(jī)應(yīng)用程序的周期長,測試和排錯比較困難,產(chǎn)品開發(fā)周期變長。為了提高編寫系統(tǒng)和應(yīng)用程序的效率,改善程序的可讀性和可移植性,縮短產(chǎn)品開發(fā)周期,采用高級語言的開發(fā)平臺來開發(fā)單片機(jī)系統(tǒng)已經(jīng)成為時尚

2、和趨勢?;诟呒壵Z言開發(fā)平臺進(jìn)行單片機(jī)開發(fā),具有開發(fā)速度快、語言簡潔易讀、可移植性好、可進(jìn)行結(jié)構(gòu)化程序設(shè)計和多人協(xié)同工作、可進(jìn)行脫離硬件平臺的軟件仿真等優(yōu)點。實踐證明,采用高級語言開發(fā)單片機(jī)系統(tǒng)的效率要比用匯編語言的高幾倍甚至幾十倍。7/28/20212單片機(jī)的高級語言包括:Basic語言、PL/M語言和C/C++語言。Basic語言主要應(yīng)用在MCS-51系列單片機(jī)上,效果不是很理想,現(xiàn)在已經(jīng)不再使用。PL/M語言對硬件的控制能力和代碼效率都很好,但局限于Intel公司的單片機(jī)系列,移植性差。C/C++語言是目前單片機(jī)的主流編程語言。7/2

3、8/20213單片機(jī)C語言編譯器不僅把開發(fā)者的C語言編譯成8051可以識別的機(jī)器碼,更主要的是能夠自動安排程序存儲器的空間,分配8051內(nèi)部RAM與外部RAM的空間、自動安排堆棧位置。這些事情都是匯編語言開發(fā)者必須自己作的。C51編譯器還可以把不同函數(shù)的數(shù)據(jù)實行覆蓋有效利用片上有限的RAM空間。一般情況下只懂C語言不懂得單片機(jī)的指令集的開發(fā)者也能夠用C51編寫完美的單片機(jī)程序。所以開發(fā)者學(xué)習(xí)單片機(jī)而不懂C語言將在激烈的市場競爭中處于十分不利的地位。7/28/202141?單片機(jī)應(yīng)用系統(tǒng)開發(fā)的軟硬件環(huán)境構(gòu)成補(bǔ)充:?單片機(jī)應(yīng)用系統(tǒng)開發(fā)的軟硬件環(huán)

4、境當(dāng)用戶目標(biāo)系統(tǒng)設(shè)計完成后,還需要應(yīng)用軟件支持,用戶目標(biāo)系統(tǒng)才能成為一個滿足用戶要求的單片機(jī)應(yīng)用系統(tǒng)。但該用戶目標(biāo)系統(tǒng)不具備自開發(fā)能力,需要借助于單片機(jī)仿真器(也稱單片機(jī)開發(fā)系統(tǒng))完成該項工作。7/28/20215一個典型的單片機(jī)系統(tǒng)開發(fā)環(huán)境組成如圖所示。單片機(jī)系統(tǒng)開發(fā)環(huán)境組成7/28/202162單片機(jī)應(yīng)用系統(tǒng)開發(fā)工具選擇原則全地址空間的仿真。不占用任何用戶目標(biāo)系統(tǒng)的資源。必須實現(xiàn)硬斷點,并且具有靈活的斷點管理功能。硬件實現(xiàn)單步執(zhí)行功能??筛櫽脩舫绦驁?zhí)行??捎^察用戶程序執(zhí)行過程中的變量和表達(dá)式??芍兄褂脩舫绦虻倪\行或用戶程序復(fù)位。系統(tǒng)硬

5、件電路的診斷與檢查。支持匯編和高級語言源程序級調(diào)試。7/28/202173使用JTAG界面單片機(jī)仿真開發(fā)環(huán)境JTAG仿真開發(fā)環(huán)境如圖所示。在JTAG單片機(jī)仿真開發(fā)環(huán)境中,JTAG適配器提供了計算機(jī)通信口到單片機(jī)JTAG口的透明轉(zhuǎn)換,并且不出借CPU和程序存儲器給應(yīng)用系統(tǒng),使得仿真更加貼近實際目標(biāo)系統(tǒng)。單片機(jī)內(nèi)部已集成了基于JTAG協(xié)議調(diào)試和下載程序。7/28/20218在線編程目前有兩種實現(xiàn)方法:在系統(tǒng)編程(ISP)和在應(yīng)用編程(IAP)。ISP一般通過單片機(jī)專用的串行編程接口對單片機(jī)內(nèi)部的Flash存儲器進(jìn)行編程,而IAP技術(shù)是從結(jié)構(gòu)上將

6、Flash存儲器映射為兩個存儲體,當(dāng)運行一個存儲體上的用戶程序時,可對另一個存儲體重新編程,之后將控制從一個存儲體轉(zhuǎn)向另一個。ISP的實現(xiàn)一般需要很少的外部電路輔助實現(xiàn),而IAP的實現(xiàn)更加靈活,通??衫脝纹瑱C(jī)的串行口接到計算機(jī)的RS232口,通過專門設(shè)計的固件程序?qū)?nèi)部的FLASH存儲器編程。4?單片機(jī)的在線編程7/28/202196.251單片機(jī)C語言編寫的一般方法KeelC51軟件是目前最流行開發(fā)8051系列單片機(jī)的軟件工具,這從近年來各單片機(jī)仿真機(jī)廠商紛紛宣布全面支持KeilC51即可看出。KeilC51提供了包括C編譯器、宏匯編、

7、連接器、庫管理和一個功能強(qiáng)大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境(μVision3IDEIntegrationDevelopEntironment)將這些部份組合在一起。掌握這一軟件的使用對于使用8051系列單片機(jī)的愛好者來說是十分必要的,即使不使用C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強(qiáng)大的軟件仿真調(diào)試工具也會令開發(fā)者事半功倍。用C語言編寫程序,離不開KeilC51軟件!7/28/202110μVision3IDE主要特性:μVision3IDE基于Windows的開發(fā)平臺,包含一個高效的編輯器、一個項目管理器

8、和一個MAKE工具。μVision3IDE支持所有的KeilC51工具,包括C編譯器、宏匯編器、連接/定位器、目標(biāo)代碼到HEX的轉(zhuǎn)換器。μVision3IDE內(nèi)嵌多種符合當(dāng)前工業(yè)

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。