基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)

基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)

ID:44396896

大小:2.13 MB

頁(yè)數(shù):50頁(yè)

時(shí)間:2019-10-21

基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)_第1頁(yè)
基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)_第2頁(yè)
基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)_第3頁(yè)
基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)_第4頁(yè)
基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)_第5頁(yè)
資源描述:

《基于C語(yǔ)言的單片機(jī)應(yīng)用2(續(xù)2)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、第二次課(續(xù))AT89S52單片機(jī)硬件結(jié)構(gòu)文件結(jié)構(gòu)、數(shù)據(jù)的類型C51數(shù)據(jù)類型的取值范圍NanjingcollegeofinformationTechnology數(shù)據(jù)類型長(zhǎng)度(bit)長(zhǎng)度(byte)值域bit110,1unsignedchar810~255signedchar81–128~127unsignedint1620~65535signedint162–32768~32767unsignedlong3240~4294967295signedlong324–2147483648~2147483647float324±1.176E–38~±3.40E+38(6位數(shù)字)數(shù)

2、據(jù)類型的選用由于51系列是8位機(jī),它只能直接處理8位無(wú)符號(hào)數(shù)的運(yùn)算,單片機(jī)C語(yǔ)言編程和程序存儲(chǔ)器資源結(jié)合起來(lái),只有bit和char等數(shù)據(jù)類型是是機(jī)器語(yǔ)言直接支持的數(shù)據(jù)類型,用此類數(shù)據(jù)類型的語(yǔ)句所生成的代碼較短;而其它的數(shù)據(jù)類型如整型、浮點(diǎn)型等數(shù)據(jù)要有一定的內(nèi)部程序或內(nèi)部函數(shù)的支持,相對(duì)來(lái)說(shuō)用該類數(shù)據(jù)類型的語(yǔ)句生成的代碼要長(zhǎng)。因此我們應(yīng)盡可能地使用bit,char等機(jī)器語(yǔ)言直接支持的數(shù)據(jù)類型.在程序設(shè)計(jì)中,都盡量采用無(wú)符號(hào)數(shù)以提高運(yùn)算速度,以此避免進(jìn)行多余運(yùn)算。在運(yùn)算時(shí),可以進(jìn)行定點(diǎn)運(yùn)算的盡量進(jìn)行定點(diǎn)運(yùn)算,避免進(jìn)行浮點(diǎn)運(yùn)算。如*2或/2,就可以使用移位操作來(lái)代替除法運(yùn)算。這樣

3、不僅可以減少代碼量,同時(shí),還能大大提高程序執(zhí)行效率,變量類型的選用實(shí)例三請(qǐng)改正下列程序中的錯(cuò)誤#definepi=3.1415926;Main(){inta=b=v=5,d;charch=‘a(chǎn)’;floatenum,pi;d=a+1=b;}一、C51數(shù)據(jù)的存儲(chǔ)類型與存儲(chǔ)器模式C51是面向51系列單片機(jī)及其硬件控制系統(tǒng)的開(kāi)發(fā)語(yǔ)言,它定義的任何變量必須定位在單片機(jī)的某一個(gè)區(qū)域中,否則便沒(méi)有意義。存儲(chǔ)器程序存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器的尋址空間是分開(kāi)的,屬于哈佛存儲(chǔ)結(jié)構(gòu)。片內(nèi)存儲(chǔ)器片外存儲(chǔ)器片內(nèi)存儲(chǔ)器片外存儲(chǔ)器四個(gè)物理上獨(dú)立的空間(一)MCS-51的存儲(chǔ)器(一)MCS-

4、51的存儲(chǔ)器存儲(chǔ)器數(shù)據(jù)存儲(chǔ)器RAM程序存儲(chǔ)器ROM,4KB/8KB(8051/52)通用存儲(chǔ)器RAM,128B/256B(8051/52)特殊功能寄存器,21/26個(gè)(8051/52)存放運(yùn)算中間或臨時(shí)數(shù)據(jù)等可擴(kuò)展至64KB專用寄存器每個(gè)不得隨便定義用途,如累加器A,定時(shí)器/計(jì)數(shù)器等。不能擴(kuò)展存放用戶程序、常數(shù)及表格等??蓴U(kuò)展至64KB1、數(shù)據(jù)存儲(chǔ)器配置數(shù)據(jù)存儲(chǔ)器配置圖數(shù)據(jù)存儲(chǔ)器用于存放運(yùn)算的中間結(jié)果、數(shù)據(jù)暫存及數(shù)據(jù)緩沖等。數(shù)據(jù)存儲(chǔ)器RAM也包括:一個(gè)片內(nèi)數(shù)據(jù)存儲(chǔ)器和一個(gè)片外數(shù)據(jù)存儲(chǔ)器可尋址空間。片內(nèi)數(shù)據(jù)存儲(chǔ)器工作寄存器區(qū)(00H-1FH)位尋址區(qū)(20H-2FH)通用區(qū)(

5、30H-7FH)特殊功能寄存器區(qū)(80H-FFH)通用區(qū)(80H-FFH):直接尋址間接尋址直接尋址和間接尋址僅52子系列有位尋址區(qū)位地址分配表2、片外數(shù)據(jù)存儲(chǔ)器片外數(shù)據(jù)存儲(chǔ)器可尋址空間是指MCS-51單片機(jī)對(duì)片外擴(kuò)展數(shù)據(jù)存儲(chǔ)器的最大尋址能力。51單片機(jī)是64KB。片外擴(kuò)展的數(shù)據(jù)存儲(chǔ)器與片內(nèi)數(shù)據(jù)存儲(chǔ)器不是統(tǒng)一編址的,邏輯上、物理都是獨(dú)立的兩個(gè)空間。3、專用寄存器(SFR)特殊功能寄存器的地址離散的分布在80H~FFH的空間中。MCS-51系列單片機(jī)有21個(gè)可字節(jié)尋址特殊功能寄存器。52子系列比51子系列多了一個(gè)定時(shí)器/計(jì)數(shù)器T2,增加了5個(gè)特殊功能寄存器。符號(hào)名稱地址ACC

6、累加器0E0HBB寄存器0F0HPSW程序狀態(tài)字0D0HSP堆棧指針81HDPTR數(shù)據(jù)指針(包括高位DPH和低位DPL)83H(高位)82H(低位)P0P0口鎖存寄存器80HP1P1口鎖存寄存器90HP2P2口鎖存寄存器0A0HP3P3口鎖存寄存器0B0HIP中斷優(yōu)先級(jí)控制寄存器0B8HIE中斷允許控制寄存器0A8HTMOD定時(shí)/計(jì)數(shù)器工作方式、狀態(tài)寄存器89HT2CON*定時(shí)/計(jì)數(shù)器2控制寄存器0C8HTCON定時(shí)/計(jì)數(shù)器控制寄存器88H符號(hào)名稱地址TH0定時(shí)/計(jì)數(shù)器0(高字節(jié))8CHTL0定時(shí)/計(jì)數(shù)器0(低字節(jié))8AHTH1定時(shí)/計(jì)數(shù)器1(高字節(jié))8DHTL1定時(shí)/計(jì)數(shù)

7、器1(低字節(jié))8BHTH2*定時(shí)/計(jì)數(shù)器2(高字節(jié))0CDHTL2*定時(shí)/計(jì)數(shù)器2(低字節(jié))0CCHRCAP2H*定時(shí)/計(jì)數(shù)器2記錄寄存器(高字節(jié))0CBHRCAP2L*定時(shí)/計(jì)數(shù)器2記錄寄存器(低字節(jié))0CAHSCON串行口控制寄存器98HSBUF串行數(shù)據(jù)緩沖器99HPCON電源控制寄存器97H這些特殊功能寄存器,可以以字節(jié)尋址,部分也可以位尋址??晌粚ぶ返募拇嫫?,是該寄存器的地址是8的整倍數(shù)。有11個(gè)可位尋址寄存器等。在位尋址時(shí),某特殊功能寄存器的字節(jié)地址,就是該特殊功能寄存器最低位(D0)的位地址,其它位地址

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

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

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