MAX232串口通信技術(shù)_第1頁
MAX232串口通信技術(shù)_第2頁
MAX232串口通信技術(shù)_第3頁
MAX232串口通信技術(shù)_第4頁
MAX232串口通信技術(shù)_第5頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、單片機(jī)實訓(xùn)(論文)說明書題 目: 基于232的串口通信技術(shù) 院 (系): 專 業(yè): 學(xué)生姓名: 學(xué) 號: 指導(dǎo)教師: 2010年12月26日摘 要此設(shè)計項目是由AT89C51單片機(jī)為控制核心基于max232的串口通信技術(shù).系統(tǒng)是由單片機(jī)系統(tǒng)、按鍵控制電路、串口通信模塊、1602液晶顯示模塊模塊組成。它能實現(xiàn)對PC機(jī)與單片機(jī)的數(shù)字與字符串的發(fā)送與接收,1602能把要發(fā)送或接收的內(nèi)容出來。關(guān)鍵詞:單片機(jī);1602液晶顯示;字符串的發(fā)送和接收AbstractTo the design was picked by at89c51 monolithic integrated circuits to co

2、ntrol the core max232 based on the serial communication technology. the system is monolithic integrated circuits systems, key control circuit, serial communication modules and lcd modules, that was composed of modules. it can achieve the pc and monolithic integrated circuits figures with a string to

3、 send and receive, was to be sent or received the. contents. Keywords:monolithic integrated circuits; lcd display; was a string to send and receive 引言串口是計算機(jī)上一種非常通用設(shè)備通信的協(xié)議。大多數(shù)計算機(jī)包含兩個RS232的串口。串口同時也是儀器儀表設(shè)備通用的通信協(xié)議;很多GPIB兼容的設(shè)備也帶有RS-232口。同時,串口通信協(xié)議也可以用于獲取遠(yuǎn)程采集設(shè)備的數(shù)據(jù)。串口通信的概念非常簡單,串口按位(bit)發(fā)送和接收字節(jié)。盡管比按字節(jié)(byte)的

4、并行通信慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時用另一根線接收數(shù)據(jù)。它很簡單并且能夠?qū)崿F(xiàn)遠(yuǎn)距離通信。比如IEEE488定義并行通行狀態(tài)時,規(guī)定設(shè)備線總常不得超過20米,并且任意兩個設(shè)備間的長度不得超過2米;而對于串口而言,長度可達(dá)1200米。典型地,串口用于ASCII碼字符的傳輸。通信使用3根線完成:(1)地線,(2)發(fā)送,(3)接收。由于串口通信是異步的,端口能夠在一根線上發(fā)送數(shù)據(jù)同時在另一根線上接收數(shù)據(jù)。其他線用于握手,但是不是必須的。串口通信最重要的參數(shù)是波特率、數(shù)據(jù)位、停止位和奇偶校驗。對于兩個進(jìn)行通行的端口,這些參數(shù)必須匹配。1 串口收發(fā)數(shù)據(jù)概述:1.1 波特率 這是一個衡量通信速

5、度的參數(shù)。它表示每秒鐘傳送的bit的特表示每秒鐘發(fā)送300個bit。當(dāng)我們提到時鐘周期時,我們就是指波特率例如如果協(xié)議需要4800波特率,那么時鐘是4800Hz。這意味著串口通信在數(shù)據(jù)線上的采樣率為4800Hz。通常 線的波特率為14400,28800和36600。波特率可以遠(yuǎn)遠(yuǎn)大于這些值,但是波特率和距離成反比。高波特率常常用于放置的很近的儀器間的通信,典型的例子就是GPIB設(shè)備的通信。1.2 數(shù)據(jù)位 準(zhǔn)的值是5、7和8位。如何設(shè)置取決于你想傳送的信息。比如,標(biāo)準(zhǔn)的ASCII碼是0127(7位)。擴(kuò)展的ASCII碼是0這是衡量通信中實際數(shù)據(jù)位的參數(shù)。當(dāng)計算機(jī)發(fā)送一個信息包,實際的數(shù)據(jù)不會是8

6、位的,標(biāo)255(8位)。如果數(shù)據(jù)使用簡單的文本(標(biāo)準(zhǔn) ASCII碼),那么每個數(shù)據(jù)包使用7位數(shù)據(jù)。每個包是指一個字節(jié),包括開始/停止位,數(shù)據(jù)位和奇偶校驗位。由于實際數(shù)據(jù)位取決于通信協(xié)議的選取,術(shù)語“包”指任何通信的情況。1.3 停止位 用于表示單個包的最后一位。典型的值為1,1.5和2位。由于數(shù)據(jù)是在傳輸線上定時的,并且每一個設(shè)備有其自己的時鐘,很可能在通信中兩臺設(shè)備間出現(xiàn)了小小的不同步。因此停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計算機(jī)校正時鐘同步的機(jī)會。適用于停止位的位數(shù)越多,不同時鐘同步的容忍程度越大,但是數(shù)據(jù)傳輸率同時也越慢。1.4 奇偶校驗位 在串口通信中一種簡單的檢錯方式。有四種檢錯

7、方式:偶、奇、高和低。當(dāng)然沒有校驗位也是可以的。對于偶和奇校驗的情況,串口會設(shè)置校驗位(數(shù)據(jù)位后面的一位),用一個值確保傳輸?shù)臄?shù)據(jù)有偶個或者奇?zhèn)€邏輯高位。例如,如果數(shù)據(jù)是011,那么對于偶校驗,校驗位為0,保證邏輯高的位數(shù)是偶數(shù)個。如果是奇校驗,校驗位位1,這樣就有3個邏輯高位。高位和低位不真正的檢查數(shù)據(jù),簡單置位邏輯高或者邏輯低校驗。這樣使得接收設(shè)備能夠知道一個位的狀態(tài),有機(jī)會判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否不同步。 RS-232(ANSI/EIA-232標(biāo)準(zhǔn))是IBM-PC及其兼容機(jī)上的串行連接標(biāo)準(zhǔn)??捎糜谠S多用途,比如連接鼠標(biāo)、打印機(jī)或者M(jìn)odem,同時也可以接工業(yè)儀器

8、儀表。用于驅(qū)動和連線的改進(jìn),實際應(yīng)用中RS-232的傳輸長度或者速度常常超過標(biāo)準(zhǔn)的值。RS-232只限于PC串口和設(shè)備間點對點的通信。RS-232串口通信最遠(yuǎn)距離是50英尺。2 系統(tǒng)硬件概述該作品由5大部分組成,分別是單片機(jī)系統(tǒng)、按鍵控制電路、LM298步進(jìn)電機(jī)驅(qū)動電路模塊、數(shù)碼管顯示速度模塊與步進(jìn)電機(jī)。該系統(tǒng)是以單片機(jī)AT89S52為核心來完成的,在硬件電路中采用P0和P2口作為數(shù)碼管的驅(qū)動接口。單片機(jī)的八個輸出端P1口同時又用來控制LM298驅(qū)動芯片。2.1 主控系統(tǒng)F高頻濾波電容。第18、19腳之間接上一個12MHz的晶振為單片機(jī)提供時鐘信號。2.2 AT89S52單片機(jī)簡介VCC:電源

9、電壓GND:地此芯片是一種高性能低功耗的采用CMOS工藝制造的8位微控制器,它提供下列標(biāo)準(zhǔn)特征:8K字節(jié)的程序存儲器,256字節(jié)的RAM,32條I/O線,2個16位定時器/計數(shù)器,一個5中斷源兩個優(yōu)先級的中斷結(jié)構(gòu),一個雙工的串行口,片上震蕩器和時鐘電路。P0口:P0口是一組8位漏極開路型雙向I/O口,作為輸出口用時,每個引腳能驅(qū)動8個TTL邏輯門電路。當(dāng)對0端口寫入1時,可以作為高阻抗輸入端使用。當(dāng)P0口訪問外部程序存儲器或數(shù)據(jù)存儲器時,它還可設(shè)定成地址數(shù)據(jù)總線復(fù)用的形式。在這種模式下,P0口具有內(nèi)部上拉電阻。P1口:P1口是一帶有內(nèi)部上拉電阻的8位雙向I/O口。P1口的輸出緩沖能接受或輸出4

10、個TTL邏輯門電路。當(dāng)對P1口寫1時,它們被內(nèi)部的上拉電阻拉升為高電平,此時可以作為輸入端使用。當(dāng)作為輸入端使用時,P1口因為內(nèi)部存在上拉電阻,所以當(dāng)外部被拉低時會輸出一個低電流(IIL)。P2口:P2是一帶有內(nèi)部上拉電阻的8位雙向的I/O端口。P2口的輸出緩沖能驅(qū)動4個TTL邏輯門電路。當(dāng)向P2口寫1時,通過內(nèi)部上拉電阻把端口拉到高電平,此時可以用作輸入口。作為輸入口,因為內(nèi)部存在上拉電阻,某個引腳被外部信號拉低時會輸出電流(IIL)。P2口在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如MOVXDPTR)時,P2口送出高8位地址數(shù)據(jù)。在這種情況下,P2口使用強(qiáng)大的內(nèi)部上拉電阻功能當(dāng)輸

11、出1時。P3口:P3是一帶有內(nèi)部上拉電阻的8位雙向的I/O端口。P3口的輸出緩沖能驅(qū)動4個TTL邏輯門電路。當(dāng)向P3口寫1時,通過內(nèi)部上拉電阻把端口拉到高電平,此時可以用作輸入口。P3口同時具有多種特殊功能,具體如下表1所示:端口引腳第二功能RXD(串行輸入口)TXD(串行輸出口)(外部中斷0)(外部中斷1)T0(定時器0)T1(定時器1)(外部數(shù)據(jù)存儲器寫選通)(外部數(shù)據(jù)存儲器都選通)3 各部分功能介紹3.1 51單片機(jī)原理圖這是51單片機(jī)的原理圖,其中有4個8位的I/O口,分別是P0,P1,P2,P3。還有外接晶振的引腳ATAL1,ATAL2,,復(fù)位管腳RST,地址鎖存管腳AEL/PRNG

12、,。程序存儲器允許輸出管腳PSEN。外部訪問程序存儲器管腳,EA/VPP。P3.0,P3.1(RXD,TXD)是串口的輸入,輸出端。 3.2 單片機(jī)下載口的原理圖1,7,9 腳 接單片機(jī)的P15,P17,P16腳。5腳接單片機(jī)的REST1腳。2腳接+5伏電源,4,6,7,8腳接地。下載口可以和下載線連接起到提供+5伏電壓的作用,還可以為PC機(jī)把程序下載到單片機(jī)提供橋梁。 單片機(jī)外接晶振的電路圖X1,X2接的是單片機(jī)的XTAL1,XTAL2管腳,穩(wěn)定的為單片機(jī)提供穩(wěn)定的震蕩周期。這里電阻選用10k,電容選用10NF,單片機(jī)是高電平復(fù)位。 led燈原理圖正端接上拉電阻,負(fù)端接依次單片機(jī)的P2口,l

13、ed燈是低電平點亮,高電平滅,這里用led是為了測試單片機(jī)工作是否正常。3.6 max232,與串口的連接圖TXD,RXD分別是單片機(jī)的串口的發(fā)送端與接收端,與232的T2IN,R2OUT相連.這是max232的一些電氣特性: max232的封裝管腳圖:3.8 1602液晶顯示模塊從左到右1到16的管腳依次是VSS電源地,VDD電源正,V00背光地,RS輸入數(shù)據(jù)或指令,1數(shù)據(jù),0指令。R/W讀、寫操作選擇1:讀;0:寫。E,輸入使能信號,1有效。DB0DB7,數(shù)據(jù)輸入端,LEDA,LEDK分別是背光正,背光負(fù),詳細(xì)情況請看下表。 接口引腳功能引腳號符號狀態(tài)功 能1Vss電源地2Vdd+5V邏輯

14、電源3V0液晶驅(qū)動電源4RS輸入寄存器選擇1:數(shù)據(jù);0:指令5R/W輸入讀、寫操作選擇1:讀;0:寫6E輸入使能信號7DB0三態(tài)數(shù)據(jù)總線(LSB)8DB1三態(tài)數(shù)據(jù)總線9DB2三態(tài)數(shù)據(jù)總線10DB3三態(tài)數(shù)據(jù)總線11DB4三態(tài)數(shù)據(jù)總線12DB5三態(tài)數(shù)據(jù)總線13DB6三態(tài)數(shù)據(jù)總線14DB7三態(tài)數(shù)據(jù)總線(MSB)15LEDA輸入背光+5V16LEDK輸入背光地4 程序流程4.1程序模塊流程圖單片機(jī)接收和發(fā)送的數(shù)據(jù)1602顯示程序單片機(jī)發(fā)送數(shù)據(jù)PC機(jī)發(fā)送數(shù)據(jù)PC機(jī)的接收和發(fā)送圖1-8 程序模塊流程圖4.2 1602的顯示函數(shù)部分寫命令函數(shù)2寫數(shù)據(jù)函數(shù)3清屏函數(shù)4顯示字符函數(shù)5顯示字符串函數(shù)。具體程序如下

15、:vWriteCMD(uchar cmd) / 寫入指令數(shù)據(jù)到LCD delay(4);rs = 0;rw = 0;ep = 0;_nop_();_nop_();P0 = cmd;_nop_();_nop_();ep = 1;delay(4);ep = 0;void vWriteData (uchar dat) /寫入字符顯示數(shù)據(jù)到LCDdelay(4);rs = 1;rw = 0;ep = 0;P0 = dat;_nop_();_nop_();ep = 1;delay(4);ep = 0;lcd_init() delay(2); /LCD初始化設(shè)定vWriteCMD(0x38);delay(

16、2);vWriteCMD(0x38);delay(2);vWriteCMD(0x38);/設(shè)置兩行5x7點陣delay(2); vWriteCMD(0x06);/讀寫操作畫面不動,ac減一delay(2);vWriteCMD(0x08);/關(guān)閉顯示delay(2);vWriteCMD(0x01);/清除LCD的顯示內(nèi)容delay(2);vWriteCMD(0x0c);/開顯示開關(guān)delay(2);void vShowOneChar(unsigned char ucChar)/顯示一個字符串switch(ucChar)case : vWriteData(0x20);break;case !: v

17、WriteData(0x21);break;case : vWriteData(0x22);break;case #: vWriteData(0x23);break;case $: vWriteData(0x24);break;case %: vWriteData(0x25);break;case &: vWriteData(0x26);break;case : vWriteData(0x27);break;case (: vWriteData(0x28);break;case ): vWriteData(0x29);break;case *: vWriteData(0x20);break;c

18、ase +: vWriteData(0x2A);break;case -: vWriteData(0x2D);break;case /: vWriteData(0x2F);break;case =: vWriteData(0x3D);break;case =10) temp=num2%10; bufi=temp+0x30; i-; num2=num2/10; bufi=num2+0x30; for(;i=5;i+) out_put(bufi); out_put(0x0a);void send_message() /發(fā)送數(shù)字和字符串函數(shù) put_char1(str1); send_num(201

19、0); put_char1(str2); send_num(12); put_char1(str3); send_num(30); out_put(0x0a); vWriteCMD(0x83); vShowChar1line(send1); vWriteCMD(0xc3); vShowChar1line(year1); void input() /接收數(shù)據(jù)函數(shù) vWriteCMD(0x80); vShowChar1line(recieve1);for(num3=0;num3+) while(RI=0); data1num3=SBUF; RI=0; if(data1num3=0) break;

20、void recieve_message() for(num3=0;num3+) vWriteCMD(0xC1+num3); if(data1num3=0) break; vShowOneChar(data1num3); 5 總結(jié)經(jīng)過三個星期的努力,終于完成了串口數(shù)據(jù)的收發(fā),達(dá)到了基本要求,完成了數(shù)據(jù)字符串傳輸,并能用1602液晶顯示要收發(fā)的數(shù)據(jù)。是一件較為成功的作品,而且在實現(xiàn)題目要求的基礎(chǔ)上還創(chuàng)新了單步調(diào)試處理部分。三個星期下來,付出了很大的努力,明白了很多東西,在制作過程中,遇到了很多問題,選了幾種方案。在此,感謝在制作過程中幫過我們的老師和、學(xué)長、同學(xué),感謝他們的幫助。經(jīng)過了這次實訓(xùn),

21、更加激起了自己對電子方面的興趣,也希望本作品能取得一個不錯的成績。單片機(jī)是一種非常傳統(tǒng)的智能控制器件,無論是智能家電還是消費類產(chǎn)品都有它的身影。由于計算技術(shù)的發(fā)展及自動化水平的提高,串口通信在現(xiàn)代科學(xué),究與制造工作,取得了很大的成績。串口通信的應(yīng)用已擴(kuò)大到各種系統(tǒng)中,對有關(guān)部門的發(fā)展有著很大的促進(jìn)作用。謝 辭走的最快的總是時間,來不及感嘆,大學(xué)生活已近尾聲,3年多的努力與付出, 本論文設(shè)計在符強(qiáng)老師的悉心指導(dǎo)和嚴(yán)格要求下業(yè)已完成,從課題選擇到具體的寫作過 程,創(chuàng)造性的建議, 符強(qiáng)老師一絲不茍的作風(fēng), 嚴(yán) 謹(jǐn)求實的態(tài)度下完成的沒有這樣的幫助和關(guān)懷和熏陶, 我不會這么順利的完成畢業(yè)設(shè)實訓(xùn)。在此向符

22、強(qiáng),王守華老師表示深深的感謝和崇高的敬意! 在臨近畢業(yè)之際, 我還要借此機(jī)會向在這3年中給予我諸多教誨和幫助的各位老師表示由衷 的謝意,感謝他們3年來的辛勤栽培。不積跬步何以至千里,各位任課老師認(rèn)真負(fù)責(zé),在他 們的悉心幫助和支持下,我能夠很好的掌握和運用專業(yè)知識,并在設(shè)計中得以體現(xiàn),順利完 成實訓(xùn)。 同時,在論文寫作過程中,我還參考了有關(guān)的書籍和論文,在這里一并向有關(guān)的作者表示謝 意。我還要感謝同組的各位同學(xué)以及我的各位室友,在畢業(yè)設(shè)計的這段時間里,你們 給了我很多的啟發(fā),提出了很多寶貴的意見,對于你們幫助和支持,在此我表示 深深地感謝!其次感謝的是在完成實訓(xùn)設(shè)計的過程中,能耐心、誠心地與我一

23、起討論、研究解決的難題的同窗好友們。感謝學(xué)校的培育與給我們提供一個好平臺,讓我們在此平臺上求知、探索、鉆究。參考文獻(xiàn)1 王賢勇單片機(jī)原理及接口技術(shù)應(yīng)用教程,-5版.-北京:清華大學(xué)出版社,2007.2 譚浩強(qiáng)c語言程序設(shè)計,-3版.-北京:清華大學(xué)出版社,2007.3 汪德彪MCS-51單片機(jī)原理及接口技術(shù),-5版.-北京:電子工業(yè)出版社,2007.4 吳黎明單片機(jī)原理及應(yīng)用技術(shù),-1版.-北京:科學(xué)出版社,2005.5 李光才 樓然笛單片機(jī)課程設(shè)計實例指導(dǎo),北京:北京航空航天大學(xué)出版社,2004.6.附 錄附錄1:電路原理圖附錄2:pcb布線圖附錄3:串口程序#include #includ

24、e #define uchar unsigned charsbit rs=P10;sbit rw=P11;sbit ep=P12;sbit key0=P33;sbit key1=P32;/自定義字符年月日unsigned char data115=0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01,0x01;unsigned char buf6=0x00,0x00,0x00,0x00,0x00,0x00;unsigned char send113=send-message:;unsigned char re

25、cieve116=receive-message:;unsigned char year110=2010.12.30;unsigned char num5;unsigned char *str1=year:;unsigned char *str2=month:;unsigned char *str3=day:;unsigned char num3=0;/ 延時子程序delay(uchar ms)uchar i;while(ms-)for(i = 0; i: vWriteData(0x27);break;case (: vWriteData(0x28);break;case ): vWriteData(0x29);break;case *: vWriteData(0x20);break;case +: vWriteData(0x2A);break;case -: vWriteData(0x2D);break;case /: vWriteData(0x2F);break;case =: vWriteData(0x3

溫馨提示

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

最新文檔

評論

0/150

提交評論