單片機(jī)C語言常用語句詳解ppt課件_第1頁
單片機(jī)C語言常用語句詳解ppt課件_第2頁
單片機(jī)C語言常用語句詳解ppt課件_第3頁
單片機(jī)C語言常用語句詳解ppt課件_第4頁
單片機(jī)C語言常用語句詳解ppt課件_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

.,C51編程常用語句總結(jié),一、C51定義SFR定義方法:兩個(gè)關(guān)鍵字:sfr和sbit1.定義特殊功能寄存器用sfr例如:sfrPSW=0 xD0;/*定義程序狀態(tài)字PSW的地址為D0H*/sfrTMOD=0 x89;/*定義定時(shí)器/計(jì)數(shù)器方式控制寄存器TMOD的地址為89H*/sfrP1=0 x90;/*定義P1口的地址為90H*/2.定義可位尋址的特殊功能寄存器的位用sbit例如:sbitCY=0 xD7;/*定義進(jìn)位標(biāo)志CY的地址為D7H*/sbitAC=0 xD06;/*定義輔助進(jìn)位標(biāo)志AC的地址為D6H*/sbitRS0=0 xD03;/*定義RS0的地址為D3H*/,.,標(biāo)準(zhǔn)SFR在reg51.h、reg52.h等頭文件中已經(jīng)被定義,只要用文件包含做出聲明即可使用。例如:#includesbitP10=P10;sbitP12=P12;main()P10=1;P12=0;PSW=0 x08;,.,二、C51定義位變量使用關(guān)鍵字bit例如:bitlock;/*將lock定義為位變量*/bitdirection;/*將direction定義為位變量*/注意:不能定義位變量指針;也不能定義位變量數(shù)組。,C51編程常用語句總結(jié),.,C51流程控制語句,一、選擇語句1.if語句以下三種形式:if(表達(dá)式)語句;if(表達(dá)式)語句1;else語句2;if(表達(dá)式1)語句1;elseif(表達(dá)式2)語句2;elseif(表達(dá)式3)語句3;elseif(表達(dá)式n)語句n;else語句n+1;,.,C51流程控制語句,例1:if(p1!=0)c=20;例2:if(p1!=0)c=20;elsec=0;例3:if(a=1)c=10;elseif(a=2)c=20;elseif(a=3)c=30;elseif(a=4)c=40;elsec=0;,.,C51流程控制語句,switch/case語句switch/case語句的一般形式如下:switch(表達(dá)式)case常量表達(dá)式1:語句1;break;case常量表達(dá)式2:語句2;break;case常量表達(dá)式n:語句n;break;default:語句n+1;,.,C51流程控制語句,例:單片機(jī)P1口的P1.0和P1.1各接一個(gè)開關(guān)K1、K2,P1.4、P1.5、P1.6和P1.7各接一只發(fā)光二極管。有K1和K2的不同狀態(tài)來確定哪個(gè)發(fā)光二極管被點(diǎn)亮。,.,C51流程控制語句,方法一:用if語句實(shí)現(xiàn)#includevoidmain()chara;a=P1;a=a/*屏蔽高6位*/if(a=3)P1=0 x83;elseif(a=2)P1=0 x43;elseif(a=1)P1=0 x23;elseP1=0 x13;,.,C51流程控制語句,方法二:用switch/case語句實(shí)現(xiàn)#includevoidmain()chara;a=P1;a=a/*屏蔽高6位*/switch(a)case3:P1=0 x83;break;case2:P1=0 x43;break;case1:P1=0 x23;break;case0:P1=0 x13;,.,C51流程控制語句,二、循環(huán)語句if語句和goto語句goto語句只能構(gòu)成簡單循環(huán),與if語句一起可以實(shí)現(xiàn)當(dāng)型和直到型循環(huán)。構(gòu)成當(dāng)型循環(huán)loop:if(表達(dá)式)語句gotoloop;構(gòu)成直到型循環(huán)loop:語句if(表達(dá)式)gotoloop;,.,C51流程控制語句,while語句while語句的一般格式:while(表達(dá)式)語句do-while語句do-while語句一般格式:do語句while(表達(dá)式);for語句for語句的一般形式:for(表達(dá)式1;表達(dá)式2;表達(dá)式3)語句,.,舉例:例按鍵的程序只能執(zhí)行一遍,使用循環(huán)程序使其無窮循環(huán)下去。用goto語句實(shí)現(xiàn)#includevoidmain()chara;loop:a=P1;a=a/*屏蔽高6位*/switch(a)case3:P1=0 x83;break;case2:P1=0 x43;break;case1:P1=0 x23;break;case0:P1=0 x13;gotoloop;,.,用while語句實(shí)現(xiàn)#includevoidmain()chara;while(1)a=P1;a=a/*屏蔽高6位*/switch(a)case3:P1=0 x83;break;case2:P1=0 x43;break;case1:P1=0 x23;break;case0:P1=0 x13;,While中的條件恒為1,表示死循環(huán)。,.,用do-while語句實(shí)現(xiàn)#includevoidmain()chara;doa=P1;a=a,While中的條件恒為1,表示死循環(huán)。,.,用for語句實(shí)現(xiàn)#includevoidmain()chara;for(;)a=P1;a=a/*屏蔽高6位*/switch(a)case3:P1=0 x83;break;case2:P1=0 x43;break;case1:P1=0 x23;break;case0:P1=0 x13;,for中的條件恒為真,表示死循環(huán)。,.,C51構(gòu)造數(shù)據(jù)類型,一、數(shù)組一維數(shù)組一維數(shù)組的定義類型說明符數(shù)組名元素個(gè)數(shù);如:inta50;一維數(shù)組的初始化inta5=1,2,3,4,5;/*給全部元素賦值*/intb6=1,2,6;/*給部分元素賦值*/intd10;d0=4;d1=6;/*定義完后再賦值*/,.,二維數(shù)組二維數(shù)組的定義類型說明符數(shù)組名行數(shù)列數(shù);如:floata34;二維數(shù)組的初始化inta34=1,2,3,4,5,6,7,8,9,10,11,12;/*全部初始化*/inta34=1,2,3,4,5,6,7,8,;/*部分初始化,a20=a21=a22=a23=0*/C51還可以定義多維數(shù)組,也可以定義字符型數(shù)組。數(shù)組是十分有用的數(shù)據(jù)類型,用它可以形成容易查找的數(shù)據(jù)表格。,.,C51函數(shù),一、函數(shù)的定義與分類函數(shù)的分類標(biāo)準(zhǔn)庫函數(shù)用戶自定義函數(shù)用戶自定義函數(shù)是用戶根據(jù)自己的需要而編寫的函數(shù)。從函數(shù)定義的形式上劃分:無參數(shù)函數(shù)、有參數(shù)函數(shù)和空函數(shù)。函數(shù)的定義返回值類型函數(shù)名(形式參數(shù)列表)函數(shù)體例如:intmax(intx,inty,intz)返回值的數(shù)據(jù)類型為整型,函數(shù)名為max,x、y、z為個(gè)整型入口參數(shù)。,.,C51函數(shù),二、C51的庫函數(shù)C51編譯器提供了豐富的庫函數(shù),使用這些庫函數(shù)大大提高了編程效率,用戶可以根據(jù)需要隨時(shí)調(diào)用。每個(gè)庫函數(shù)都在相應(yīng)的頭文件中給出了函數(shù)的原型,使用時(shí)只需在源程序的開頭用編譯預(yù)處理命令#include將相關(guān)的頭文件包含進(jìn)來即可。例如,要使用數(shù)學(xué)公式,只需要在程序開頭使用#include文件包含就可以了。要訪問SFR和SFR的位,則只需要在程序開頭使用#include或#include文件包含。,.,C51應(yīng)用編程實(shí)例,例:外部中斷0引腳(P3.2)接一個(gè)開關(guān),P1.0接一個(gè)發(fā)光二極管。開關(guān)閉合一次,發(fā)光二極管改變一次狀態(tài)。本例解決外部中斷如何應(yīng)用。要求:編程實(shí)現(xiàn)此功能。,.,#includesbitP10=P10;inti;voidmain()EA=1;EX0=1;while(1);voidint_srv()interrupt0using1while(INT0=0)for(i=0,i220;i+);while(INT0=0)P10=!P10;while(INT0=0);,.,小結(jié),本章要求:掌握C5

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論