版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第4章C51程序設(shè)計(jì)2本章內(nèi)容4.1C51特點(diǎn)4.2C51數(shù)據(jù)類型
4.3C51變量與存儲(chǔ)類型4.4C51絕對(duì)地址4.5C51重要函數(shù)4.6C51基本運(yùn)算符34.1C51特點(diǎn)1.C51的函數(shù)printf為串行輸出,函數(shù)scanf為串行輸入。2.C51擴(kuò)展了位數(shù)據(jù)類型。3.C51數(shù)據(jù)對(duì)象含有存儲(chǔ)類型,即數(shù)據(jù)可能在片內(nèi)RAM、片外RAM、ROM中。4.C51中擴(kuò)充了SFR。5.C51中有特殊的中斷程序。CONTENT4.2C51數(shù)據(jù)類型除了標(biāo)準(zhǔn)C的char、int、long、float等數(shù)據(jù)類型之外,C51擴(kuò)展了以下幾種:
bit-位數(shù)據(jù)類型
sbit-SFR中的可尋址位
sfr-8位SFR
sfr16-16位SFR4.3C51的變量定義與存儲(chǔ)類型C51數(shù)據(jù)對(duì)象定義格式:數(shù)據(jù)類型
存儲(chǔ)類型
變量名(初值)
char
datax=12;
int
xdatax=1122;
floatdatax=124.75;其中char,int是數(shù)據(jù)類型,data,xdata是存儲(chǔ)類型4.3C51變量與存儲(chǔ)類型---常用存儲(chǔ)類型data:內(nèi)部低128字節(jié)RAM區(qū)bdata:16字節(jié)可位尋址RAM區(qū)idata:內(nèi)部高128字節(jié)RAM,僅限89S52pdata:外部RAM低256字節(jié)xdata:外部RAM64K字節(jié)code:ROM4.3C51變量與存儲(chǔ)類型---存儲(chǔ)模式如果不指定存儲(chǔ)器類型,編譯器根據(jù)存儲(chǔ)模式,給對(duì)象指定存儲(chǔ)類型small:變量在片內(nèi)RAM中,即datacompact:變量在片外RAM的低256字節(jié)中,即pdatalarge:變量在片外RAM中,即xdata4.3C51變量與存儲(chǔ)類型---SFR對(duì)SFR的定義,通過(guò)頭文件reg51.h或reg52.h,已做了預(yù)定義。 用#include“reg51.h”引用即可。reg51.h中對(duì)21個(gè)SFR做了定義,如P0~P3的。4.3C51變量與存儲(chǔ)類型---位變量bit和sbit1、bit:需要自定義,如bitx;2、sbit:格式,sbit位變量名=位地址;大部分SFR可尋址位,在頭文件reg51.h或reg52.h中用sbit做了預(yù)定義,如CY、P等。注意:在reg51.h中,P0~P3的32個(gè)位,如P0.0,沒(méi)有預(yù)定義,需要用戶用sbit先定義,后使用。如:sbitled=P0^0;4.3C51變量與存儲(chǔ)類型---數(shù)組與指針1、數(shù)組charcodeseg[10]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//共陽(yáng)極0-9字形碼2、指定存儲(chǔ)區(qū)的指針格式:[指針變量存儲(chǔ)類型]
指向數(shù)的數(shù)據(jù)類型指向數(shù)的存儲(chǔ)類型*指針名如: chardata*str
int
xdata*pow指針實(shí)例#defineucharunsignedchar#defineuintunsignedintvoidfunc(void){uchardatavar1;ucharpdata*dp1;uintxdata*dp2;uchardata*dp3;dp1=0x30;dp2=0x1000;*dp1=0xff;*dp2=0x1234;dp3=&var1;*dp3=0x20;}main(){while(1) {;}}114.4絕對(duì)地址絕對(duì)地址訪問(wèn)宏XBYTE[0x數(shù)字]形式對(duì)外部RAM或外設(shè)進(jìn)行訪問(wèn),需頭文件absacc.h支持。相當(dāng)于匯編指令MOVX的功能,執(zhí)行總線操作。4.5C51重要函數(shù)1、中斷函數(shù)P101 函數(shù)名()
interruptn[m]
n---0~4,表示5個(gè)中斷
m---0~3,表示選用某個(gè)工作寄存器組2、幾個(gè)重要的庫(kù)函數(shù) (1)adsacc.h中的I/O地址訪問(wèn)宏XBYTE (2)stdio.h中的printf和scanf函數(shù) (3)intrins.h中的移位:_c[或i,l]rol[或r]_(uchar,uchar);和空函數(shù):_nop_()。4.6C51基本運(yùn)算1、算術(shù):+、-、*、/、%2、自加自減:++、--3、關(guān)系:>、<、>=、<=、==、!=4、賦值:=5、邏輯:&&、||、^、!,結(jié)果為“1-真”或“0-假”6、按位邏輯:&、|、
~
、<<、>>,對(duì)象為字符或整型7、在可位尋址的SFR中,^表示SFR中的某一位,如P0^0。注意:在表達(dá)式中直接出現(xiàn)的^號(hào)表示異或,P1的第0位必須用sbit重定義才能使用,如“sbitK1=P1^0;”。作業(yè)1、編寫程序,初始化將P3口上的LED最低位點(diǎn)亮(為0點(diǎn)亮),判斷P1.1按鍵,如閉合(為0),則
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 職業(yè)發(fā)展與晉升機(jī)會(huì)創(chuàng)造策略
- 快速辦理二手房買賣合同范文
- 企業(yè)內(nèi)部團(tuán)建活動(dòng)組織規(guī)定
- 農(nóng)業(yè)科技研發(fā)定向捐贈(zèng)協(xié)議
- 員工激勵(lì)與離職率降低
- 勞務(wù)準(zhǔn)則上墻
- 農(nóng)業(yè)企業(yè)客戶資產(chǎn)管理計(jì)劃
- 交通運(yùn)輸設(shè)備租賃資金管理
- 大型活動(dòng)舞臺(tái)背景墻繪協(xié)議
- 創(chuàng)意產(chǎn)業(yè)園區(qū)
- 航海學(xué)天文定位第四篇第6章天文定位
- 第8章 腹部檢查(講稿)
- 淺談深度教學(xué)中小學(xué)數(shù)學(xué)U型學(xué)習(xí)模式
- 物理電學(xué)暗箱專題30道
- 濕法脫硫工藝計(jì)算書
- 江西上饒鉛山汽車駕駛科目三考試線路
- 通過(guò)一起放火案件淺析放火案件的移交工作
- 南京農(nóng)業(yè)大學(xué)學(xué)生在校學(xué)習(xí)期間現(xiàn)實(shí)表現(xiàn)證明
- (醫(yī)學(xué)PPT課件)NT檢查規(guī)范
- 中醫(yī)呼吸系統(tǒng)疾病研究的現(xiàn)狀及未來(lái)臨床研究思路
- 導(dǎo)電炭黑的用途及使用方法
評(píng)論
0/150
提交評(píng)論