C51程序設(shè)計基礎(chǔ)_第1頁
C51程序設(shè)計基礎(chǔ)_第2頁
C51程序設(shè)計基礎(chǔ)_第3頁
C51程序設(shè)計基礎(chǔ)_第4頁
C51程序設(shè)計基礎(chǔ)_第5頁
已閱讀5頁,還剩81頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、88微處理器微處理器( 運 算 部( 運 算 部件)件)控制部件控制部件B 數(shù) 據(jù) 存 儲數(shù) 據(jù) 存 儲器器RAMP0口口P2口口程 序 存 儲程 序 存 儲器器P1口口P3口口串串行行口口定 時定 時 /計數(shù)器計數(shù)器中斷中斷系統(tǒng)系統(tǒng)特殊功特殊功能寄存能寄存器(器(SFR)88ROM/EPROMV VCCCCV VSSSSXTAL1XTAL2 PSENALEEARESET(3)if (條件表達(dá)式條件表達(dá)式1) if (條件表達(dá)式條件表達(dá)式2) if (條件表達(dá)式條件表達(dá)式3) 動作動作A else 動作動作B else 動作動作C else 動作動作D 動作動作 A:條件表達(dá)式:條件表達(dá)式1,

2、2,3都成立時才會執(zhí)行。都成立時才會執(zhí)行。動作動作 B:條件表達(dá)式:條件表達(dá)式1,2成立,但條件表達(dá)式成立,但條件表達(dá)式3不成立時才會不成立時才會執(zhí)行。執(zhí)行。動作動作 C:條件表達(dá)式:條件表達(dá)式1成立,條件表達(dá)式成立,條件表達(dá)式2不成立時才會執(zhí)行。不成立時才會執(zhí)行。動作動作 D:條件表達(dá)式:條件表達(dá)式1不成立時才會執(zhí)行。不成立時才會執(zhí)行。范例范例 IfDemo3.C(4) switch-case語句語句 switch (條件表達(dá)式條件表達(dá)式) case條件值條件值1: 動作動作1 break; case條件值條件值2: 動作動作2 break; case條件值條件值3: 動作動作3 break

3、; default: 動作動作4break; switch內(nèi)的條件表達(dá)式的結(jié)果必須為整數(shù)或字符。內(nèi)的條件表達(dá)式的結(jié)果必須為整數(shù)或字符。Switch用條件表達(dá)式的值來與各用條件表達(dá)式的值來與各case的條件值對比,如的條件值對比,如 果與某個條件值相符合,則執(zhí)行該果與某個條件值相符合,則執(zhí)行該case的動作,之后一的動作,之后一定要寫定要寫break退出循環(huán)。退出循環(huán)。如果所有的條件值都不符合,則執(zhí)行如果所有的條件值都不符合,則執(zhí)行default的動作,每的動作,每 一個動作之后一定要寫一個動作之后一定要寫break,否則會繼續(xù)執(zhí)行。,否則會繼續(xù)執(zhí)行。 另外另外case之后的條件值必須是數(shù)據(jù)常數(shù)

4、,不能是變量,之后的條件值必須是數(shù)據(jù)常數(shù),不能是變量, 而且不可以重復(fù),即條件值必須各不同,如果有數(shù)種而且不可以重復(fù),即條件值必須各不同,如果有數(shù)種case所做的動作一樣時,也可以寫在一起,即上下并列。所做的動作一樣時,也可以寫在一起,即上下并列。 一般當(dāng)程序必須作多選一般當(dāng)程序必須作多選1時,可以采用時,可以采用switch語句。語句。break:是跳出循環(huán)的命令,任何由:是跳出循環(huán)的命令,任何由switch、for、while、do-while構(gòu)成的循環(huán),都可以用構(gòu)成的循環(huán),都可以用break來跳來跳出。出。必須注意的是必須注意的是break一次只能跳出一層循環(huán),通常都和一次只能跳出一層循

5、環(huán),通常都和if連用,當(dāng)某些條件成立后就跳出循環(huán)。連用,當(dāng)某些條件成立后就跳出循環(huán)。 default:當(dāng)所有:當(dāng)所有case的條件值都不成立時,就執(zhí)行的條件值都不成立時,就執(zhí)行 default所指定的動作,作完后也要使用所指定的動作,作完后也要使用break指令跳出指令跳出switch循環(huán)。循環(huán)。范例范例 SwitchDemo.c(P58)例:x有1-5共5個取值,判斷該值,并將另外一個變量y分別賦值為前5個素數(shù)2,3,5,7,11。switch(x) case 1:y=2; break; case 2:y=3; break; case 3:y=5; break; case 4:y=7; br

6、eak; default:y=11; break;循環(huán)結(jié)構(gòu)循環(huán)結(jié)構(gòu)(1)while循環(huán)語句循環(huán)語句while (條件表達(dá)式條件表達(dá)式) 動作動作 先測試條件表達(dá)式是否成立,當(dāng)條件表達(dá)式為真先測試條件表達(dá)式是否成立,當(dāng)條件表達(dá)式為真時,則執(zhí)行循環(huán)內(nèi)動作,做完后又繼續(xù)跳回條件時,則執(zhí)行循環(huán)內(nèi)動作,做完后又繼續(xù)跳回條件表達(dá)式作測試,如此反復(fù)直到條件表達(dá)式為假為表達(dá)式作測試,如此反復(fù)直到條件表達(dá)式為假為止,使用時要避免條件永遠(yuǎn)為真,造成死循環(huán)。止,使用時要避免條件永遠(yuǎn)為真,造成死循環(huán)。范例范例 whileDemo.c(2)do-while 循環(huán)語句循環(huán)語句 do 動作動作 while(條件表達(dá)式條件表

7、達(dá)式);先執(zhí)行動作后,再測試條件表達(dá)式是否成立。當(dāng)條件表先執(zhí)行動作后,再測試條件表達(dá)式是否成立。當(dāng)條件表達(dá)式為真,則繼續(xù)回到前面動作,如此反復(fù)直到條件表達(dá)式為真,則繼續(xù)回到前面動作,如此反復(fù)直到條件表達(dá)式為假為止,不論條件表達(dá)式的結(jié)果為何,至少會做達(dá)式為假為止,不論條件表達(dá)式的結(jié)果為何,至少會做一次動作,使用時要避免條件永遠(yuǎn)為真,造成死循環(huán)。一次動作,使用時要避免條件永遠(yuǎn)為真,造成死循環(huán)。范例范例 DowhileDemo.c(3) for循環(huán)語句循環(huán)語句: 是循環(huán)語句中最靈活和最強大的語句是循環(huán)語句中最靈活和最強大的語句for (表達(dá)式表達(dá)式1;表達(dá)式;表達(dá)式2;表達(dá)式;表達(dá)式3) 動作動作

8、表達(dá)式表達(dá)式1:通常是設(shè)定起始值。:通常是設(shè)定起始值。表達(dá)式表達(dá)式2:通常是條件判斷式,如果條件為真時,則執(zhí)行:通常是條件判斷式,如果條件為真時,則執(zhí)行動作,否則終止循環(huán)。動作,否則終止循環(huán)。所謂函數(shù)所謂函數(shù),即子程序即子程序,也就是也就是“語句的集合語句的集合”。就。就是說把經(jīng)常使用的語句群定義為函數(shù),在程序用到是說把經(jīng)常使用的語句群定義為函數(shù),在程序用到時調(diào)用,這樣就可以減少重復(fù)編寫程序的麻煩,也時調(diào)用,這樣就可以減少重復(fù)編寫程序的麻煩,也可以減少程序的長度。當(dāng)一個程序太大時,建議將可以減少程序的長度。當(dāng)一個程序太大時,建議將其中的一部分改用函數(shù)的方式比較好,因為大程序其中的一部分改用函數(shù)

9、的方式比較好,因為大程序過于繁雜容易出錯,而小程序容易調(diào)試,也易于閱過于繁雜容易出錯,而小程序容易調(diào)試,也易于閱讀和修改。讀和修改。unsigned char bdata status_byte;/定義無符號字符型定義無符號字符型 變量變量 status_byte,使其存儲,使其存儲20H到到2FH區(qū),可進行位尋址。區(qū),可進行位尋址。unsigned int bdata status_word;/ 定義無符號整型變量定義無符號整型變量 status_word,使其存儲,使其存儲20H到到2FH區(qū)區(qū)sbit start_flag=status_byte4;/將將status_byte的第的第4位賦值位賦值 給位變量給位變量sbit start_flagIf(status_word15) start_flag=0; . 8051單片機的中斷源以及中斷編號單片機的中斷源以及中斷編號.在在51系列單片機中,系列單片機中,有的單片機多達(dá)有的單片機多達(dá)32個中斷源,所以中斷編號是個中斷源,所以中斷編號是031。3)函數(shù)的命名:函數(shù)名首字母大寫,函數(shù)名若包含有兩)函數(shù)的命名:函數(shù)名首字母大寫,函數(shù)名若包含有兩個單詞,則每個單詞首字母大寫。個單詞,則每

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論