單片機(jī)原理及應(yīng)用A試驗(yàn)報(bào)告_第1頁(yè)
單片機(jī)原理及應(yīng)用A試驗(yàn)報(bào)告_第2頁(yè)
單片機(jī)原理及應(yīng)用A試驗(yàn)報(bào)告_第3頁(yè)
單片機(jī)原理及應(yīng)用A試驗(yàn)報(bào)告_第4頁(yè)
單片機(jī)原理及應(yīng)用A試驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩3頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

本文格式為Word版,下載可任意編輯——單片機(jī)原理及應(yīng)用A試驗(yàn)報(bào)告

UART串口通信

一、試驗(yàn)?zāi)康?/p>

1、學(xué)習(xí)試驗(yàn)系統(tǒng)的基本操作,了解在試驗(yàn)系統(tǒng)中進(jìn)行程序設(shè)計(jì)、仿真和調(diào)試的操作方法和步驟;

2、熟悉Proteus的虛擬儀器的使用;3、熟悉并靈活運(yùn)用單片機(jī)的UART通信功能;4、熟悉虛擬串口在仿真中的應(yīng)用;

5、實(shí)現(xiàn)單片機(jī)點(diǎn)對(duì)點(diǎn)串口通信,即單片機(jī)與單片機(jī)間的相互通信;6、實(shí)現(xiàn)單片機(jī)與計(jì)算機(jī)串口通信。

二、試驗(yàn)原理

1、如圖(1),有甲、乙兩個(gè)單片機(jī),甲單片機(jī)外接一個(gè)3×3矩陣鍵盤(pán)和8個(gè)LED;乙單片機(jī)外接一個(gè)獨(dú)立按鍵和一個(gè)數(shù)碼管;甲乙兩個(gè)單片機(jī)通過(guò)串口進(jìn)行通信(即TXD和RXD引腳)。

圖(1)單片機(jī)點(diǎn)對(duì)點(diǎn)串口通信電路仿真圖

按下甲單片機(jī)矩陣鍵盤(pán)的任意一個(gè)按鍵,將該鍵編號(hào)(編號(hào)自己設(shè)定)通過(guò)串口發(fā)送給乙單片機(jī),乙單片機(jī)在數(shù)碼管上顯示出對(duì)應(yīng)的按鍵號(hào);

按下乙單片機(jī)的外接獨(dú)立按鍵控制甲單片機(jī)的8個(gè)LED(按鍵之前8個(gè)LED燈均點(diǎn)亮),

1

具體關(guān)系為:

(1)第1次按鍵,乙單片機(jī)向甲單片機(jī)通過(guò)串口發(fā)送命令字符A,甲收到該命令,使前4個(gè)LED燈亮,后4個(gè)不亮;

(2)第2次按鍵,乙單片機(jī)向甲單片機(jī)通過(guò)串口發(fā)送命令字符B,甲收到該命令,使前4個(gè)LED不亮,后4個(gè)亮;

(3)第3次按鍵,乙單片機(jī)向甲單片機(jī)通過(guò)串口發(fā)送命令字符C,甲收到該命令,使奇數(shù)個(gè)燈亮,偶數(shù)個(gè)燈不亮;

(4)第4次按鍵,乙單片機(jī)向甲單片機(jī)通過(guò)串口發(fā)送命令字符D,甲收到該命令,使偶數(shù)個(gè)燈亮,奇數(shù)個(gè)燈不亮;

(5)第5次按鍵,乙單片機(jī)向甲單片機(jī)通過(guò)串口發(fā)送命令字符E,甲收到該命令,使所有燈都不亮。

2、單片機(jī)與計(jì)算機(jī)串口通信,如圖(2),需要一個(gè)單片機(jī)和一個(gè)COMPIM器件,連接電路時(shí),將單片機(jī)的RXD和COMPIM的RXD相連,單片機(jī)的TXD與COMPIM的TXD相連,即同名引腳相連,其它的引腳懸空。

圖(2)單片機(jī)與與計(jì)算機(jī)串口通信電路仿真圖

試驗(yàn)內(nèi)容:設(shè)置單片機(jī)的串口為工作方式1,波特率設(shè)置為9600。計(jì)算機(jī)通過(guò)串口調(diào)試

2

助手向單片機(jī)依次發(fā)送字符1、2、3、4,單片機(jī)收到每個(gè)字符后向計(jì)算機(jī)回復(fù)相應(yīng)的內(nèi)容,具體要求如表1所示:

表1單片機(jī)與計(jì)算機(jī)通信內(nèi)容

計(jì)算機(jī)發(fā)送字符1234其它字符單片機(jī)返回的內(nèi)容5120231519ZhangKangSiChuanNanChongTianChaoError!三、試驗(yàn)步驟

1、硬件仿真。先分析試驗(yàn)所需的硬件條件,然后在Proteus上連接好硬件電路,注意連接好必要的電阻等。

2、軟件編寫(xiě)。在Keil或其它的單片機(jī)編程軟件上用C語(yǔ)言編寫(xiě)出構(gòu)思好的軟件。3、將程序編譯為HEX文件,然后燒錄到仿真單片機(jī)中,進(jìn)行仿真。4、分析試驗(yàn)結(jié)果,找出問(wèn)題并解決。

四、試驗(yàn)結(jié)果及分析

1、兩個(gè)試驗(yàn)都基本實(shí)現(xiàn)了要求。

圖(3)單片機(jī)點(diǎn)對(duì)點(diǎn)串口通信試驗(yàn)結(jié)果

3

圖(4)單片機(jī)與計(jì)算機(jī)通信試驗(yàn)結(jié)果

五、體會(huì)

程序的調(diào)試依舊是最難的了,可能調(diào)試很久都不會(huì)有結(jié)果。但是,當(dāng)你休息后再來(lái)時(shí)可能就茅塞頓開(kāi)了。所以,有時(shí)做軟件實(shí)在做不出來(lái)時(shí)不妨先去放松一下,然后再來(lái)。

六、附件

程序:

單片機(jī)點(diǎn)對(duì)點(diǎn)串口通信,單片機(jī)甲:

/*******************************************************************************試驗(yàn)名:UART通信單片機(jī)甲*功能:通過(guò)矩陣鍵盤(pán)控制單片機(jī)乙的數(shù)碼管顯示相應(yīng)數(shù)字,同時(shí)接受單片機(jī)乙的信號(hào)并讓LED有不同的顯示狀態(tài)。

******************************************************************************/#includesbitP13=P1^3;//鍵盤(pán)列掃描端sbitP14=P1^4;//鍵盤(pán)列掃描端sbitP15=P1^5;//鍵盤(pán)列掃描端charSendDate;//發(fā)送的數(shù)據(jù)charLED[]={0xf0,0x0f,0x55,0x99,0xff,//LED顯示模式數(shù)組0x89,0x23,0x45,0x78,0x88};

/*******************************************************************************函數(shù)名:UART_Init

*函數(shù)功能:UART初始化函數(shù),設(shè)置UART通訊的規(guī)則并開(kāi)啟定時(shí)器。*輸入:unsignedintbaud*輸出:無(wú)

******************************************************************************/

charUART_Init(unsignedintbaud){SCON=0x50;//設(shè)置UART通信模式為模式一PCON=PCON|0x80;//設(shè)置為高速模式TMOD=(TMOD//定時(shí)器1工作模式為自動(dòng)重裝模式TH1=0x100-(11059200/12/16/baud);//配置波特率TL1=TH1;TR1=1;ES=1;//開(kāi)啟串口中斷return0;

4

}

/********************************************************************************函數(shù)名:UART_Inter

*函數(shù)功能*輸入:UART中斷函數(shù),實(shí)現(xiàn)數(shù)據(jù)的發(fā)送功能。******************************************************************************/輸出::無(wú)無(wú)

voidUART_Inter()interrupt4{inta;if(RI)//數(shù)據(jù)存儲(chǔ){//接收標(biāo)志RI=0;a=SBUF;P2=LED[a];//LED顯示}if(TI){TI=0;}

}/********************************************************************************函數(shù)名*函數(shù)功能:main

:主函數(shù),矩陣鍵盤(pán)掃描并發(fā)送信號(hào)。*輸入******************************************************************************/輸出::無(wú)無(wú)

voidmain(){charDate;//儲(chǔ)存上次發(fā)送的數(shù)據(jù)UART_Init(9600);EA=1;//設(shè)置波特率為9600P1=0xff;////開(kāi)啟總中斷設(shè)置為輸入模式while(1){Data=SendDate;P1=0xfe;//矩陣鍵盤(pán)掃描if(P13==0)SendDate=1;elseif(P14==0)SendDate=2;elseif(P15==0)SendDate=3;P1=0xfd;if(P13==0)SendDate=4;elseif(P14==0)elseif(P15==0)SendDate=5;SendDate=6;P1=0xfb;if(P13==0)SendDate=7;elseif(P14==0)SendDate=8;elseif(P15==0)if(SendDate!=Date)SendDate=9;//若有新的數(shù)據(jù)則發(fā)送}

}SBUF=

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論