版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)一 發(fā)光二極管流水燈實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?.通過AT89C51單片機(jī)控制8個(gè)發(fā)光二極管,八個(gè)發(fā)光二極管分別接在單片機(jī)的P0.0P0.7接口上,輸出“0”時(shí),發(fā)光二極管亮。開始時(shí)P0.0P0.1.P0.7,實(shí)現(xiàn)亮點(diǎn)以1HZ頻率循環(huán)移動(dòng)。2.用PROTEUS 設(shè)計(jì),仿真以AT89C51為核心的發(fā)光二極管流水燈實(shí)驗(yàn)裝置。3.掌握發(fā)光二極管的控制方法。二、PROTEUS電路設(shè)計(jì):三、程序部分#includesbit control = P37;void delay(int z)int x,y;for(x=z;x0;x-)for(y=110;y0;y-);void main()int i,tmp;co
2、ntrol = 0;P0 = 0xef;delay(1000);for(i=1;i1)+ 0x80;delay(1000);實(shí)驗(yàn)二 開關(guān)控制LED數(shù)碼管實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?.通過AT89C51讀入4位開關(guān)K1、K2、K3、K4的輸入狀態(tài),并按照二進(jìn)制編碼關(guān)系0-F輸出到數(shù)碼管顯示。(如K4K3K2K1全部按下,則顯示F;若只有K2按下,則顯示2。)2.掌握LED數(shù)碼管的靜態(tài)顯示。3.掌握I/O口的控制方法。二、PROTEUS電路設(shè)計(jì):三、程序部分#includeunsigned char table=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x
3、90,0x88,0x83,0xC6,0xA1,0x86,0x8E,;unsigned char KEY;void main()while(1)KEY = P2;switch(KEY)case 0xff:P0 = table0;break;case 0xfe:P0 = table1;break;case 0xfd:P0 = table2;break;case 0xfc:P0 = table3;break;case 0xfb:P0 = table4;break;case 0xfa:P0 = table5;break;case 0xf9:P0 = table6;break;case 0xf8:P0
4、= table7;break;case 0xf7:P0 = table8;break;case 0xf6:P0 = table9;break;case 0xf5:P0 = table10;break;case 0xf4:P0 = table11;break;case 0xf3:P0 = table12;break;case 0xf2:P0 = table13;break;case 0xf1:P0 = table14;break;case 0xf0:P0 = table15;break;default :break;實(shí)驗(yàn)三 外中斷優(yōu)先級(jí)實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?.理解單片機(jī)中斷優(yōu)先級(jí)和優(yōu)先權(quán)。2.用P
5、ROTEUS 設(shè)計(jì),仿真基于AT89C51單片機(jī)的中斷優(yōu)先級(jí)實(shí)驗(yàn)。3.掌握中斷編程方法。單片機(jī)主程序控制P0口數(shù)碼管循環(huán)顯示08;外中斷0、外中斷1發(fā)生時(shí)分別在P2口、P1口依次顯示08。通過實(shí)驗(yàn)可演示高優(yōu)先級(jí)可中斷低優(yōu)先級(jí),但低優(yōu)先級(jí)的中斷請(qǐng)求不能中斷高優(yōu)先級(jí)。二、PROTEUS電路設(shè)計(jì):三、程序部分#includeunsigned char code table=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80;/ 共陽數(shù)碼管的段碼void delay(int z) /延時(shí)子程序,大約1msint x,y;for(x=110;x0;x-)for(y=
6、z;y0;y-);int i0=0,i1=0;/ 用于中斷0,1顯示數(shù)碼管的變量void main()int i;EX0 = 1;/開外部中斷0EX1 = 1;/開外部中斷1IT0 = 1;IT1 = 1;PX0 = 1;PX1 = 0;EA = 1;/開總中斷while(1)for(i=0;i9;i+)/P0 循環(huán)顯示08P0 = tablei;delay(200);void int0()interrupt 0 / 外部中斷0優(yōu)先級(jí)高于外部中斷1 ,中斷號(hào)為 0for(i0=0;i09;i0+) /顯示08 P2 = tablei0;delay(200); void int1()interr
7、upt 2 /外部中斷1,中斷號(hào)為2for(i1=0;i19;i1+) /顯示08 P1 = tablei1;delay(200);實(shí)驗(yàn)四 60S倒計(jì)時(shí)實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?.通過AT89C51的定時(shí)器實(shí)現(xiàn)60S倒計(jì)時(shí),顯示采用兩位數(shù)碼管動(dòng)態(tài)顯示。2.用PROTEUS 設(shè)計(jì),仿真基于AT89C51單片機(jī)的60S倒計(jì)時(shí)實(shí)驗(yàn)。二、PROTEUS電路設(shè)計(jì):三、程序部分#include sbit GE = P21; sbit SHI = P20; int count = 0,number = 60; unsigned char code table=0xC0,0xF9,0xA4,0xB0,0x99,0x
8、92,0x82,0xF8, 0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E; void delay(int z); void display(); void main() EA = 1; ET0 = 1; TMOD = 0X01; TH0 = (65536-50000)/256; TL0 = (65536-50000)%256; TR0 = 1; while(1) display(); void delay(int z) int x,y; for(x=110;x0;x-) for(y=z;y0;y-); void display() SHI = 0; GE =
9、1;P1 = tablenumber%10;delay(10);GE = 0;SHI = 1;P1 = tablenumber/10;delay(10); void time_count() interrupt 1 TH0 = (65536-50000)/256; TL0 = (65536-50000)%256; count+; if(count = 20) count = 0; number-;if(number 0)number = 59; 實(shí)驗(yàn)五 矩陣式鍵盤的設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康模?.掌握鍵盤設(shè)計(jì)中按鍵識(shí)別的原則。2.用PROTEUS 設(shè)計(jì)一個(gè)常規(guī)44的矩陣鍵盤。3.鍵盤編碼規(guī)則自己定義,分
10、別對(duì)應(yīng)數(shù)字鍵0-9、A-F,按下對(duì)應(yīng)的按鍵顯示在數(shù)碼管上顯示對(duì)應(yīng)的數(shù)據(jù)。二、PROTEUS電路設(shè)計(jì):三、程序部分#includesbit show_1 = P10;sbit show_2 = P11;sbit show_3 = P12;sbit show_4 = P13;unsigned char j,k,temp,key;unsigned char code table=0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E,;void delay(unsigned char i);voi
11、d display(unsigned char num);void key_scan();void main() while(1) key_scan(); display(key); void delay(unsigned char i) for(j=i;j0;j-) for(k=110;k0;k-);void display(unsigned char num) P0=tablenum; show_4 = 0;void key_scan()P2=0xef; temp=P2; temp=temp&0x0f; if(temp!=0x0f) delay(10); if(temp!=0x0f) te
12、mp=P2; switch(temp) case 0xe7: key=0; break; case 0xeb: key=1; break; case 0xed: key=2; break; case 0xee: key=3; break; while(temp!=0x0f) temp=P2; temp=temp&0x0f; display(key); P2=0xdf; temp=P2; temp=temp&0x0f; if(temp!=0x0f) delay(10); if(temp!=0x0f) temp=P2; switch(temp) case 0xd7: key=4; break; c
13、ase 0xdb: key=5; break; case 0xdd: key=6; break; case 0xde: key=7; break; while(temp!=0x0f) temp=P2; temp=temp&0x0f; display(key); P2=0xbf; temp=P2; temp=temp&0x0f; if(temp!=0x0f) delay(10); if(temp!=0x0f) temp=P2; switch(temp) case 0xb7: key=8; break; case 0xbb: key=9; break; case 0xbd: key=10; bre
14、ak; case 0xbe: key=11; break; while(temp!=0x0f) temp=P2; temp=temp&0x0f; display(key); P2=0x7f; temp=P2; temp=temp&0x0f; if(temp!=0x0f) delay(10); if(temp!=0x0f) temp=P2; switch(temp) case 0x77: key=12; break; case 0x7b: key=13; break; case 0x7d: key=14; break; case 0x7e: key=15; break; while(temp!=
15、0x0f) temp=P2; temp=temp&0x0f; display(key); 實(shí)驗(yàn)六 AD轉(zhuǎn)換程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康模?.掌握轉(zhuǎn)換器ADC0809的使用。2.用PROTEUS 設(shè)計(jì),仿真基于AT89C51單片機(jī)的A/D轉(zhuǎn)換實(shí)驗(yàn)。3.通過改變電位器的值改變模擬量的輸入,經(jīng)轉(zhuǎn)換為數(shù)字量在LED上顯示,比對(duì)模擬量和數(shù)字量的關(guān)系。二、PROTEUS電路設(shè)計(jì):三、程序部分#includesbit OE = P31;sbit START = P33;sbit NUM_1 = P34;sbit NUM_2 = P35;sbit NUM_3 = P36;sbit NUM_4 = P37;sbit d
16、p = P17;unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d, 0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71;unsigned int date;void show();void delay(int z)int x,y;for(x=z;x0;x-)for(y=110;y0;y-); void main()EX0 = 1;IT0 = 1;EA = 1; START = 0;START = 1;START = 0;while(1);void over() interrupt 0OE
17、 = 1;date = P0;OE = 0;show();START = 0;START = 1;START = 0;void show()NUM_3 = 1;NUM_2 = 1;P1=tabledate/51;dp = 1;NUM_1 = 0;delay(5);NUM_1 = 1;P1=tabledate%51*100/51/10;NUM_2 = 0;delay(5);NUM_2 = 1;P1=tabledate%51*100/51%10;NUM_3 = 0;delay(5);實(shí)驗(yàn)七 雙機(jī)通信實(shí)驗(yàn)一、實(shí)驗(yàn)?zāi)康模?.掌握單片機(jī)串口通信程序的設(shè)計(jì)。2.了接RS232接口通信的特點(diǎn)。3.雙機(jī)通信:分別把接收到的對(duì)方通過邏輯開關(guān)輸入的信息在本地?cái)?shù)碼管上顯示,如下圖甲機(jī)的邏輯開關(guān)數(shù)據(jù)為81H,乙機(jī)通過串口接收該數(shù)據(jù)并數(shù)碼關(guān)管顯示,而甲機(jī)顯示乙機(jī)發(fā)送的數(shù)據(jù)88H。二、PROTEUS電路設(shè)計(jì):三、程序部分#includevoid init()TMOD = 0X2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025至2030年尼龍導(dǎo)向片項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年中國帶式砂光機(jī)數(shù)據(jù)監(jiān)測(cè)研究報(bào)告
- 2025至2030年塑料門窗四位焊機(jī)項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年UV燈管電鍍掛具項(xiàng)目投資價(jià)值分析報(bào)告
- 2025年芝士蛋糕項(xiàng)目可行性研究報(bào)告
- 2025年真皮座套項(xiàng)目可行性研究報(bào)告
- 2025年顯示管三防納米材料項(xiàng)目可行性研究報(bào)告
- 2025至2030年鋁鎖圈配件項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年色織苧麻項(xiàng)目投資價(jià)值分析報(bào)告
- 2025至2030年空調(diào)裝置服務(wù)站項(xiàng)目投資價(jià)值分析報(bào)告
- 直播帶貨助農(nóng)現(xiàn)狀及發(fā)展對(duì)策研究-以抖音直播為例(開題)
- 腰椎間盤突出疑難病例討論
- 《光伏發(fā)電工程工程量清單計(jì)價(jià)規(guī)范》
- 2023-2024學(xué)年度人教版四年級(jí)語文上冊(cè)寒假作業(yè)
- (完整版)保證藥品信息來源合法、真實(shí)、安全的管理措施、情況說明及相關(guān)證明
- 營(yíng)銷專員績(jī)效考核指標(biāo)
- 陜西麟游風(fēng)電吊裝方案專家論證版
- 供應(yīng)商審核培訓(xùn)教程
- 【盒馬鮮生生鮮類產(chǎn)品配送服務(wù)問題及優(yōu)化建議分析10000字(論文)】
- 肝硬化心衰患者的護(hù)理查房課件
- 2023年四川省樂山市中考數(shù)學(xué)試卷
評(píng)論
0/150
提交評(píng)論