




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第3章單片機(jī)并行I/O口應(yīng)用本章內(nèi)容2□并行I/O口電路結(jié)構(gòu)□認(rèn)識(shí)C語(yǔ)言□C語(yǔ)言的基本語(yǔ)句□C語(yǔ)言數(shù)據(jù)與運(yùn)算□數(shù)組的概念并行I/O口電路結(jié)構(gòu)MCS-51系列單片機(jī)共有四個(gè)8位并行I/O口,分別用P0、P1、P2、P3表示。每個(gè)I/O口既可以按位操作使用單個(gè)引腳,也可以按字節(jié)操作使用8個(gè)引腳。3除了I/O功能以外,在進(jìn)行單片機(jī)系統(tǒng)擴(kuò)展時(shí),P0口是作為單片機(jī)系統(tǒng)的地址/數(shù)據(jù)線使用的,一般稱為地址/數(shù)據(jù)分時(shí)復(fù)用引腳。4P0口的結(jié)構(gòu)□P1口是準(zhǔn)雙向口,只能作為通用I/O口使用?!鮌1口作為輸出口使用時(shí),無(wú)需再外接上拉電阻。□P1口作為輸入口使用時(shí),應(yīng)區(qū)分讀引腳和讀端口。讀引腳時(shí),必須先向電路中的鎖存器寫(xiě)入“1”,使輸出級(jí)的FET截止。5P1口的結(jié)構(gòu)□P2口是準(zhǔn)雙向口,在實(shí)際應(yīng)用中,可以用于為系統(tǒng)提供高8位地址,也能作為通用I/O口使用?!鮌2口作為通用I/O口的輸出口使用時(shí),與P1口一樣無(wú)需再外接上拉電阻?!鮌2口作為通用I/O口的輸入口使用時(shí),應(yīng)區(qū)分讀引腳和讀端口。讀引腳時(shí),必須先向鎖存器寫(xiě)入“1”。6P2口的結(jié)構(gòu)□P3口是準(zhǔn)雙向口,可以作為通用I/O口使用,還可以作為第二功能使用。作為第二功能使用的端口,不能同時(shí)當(dāng)作通用I/O口使用,但其他未被使用的端口仍可作為通用I/O口使用。□P3口作為通用I/O的輸出口使用時(shí),不用外接上拉電阻。7P3口的結(jié)構(gòu)認(rèn)識(shí)C語(yǔ)言C語(yǔ)言程序以函數(shù)形式組織程序結(jié)構(gòu),C程序中的函數(shù)與其他語(yǔ)言中所描述的“子程序”或“過(guò)程”的概念是一樣的。C程序基本結(jié)構(gòu)8認(rèn)識(shí)C語(yǔ)言□一個(gè)C語(yǔ)言源程序是由一個(gè)或若干個(gè)函數(shù)組成,每一個(gè)函數(shù)完成相對(duì)獨(dú)立的功能。每個(gè)C程序都必須有(且僅有)一個(gè)主函數(shù)
main(),程序的執(zhí)行總是從主函數(shù)開(kāi)始,調(diào)用其他函數(shù)后返回主函數(shù)main(),不管函數(shù)的排列順序如何,最后在主函數(shù)中結(jié)束整個(gè)程序。□C語(yǔ)言程序中可以有預(yù)處理命令,預(yù)處理命令通常放在源程序的最前面?!魿語(yǔ)言程序使用“;”作為語(yǔ)句的結(jié)束符,一條語(yǔ)句可以多行書(shū)寫(xiě),也可以一行書(shū)寫(xiě)多條語(yǔ)句。9認(rèn)識(shí)C語(yǔ)言□結(jié)構(gòu)化語(yǔ)言□豐富的數(shù)據(jù)類型□便于維護(hù)管理□與匯編語(yǔ)言相比,C語(yǔ)言的優(yōu)點(diǎn)如下:不要求編程者詳細(xì)了解單片機(jī)的指令系統(tǒng),但需了解單片機(jī)的存儲(chǔ)器結(jié)構(gòu);寄存器分配、不同存儲(chǔ)器的尋址及數(shù)據(jù)類型等細(xì)節(jié)可由編譯器管理;結(jié)構(gòu)清晰,程序可讀性強(qiáng);編譯器提供了很多標(biāo)準(zhǔn)庫(kù)函數(shù),具有較強(qiáng)的數(shù)據(jù)處理能力。10C語(yǔ)言的基本語(yǔ)句□
C語(yǔ)言程序的執(zhí)行部分由語(yǔ)句組成。C語(yǔ)言提供了豐富的程序控制語(yǔ)句,按照結(jié)構(gòu)化程序設(shè)計(jì)的基本結(jié)構(gòu):順序結(jié)構(gòu)、選擇結(jié)構(gòu)和循環(huán)結(jié)構(gòu),組成各種復(fù)雜程序。這些語(yǔ)句主要包括表達(dá)式語(yǔ)句、復(fù)合語(yǔ)句、選擇語(yǔ)句和循環(huán)語(yǔ)句等。11表達(dá)式語(yǔ)句和復(fù)合語(yǔ)句□表達(dá)式語(yǔ)句是最基本的C語(yǔ)言語(yǔ)句。表達(dá)式語(yǔ)句由表達(dá)式加上分號(hào)“;”組成,其一般形式如下:表達(dá)式;執(zhí)行表達(dá)式語(yǔ)句就是計(jì)算表達(dá)式的值?!踉贑語(yǔ)言中有一個(gè)特殊的表達(dá)式語(yǔ)句,稱為空語(yǔ)句。空語(yǔ)句中只有一個(gè)分號(hào)“;”,程序執(zhí)行空語(yǔ)句時(shí)需要占用一條指令的執(zhí)行時(shí)間,但是什么也不做。在C51程序中
常常把空語(yǔ)句作為循環(huán)體,用于消耗CPU時(shí)間等待事件發(fā)生的場(chǎng)合。12表達(dá)式語(yǔ)句和復(fù)合語(yǔ)句□把多個(gè)語(yǔ)句用大括號(hào){}括起來(lái),組合在一起形成具有一定功能的模塊,這種由若干條語(yǔ)句組合而成的語(yǔ)句塊
稱為復(fù)合語(yǔ)句。在程序中應(yīng)把復(fù)合語(yǔ)句看成是單條語(yǔ)句,而不是多條語(yǔ)句?!鯊?fù)合語(yǔ)句在程序運(yùn)行時(shí),{}中的各行單語(yǔ)句是依次順序執(zhí)行的。在C語(yǔ)言的函數(shù)中,函數(shù)體就是一個(gè)復(fù)合語(yǔ)句。13C語(yǔ)言基礎(chǔ)14選擇語(yǔ)句
:if
,switch
,break
,continue.循環(huán)語(yǔ)句:for
,
while
,
do
…while。賦值運(yùn)算符算術(shù)運(yùn)算符和算術(shù)表達(dá)式關(guān)系運(yùn)算符和關(guān)系表達(dá)式邏輯運(yùn)算符和邏輯表達(dá)式分隔符為分號(hào)C語(yǔ)言數(shù)據(jù)與運(yùn)算1.賦值運(yùn)算符2.算術(shù)運(yùn)算符和算術(shù)表達(dá)式153.關(guān)系運(yùn)算符和關(guān)系表達(dá)4.邏輯運(yùn)算符和邏輯表達(dá)式邏輯運(yùn)算符及其優(yōu)先級(jí)優(yōu)先級(jí)邏輯運(yùn)算符!
(邏輯非)&&(邏輯與)||
(邏輯或)注意:邏輯運(yùn)算符與位操作運(yùn)算符的區(qū)別。16位運(yùn)算與操作17□按位與操作符:&□格式:x&y□規(guī)則:對(duì)應(yīng)位均為1時(shí)才為1,否則為0例如,i=i&0x0f;
等同于
i&=0x0f;□主要用途:取(或保留)1個(gè)數(shù)的某(些)位,其余各位置0。位運(yùn)算或操作18□按位或操作符:|□格式:x|y□規(guī)則:對(duì)應(yīng)位均為0時(shí)才為0,否則為1例如,i=i|0x0f;
等同于
i|=0x0f;□主要用途:將1個(gè)數(shù)的某(些)位置1,其余各位不變位運(yùn)算異或操作19□按位異或操作符:^□格式:x^y□規(guī)則:對(duì)應(yīng)位相同時(shí)為0,不同時(shí)為1例如,i=i^0x0f;
等同于
i^=0x0f;□主要用途:使1個(gè)數(shù)的某(些)位翻轉(zhuǎn)(即原來(lái)為1的位變?yōu)?,為0的變?yōu)?),其余各位不變。位運(yùn)算按位取反操作20□按位取反操作符:~□格式:~x□規(guī)則:各位翻轉(zhuǎn),即原來(lái)為1的位變成0,原來(lái)為0的位變成1例如,
i=~i;□主要用途:間接地構(gòu)造一個(gè)數(shù),以增強(qiáng)程序的可移植性。
左移運(yùn)算符“<<”的功能,是把“<<”左邊的操作數(shù)的各二進(jìn)制位全部左移若干位,移動(dòng)的位數(shù)由“<<”右邊的常數(shù)指定,高位丟棄,低位補(bǔ)0。例如:“a<<4”是指把a(bǔ)的各二進(jìn)制位向左移動(dòng)4位。如a=00000011B(十進(jìn)制數(shù)3),左移4位后為00110000B(十進(jìn)制數(shù)48)。
右移運(yùn)算符“>>”的功能,是把“>>”左邊的操作數(shù)的各二進(jìn)制位全部右移若干位,移動(dòng)的位數(shù)由“>>”右邊的常數(shù)指定。進(jìn)行右移運(yùn)算時(shí),如果是無(wú)符號(hào)數(shù),則總是在其左端補(bǔ)
“0”21位運(yùn)算數(shù)組的概念22數(shù)組屬于常用的數(shù)據(jù)類型,數(shù)組中的元素有固定數(shù)目和相同類型,數(shù)組元素的數(shù)據(jù)類型就是該數(shù)組的基本類型。數(shù)組:是有序數(shù)據(jù)的集合;數(shù)組中的每一個(gè)元素都屬于同一個(gè)數(shù)據(jù)類型,用一個(gè)分統(tǒng)隔符一的數(shù)組為分號(hào)名和下標(biāo)來(lái)唯一地確定數(shù)組中的元素。應(yīng)用場(chǎng)合:需要處理的數(shù)據(jù)為數(shù)量已知的若干相同類型的數(shù)據(jù)時(shí)。注意:先定義,后使用。開(kāi)始P0.0=0,點(diǎn)亮信號(hào)燈延時(shí)P0.0=1,熄滅信號(hào)燈延時(shí)結(jié)束23流水燈實(shí)驗(yàn)★
流程圖:常用延時(shí)辦法24非精確延時(shí)1、for(i=0;i<100;i++);2、i=100;while(i--);精確延時(shí)辦法1、利用庫(kù)函數(shù)_nop_()(一個(gè)機(jī)器周期);(需要include<intrins.h>)2、利用定時(shí)器進(jìn)行定時(shí)(后邊的課程進(jìn)行介紹)動(dòng)態(tài)掃描原理:25LED的閃爍間隔說(shuō)明:50MS以上可識(shí)別亮滅,10MS以下就只能看到常亮了!變量類型關(guān)鍵字所占字節(jié)取值范圍unsigned
char10~255“00000000”到”11111111”unsigned
int20~65535“00000000
00000000”到“11111111
11111111”依照國(guó)際慣例,我們可以用uint8 uint16等縮寫(xiě)來(lái)替代,只需要用typedef語(yǔ)句可以完成:uint8;uint16;P70表3.6typedef
unsigned
chartypedef
unsigned
int26流水燈實(shí)驗(yàn)278個(gè)LED發(fā)光二極管,分別對(duì)應(yīng)單片機(jī)IO口的P0.0到P0.7口,8個(gè)單片機(jī)IO口組成一個(gè)字節(jié),在程序編寫(xiě)過(guò)程中,可以直接用P0來(lái)進(jìn)行操作。C語(yǔ)言的8位二進(jìn)制數(shù)代表了8個(gè)IO口P0
=
0xfe;P0.7
P0.6
P0.5
P0.4
P0.3
P0.2
P0.1
P0.01
1
1
1
1
1
1
0C語(yǔ)言運(yùn)算符28左移<<X<<2右移>>
X>>2左移,最低位填0補(bǔ)充;右移,最高位填0補(bǔ)充0xf0按位取反符號(hào)~取反后1變成0,0變成10x0F取反后成為0xF0,即00001111->11110000數(shù)碼管29數(shù)碼管真值表30根據(jù)單片機(jī)連接電路,可以計(jì)算出數(shù)碼管的真值表:P0.7
P0.6
P0.5
P0.4
P0.3
P0.2
P0.1P0.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ī)護(hù)理學(xué)(第5版)課件 第六章 辨證
- 制度完善方案
- 安全文明施工措施費(fèi)規(guī)定
- 區(qū)塊鏈金融交易系統(tǒng)安全性評(píng)估報(bào)告
- 安全施工措施及安全保障體系
- 項(xiàng)目可行性研究報(bào)告書(shū)范文
- 零售快消品行業(yè)庫(kù)存管理優(yōu)化方案
- 電商物流配送無(wú)人機(jī)項(xiàng)目可行性報(bào)告
- 三農(nóng)村林業(yè)資源保護(hù)與管理方案
- 縣域農(nóng)村污水治理可行性研究報(bào)告
- GCP原則及相關(guān)法律法規(guī)課件
- 厚樸種苗質(zhì)量分級(jí)DB50-T 1259-2022
- 我的家鄉(xiāng)新疆-我愛(ài)你課件
- 液化天然氣(LNG)相關(guān)的知識(shí)培訓(xùn)
- 施工升降機(jī)安全管理培訓(xùn)課件
- 2017華東六省一市優(yōu)質(zhì)課課件連乘問(wèn)題11月29日
- 部編版(統(tǒng)編)一年級(jí)語(yǔ)文下冊(cè)每課練習(xí)題(全冊(cè)全套)
- DB62∕T 4134-2020 高速公路服務(wù)區(qū)設(shè)計(jì)規(guī)范
- 《影視鑒賞(第二版)》課件2-0故事片引子
- 青島版科學(xué)一年級(jí)下冊(cè)《塑料》教學(xué)設(shè)計(jì)
- 專利文件撰寫(xiě)殷紅梅課件
評(píng)論
0/150
提交評(píng)論