Keil C51軟件使用說明ppt課件.ppt

Keil C51軟件使用說明ppt課件.ppt

ID:59416961

大?。?64.50 KB

頁數(shù):51頁

時間:2020-09-19

Keil C51軟件使用說明ppt課件.ppt_第1頁
Keil C51軟件使用說明ppt課件.ppt_第2頁
Keil C51軟件使用說明ppt課件.ppt_第3頁
Keil C51軟件使用說明ppt課件.ppt_第4頁
Keil C51軟件使用說明ppt課件.ppt_第5頁
資源描述:

《Keil C51軟件使用說明ppt課件.ppt》由會員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫

1、第6章單片機(jī)的C51語言編程6.1C51源程序的基本結(jié)構(gòu)和常用的頭文件6.2C51的基本數(shù)據(jù)類型、數(shù)據(jù)存儲類型和存儲模式6.3C51的運(yùn)算符6.4C51的函數(shù)6.5單片機(jī)的C51語言編程6.6C51和匯編語言的混合編程1匯編語言:優(yōu)點:面向機(jī)器、目標(biāo)代碼短、占用存儲器空間少、運(yùn)行快。缺點:指令助記符多、編程靈活性差。C語言:優(yōu)點:具有面向機(jī)器和面向用戶的特點,良好的可讀性﹑易維護(hù)性和可移植性,對硬件的控制能力也很強(qiáng),C語言的數(shù)據(jù)類型及運(yùn)算符豐富,具有良好的程序結(jié)構(gòu)。缺點:代碼效率稍低(同匯編語言相比),占用存儲空間較大。解決方法:單片機(jī)內(nèi)部都嵌入了大容量的

2、FlashROM,有效的彌補(bǔ)了這個缺陷。2采用KeilC51語言編程的優(yōu)點:(1)不需要對單片機(jī)的匯編語言指令系統(tǒng)有深入的了解;(2)寄存器分配﹑不同存儲器的尋址及數(shù)據(jù)類型等完全由編譯器自動管理;(3)程序的結(jié)構(gòu)規(guī)范,由一個主函數(shù)和不同功能的子函數(shù)組成;(4)自帶的庫中包含許多標(biāo)準(zhǔn)子函數(shù),具有較強(qiáng)的數(shù)據(jù)處理能力,方便使用;(5)C語言和匯編語言可以聯(lián)合使用??捎脜R編語言編寫與硬件有關(guān)的程序,用C語言編寫與硬件無關(guān)的運(yùn)算部分。36.1C51源程序的基本結(jié)構(gòu)和常用的頭文件6.1.1C51源程序的基本結(jié)構(gòu)文件的擴(kuò)展名為“.c”。由主函數(shù)和若干子函數(shù)組成。預(yù)處理命

3、令//例如:include,define等全局變量說明//例如:inta,b;main(){局部變量說明執(zhí)行語句(包括子函數(shù)的調(diào)用語句)}4func1(形式參數(shù)及說明)//子函數(shù)1{局部變量說明執(zhí)行語句(包括調(diào)用其它子函數(shù)語句)…}……funcn(形式參數(shù)及說明)//子函數(shù)n{局部變量說明執(zhí)行語句…}5C51編程時應(yīng)注意的問題:(1)C51源程序是由函數(shù)組成的:主函數(shù)和子函數(shù)。(2)一個函數(shù)由兩個部分組成,分別是函數(shù)說明部分和函數(shù)體。函數(shù)說明部分包括函數(shù)名﹑函數(shù)類型﹑函數(shù)屬性﹑函數(shù)參數(shù)(形參)名﹑形式參數(shù)類型。函數(shù)名后面必須跟一對圓括號,函數(shù)參數(shù)可以沒有,

4、如main()。函數(shù)體:{…}內(nèi)的部分。“{}”必須成對出現(xiàn),書寫位置隨意。一般為了層次分明,同一層的大括號對齊,并采用逐層縮進(jìn)方法書寫。(3)每個語句必須以“;”結(jié)尾。(4)可以用“/*……*/”或“//”對程序中的任何部分進(jìn)行注釋。(5)每個語句和數(shù)據(jù)定義的最后必須有分號。66.1.2C51中常用的頭文件reg51.h、reg52.h、math.h、ctype.h、stdio.h、stdlib.h、absacc.h和intrins.h。(1)reg51.h和reg52.h(定義51或52子系列單片機(jī)特殊功能寄存器和特殊位)reg52.h比reg51.h

5、多了幾行定義T2寄存器的內(nèi)容。7sfrP1=0x90;/*定義P1口的地址為90H*/sfrTCON=0x88;sfrTMOD=0x89;sfrTL0=0x8A;sfr16T2=0xCC;T2L=0CCH,T2H=0CDH*/sbitET0=IE^1;/*指定ET0為中斷允許控制寄存器IE的第1位*/sbitET0=0xaa;/*指定ET0為可尋址位0AAH,即IE.1。*/8(2)absacc.h訪問絕對地址頭文件。當(dāng)用絕對地址訪問內(nèi)部RAM(data)、外部RAM的一頁(pdata)、整個外部RAM(xdata)和ROM(code)時,需包含此文件。命

6、令有:CBYTE、CWORD(以字節(jié)型、字型訪問ROM)DBYTE、DWORD(訪問內(nèi)部RAM)PBYTE、PWORD(外部RAM的一頁空間(256B))XBYTE、XWORD(訪問外部RAM)9#includemain(){DBYTE[0x30]=0xff;/*給片內(nèi)RAM的30H單元賦值0FFH*/XWORD[0x1000]=0x1234;/*給片外RAM的1000H單元賦值12H,1001H單元賦值34H*/}10(3)其它頭文件math.h:數(shù)學(xué)運(yùn)算函數(shù),如求絕對值、平方根、指數(shù)、正弦等函數(shù)。ctype.h:提供兩類重要的函數(shù):

7、字符測試函數(shù)和字符大小轉(zhuǎn)化函數(shù)。例如,判斷一個整型變量是數(shù)字、字母、換行符、控制符等。stdio.h:標(biāo)準(zhǔn)輸入輸出函數(shù)頭文件,用于從標(biāo)準(zhǔn)輸入設(shè)備讀取字符、數(shù)字,或向標(biāo)準(zhǔn)輸出設(shè)備輸出字符、字符串等。11stdlib.h:標(biāo)準(zhǔn)庫頭文件。說明了用于數(shù)值轉(zhuǎn)換、內(nèi)存分配以及具有其他相似任務(wù)的函數(shù),例如求絕對值、把字符串轉(zhuǎn)換成整型、長整型等。intrins.h:字符型、整型和長整型數(shù)字的左、右循環(huán)移位頭文件。例如_cror_、_crol_、_iror_、_irol_分別表示字符型數(shù)字右循環(huán)、左循環(huán)和整型數(shù)字的右循環(huán)、左循環(huán)。例如:_cror_(a,2);//對變量a循

8、環(huán)右移2位此處的循環(huán)移位和按位操作的左移(<<)和右移(>>)實現(xiàn)

當(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ò)波動等原因無法下載或下載錯誤,付費(fèi)完成后未能成功下載的用戶請聯(lián)系客服處理。