單片機-實驗三-串行口通信實驗_第1頁
單片機-實驗三-串行口通信實驗_第2頁
單片機-實驗三-串行口通信實驗_第3頁
全文預覽已結(jié)束

下載本文檔

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

文檔簡介

實驗三串行口通信實驗一、實驗目的1、掌握單片機串行口的工作原理及工作方式;2、掌握單片機串行口波特率的設置方法;3、掌握單片機串行口查詢方式程序的設計方法。二、實驗內(nèi)容及要求1、單片機的串行口經(jīng)RS-232電平變換后和PC機相連;2、單片機系統(tǒng)的晶振頻率選擇11.0592MHz,串行口設置為9600bps、無校驗位、8位數(shù)據(jù)位、1位停止位(簡記為N81)模式;3、單片機采用查詢方式收發(fā)數(shù)據(jù),將PC機送來的除回車/換行之外的數(shù)據(jù)加1后送回。三、實驗設備硬件:PC機,nKDE-51單片機實驗教學系統(tǒng);軟件:KeilC51集成開發(fā)環(huán)境,F(xiàn)lashMagic單片機程序燒寫軟件。四、實驗原理及步驟MCS-51串行口的結(jié)構(gòu)、原理及各種工作方式參閱教材相關(guān)內(nèi)容。本實驗使用串行口工作方式1,通過定時器1(T1)產(chǎn)生波特率時鐘,通過查詢串行口收發(fā)中斷標志RI和TI來判斷單片機串行口數(shù)據(jù)收發(fā)的狀態(tài)。步驟如下:1、創(chuàng)建新項目:Project—NewProject—命名、存儲—CPU類型(philipsP89C52X2)2、創(chuàng)建新程序:編譯程序—完成后保存為“.c”格式3、添加程序:Target1—SourceGroup—add……(程序)4、檢測程序:Project—BuildTarget5、選擇燒錄程序的方式(右鍵點target1--opption):output—CreatExeculate:DubugInformationBrowse、CreatHexDebug右側(cè)選擇use“KeilMonitor-51Driver”6、選擇程序執(zhí)行點:在Debug程序燒路后,在開始執(zhí)行的程序斷點上鼠標右鍵—SetProgramCounter7、Go執(zhí)行五、實驗過程1. 電路連接PC機串行口為RS-232標準的串行接口,用-15V~-5V表示1,+5V~+15V表示0,而單片機的串行口為TTL電平,+5V表示1,0V表示0,因此單片機的串行口不能直接和PC機的串行口相連,必須經(jīng)過電平變換才能和PC機通信。在實驗系統(tǒng)的CPU板上,使用SP232芯片實現(xiàn)TTL電平和RS-232電平的變換。實驗時通過串行口延長線連接PC機的串行口和CPU板上的COM1,燒寫程序時SW2處于彈起的位置,燒寫完畢后復位單片機系統(tǒng),即可進行實驗。2. 程序設計按照實驗要求,實驗參考程序如下:#include<reg51.h>#defineOSC11059200#defineBAUDRATE9600voidmain(void){ unsignedcharc;TMOD=0x20; //T1工作在方式2,作為波特率發(fā)生器SCON=0x50; //串口方式1(N81模式),REN=1(允許接收)PCON=0x80; //SMOD=1TL1=256-(OSC/12/16/BAUDRATE);TH1=256-(OSC/12/16/BAUDRATE);//設置定時器初始值TR1=1; //啟動定時器,輸出波特率時鐘RI=0;TI=0; //確保程序開始時RI/TI標志無效 while(1) //主循環(huán) { while(RI==0); //首先等待對方發(fā)送數(shù)據(jù) RI=0; //能執(zhí)行到這里,即說明RI=1,接收數(shù)據(jù)有效c=SBUF; //將接收數(shù)據(jù)從SBUF讀出至內(nèi)部變量c中 switch(c) // 使用switch()進行分支判斷{ case0x0d: case0x0a:SBUF=c; // 回車/換行原樣送回break;default:SBUF=++c; // 其余數(shù)據(jù)加1后送回break;} while(!TI); // 等待串行幀發(fā)送完畢 TI=0; // 清零TI后開始下次循環(huán)}}3. 驗證結(jié)果在Keil中建立新工程,將上述程序代碼加入工程,編譯鏈接后,將生成的HEX文件燒寫到單片機中,燒寫完畢后復位單片機系統(tǒng),并在PC機上啟動超級終端,設置PC機串行口的波特率和工作方式,使其和單片機串行口的參數(shù)相同,在超級終端上輸入字符,驗證運行結(jié)果和設計要求是否相符。圖1六、實驗體會這次實驗讓我初步了解了串行口通信的原理,掌握單片機串行口波特率的設置方法,掌握單片機串行口查詢方式程序的設計方法,在實驗中體會樂趣并掌握新知識是我一直夢寐以求的。我喜歡這樣的實驗,能

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論