千文網(wǎng)小編為你整理了多篇相關(guān)的《單片機,雙機通信實驗報告(推薦2篇)》,但愿對你工作學(xué)習(xí)有幫助,當(dāng)然你在千文網(wǎng)還可以找到更多《單片機,雙機通信實驗報告(推薦2篇)》。
第一篇:單片機實驗報告
實驗
四、中斷交通燈實驗
林立強
1000850116
一、實驗?zāi)康?/p>
1、了解MCS-51單片機的組成、中斷原理,中斷處理過程、外部中斷的中斷方式。
2、掌握中斷響應(yīng)及處理的編程方法。
二、實驗原理
MCS-51的中斷系統(tǒng)中有5個中斷源:外部中斷INTO,INT1,定時器/計數(shù)器TO、T1中斷和串口UART中斷,它們對應(yīng)不同的中斷矢量。如表:
IE是中斷允許寄存器,其中EXO,ETO,EX1,ET1,ES分別是上述5個中斷的允許控制位,EA位是中斷總允許位,每個中斷只有在相應(yīng)中斷允許且總中斷也允許的情況下,才能得到中斷響應(yīng)。80XX51的5個中斷都可以設(shè)為高低2個優(yōu)先級,IP是中斷優(yōu)先級寄存器,其中PXO,PTO,PX1,PT1,PS位分別對應(yīng)5個中斷的優(yōu)先級設(shè)置,置“1”時設(shè)為高優(yōu)先級中斷,為“0”時是低優(yōu)先級中斷。在有中斷嵌套要求時,低優(yōu)先級中斷可被高優(yōu)先級所中斷。當(dāng)同一級的中斷同時到來時,先響應(yīng)中斷矢量排在前面的中斷。
三、實驗電路
電路原理圖如下,所需元件為:AT89C51、SW-SPDT、LED-RED、LED-GREEN、LED-YELLOW、RES、TRAFFICLIGHTS
四、實驗內(nèi)容
參照實驗電路,設(shè)計交通燈控制系統(tǒng)。模擬交通信號燈控制:一般情況下正常顯示,東西-南北交替放行,各方向通行時間為30秒。有救護車或警車到達時,兩個方向交通信號燈全為紅色,以便讓急救車或警車通過,設(shè)通行時間為10秒,之后交通恢復(fù)正常。用單次脈沖模擬急救車或警車申請外部中斷。
1、在生成HEX文件后,用Proteus軟件對電路圖進行計算機仿真;
2、程序下載到單片機實驗板上驗證;(實驗板數(shù)碼管的驅(qū)動程序見附件)。
五、程序流程圖
仿真圖:
緊急情況:
源程序:
ORG 0000H
AJMP START
ORG 0023H //串口中斷地址
AJMP SBR1
START:MOV TMOD,#00100000B
//定時器方式2
MOV TL1,#0FDH //9600bps/11.0592MHz
MOV TH1,#0FDH
SETB TR1
MOV SCON,#01100000B //方式1
MOV R0,#20H
MOV R1,#40H
ACALL SOUT
SJMP $
SBR1: JNB RI,SEND
ACALL SIN
SJMP NEXT SEND: ACALL SOUT NEXT: RETI
SOUT: MOV A,@R0
MOV C,P
CPL C
MOV ACC.7,C
INC R0
MOV SBUF,A
CLR TI
RET
SIN: MOV A,SBUF
MOV C,P
CPL C
ANL A,#7FH
MOV @R1,A
INC R1
CLR RI
RET
PLAY: MOV A,R7
MOV B,#10
RET
TAB: DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H
// 0
A B C D E F
END
第二篇:單片機,雙機通信實驗報告
洛陽理工學(xué)院實驗報告
系別 計算機系 班級 B140504 學(xué)號 B14050414 姓名 史錦峰 課程名稱 單片機原理及組成 實驗日期 2016.04.28 實驗名稱 雙機通信及 PCB 設(shè)計過程 成績
實驗?zāi)康模赫莆沾锌谕ㄐ殴ぷ髟?,熟悉單片機電路的 PCB 設(shè)計過程 實驗條件:計算機、Keil uVision4、ISIS 7 Professional、實驗箱 實驗內(nèi)容:
1.掌握串行通信原理和中斷法通信軟件編程; 2.完成實驗的 C51 語言編程;
3.學(xué)習(xí)使用 ARES 軟件,完成實驗 61#機電路;
實驗電路圖
仿真運行效果
圖一:
圖二:
源程序:
#include #define uchar unsigned char void delay(unsigned int time){
unsigned int j=0;
for(;time>0;time--)
for(j=0;j
}
void main(void){
uchar counter=0;
P2=0x3f;
TMOD=0x20;
TH1=TL1=0xf4;
PCON=0;
SCON=0x50;
TR1=1;
while(1){
SBUF=counter;
while(TI==0);
TI=0;
while(RI==0);
RI=0;
if(SBUF==counter){
P2=counter;
if(++counter>15)counter=0;
delay(500);
}
} }
#include #define uchar unsigned char void main(void){ uchar receiv;P2=0x3f;TMOD=0x20;TH1=TL1=0xf4;PCON=0;SCON=0x50;TR1=1;while(1){
while(RI==1){
RI=0;
receiv=SBUF;
SBUF= receiv;
while(TI==0)
TI=0;
P2=receiv;
}
}
}
實驗總結(jié):一直不能正確顯示同步的信號,詢問老師后才知道是實驗箱燒寫程序時用了兩臺電腦,但是進行通訊時不在一臺機子上。這是一個很重要的店。