單片機(jī)串行口與PC機(jī)通訊_第1頁
單片機(jī)串行口與PC機(jī)通訊_第2頁
單片機(jī)串行口與PC機(jī)通訊_第3頁
單片機(jī)串行口與PC機(jī)通訊_第4頁
單片機(jī)串行口與PC機(jī)通訊_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

11單片機(jī)串行口與PC機(jī)通訊目錄TOC\o"1-5"\h\z第1節(jié)引言1單片機(jī)串行口與PC機(jī)通信概述1系統(tǒng)主要功能1第2節(jié)單片機(jī)串行口與PC機(jī)通訊硬件設(shè)計(jì)2系統(tǒng)的硬件構(gòu)成2設(shè)計(jì)說明2系統(tǒng)電路圖38031單片機(jī)及其引腳說明5顯示接口8279的功能及其引腳說明5數(shù)據(jù)格式和數(shù)據(jù)的協(xié)議6第3節(jié)系統(tǒng)軟件設(shè)計(jì)7系統(tǒng)主程序框架圖7系統(tǒng)主要程序8第3節(jié)結(jié)束語14參考文獻(xiàn)15第1節(jié)引言單片機(jī)應(yīng)用中,串口通信是不可缺少的部分。如何編寫有效的串口通信程序?qū)Τ绦虻慕Y(jié)構(gòu)、可靠性都有很大的影響。串口控制程序一般分為查詢和中斷兩者方式。查詢方式適用于簡單的應(yīng)用,簡單可靠,但是缺點(diǎn)是需要占用處理器資源,在發(fā)送或者接收數(shù)據(jù)的時(shí)候不能做其它的事情,處理器利用率低。中斷方式下,在發(fā)送或者接受數(shù)據(jù)的時(shí)候處理器還可以做其它的工作,效率較高。單片機(jī)串行口與PC機(jī)通訊概述目前,計(jì)算機(jī)控制系統(tǒng)已逐步從單機(jī)控制發(fā)展成為多機(jī)控制并出現(xiàn)了以計(jì)算機(jī)技術(shù)為核心,與數(shù)據(jù)通訊技術(shù)相結(jié)合的集檢測(cè)、控制和管理為一體的計(jì)算機(jī)網(wǎng)絡(luò),即集中分布式測(cè)控系統(tǒng)。其中單片機(jī)作為從機(jī),負(fù)責(zé)現(xiàn)場控制和實(shí)時(shí)數(shù)據(jù)的采集;PC機(jī)作為主機(jī),負(fù)責(zé)對(duì)各從機(jī)發(fā)來的數(shù)據(jù)進(jìn)行分析、處理,并向各從機(jī)發(fā)布命令,以實(shí)現(xiàn)對(duì)工業(yè)現(xiàn)場的集中監(jiān)控與管理。由于主從機(jī)需不斷進(jìn)行信息交流,因此通信成為分布式測(cè)控系統(tǒng)重要而基本的功能?;驹鞵C機(jī)與單片機(jī)之間通常采用2種通信方式:并行通信和串行通信。并行通信是指將待發(fā)送數(shù)據(jù)的各位同時(shí)傳送,串行通信則將數(shù)據(jù)一位一位地按順序傳送。并行通信雖然傳輸效率高,由于所需硬件設(shè)備復(fù)雜,不適于長距離通信,所以一般只適用于要求實(shí)時(shí)性強(qiáng),傳送速率較高的控制系統(tǒng)中,實(shí)用面較窄;相比之下,串行通信簡單易實(shí)現(xiàn),傳輸距離較長,所以已被廣泛應(yīng)用于各種工控系統(tǒng)中。串行通信分為同步通信和異步通信2種方式。同步通信是指通過在每個(gè)數(shù)據(jù)塊開始時(shí)的同步字符來實(shí)現(xiàn)收/發(fā)雙方同步的一種數(shù)據(jù)傳輸方法,常用于信息量大,速度要求高的場合;異步通信則規(guī)定了標(biāo)準(zhǔn)的字符數(shù)據(jù)傳輸格式,即每一幀信息由起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位組成。由于有冗余位,所以傳送效率不高,常用于信息量不大,速度較低的場合。在計(jì)算機(jī)測(cè)控系統(tǒng)中,由于串行接口的標(biāo)準(zhǔn)化,一般采用異步串行通信方式,以提高其通用性。由于各種接口的機(jī)械和電器特性有所差異,串行通信分為近程通信和遠(yuǎn)程通信。2接口電路的設(shè)計(jì)2.1近程通信目前,PC機(jī)是利用異步通訊控制器來實(shí)現(xiàn)串行通訊的,其核心是8250通訊芯片加上一些收發(fā)邏輯電路。接口標(biāo)準(zhǔn)大多是RS232標(biāo)準(zhǔn),其通訊距離小于15m,傳輸速率小于20kb/s。RS232標(biāo)準(zhǔn)是按負(fù)邏輯定義的,他的“1”電平在一5?一15V之間,“0”電平在+5?~H15V之間。由于PC機(jī)使用的是TTL電平信號(hào),因此數(shù)據(jù)輸出時(shí)必須把TTL電平信號(hào)轉(zhuǎn)換成驅(qū)動(dòng)器MC1488和接收器MC1489,其作用除了電平轉(zhuǎn)換外,還實(shí)現(xiàn)正負(fù)邏輯電平轉(zhuǎn)換。系統(tǒng)主要功能本實(shí)驗(yàn)實(shí)現(xiàn)以下功能,將從實(shí)驗(yàn)機(jī)鍵盤上鍵入的數(shù)字,字母顯示到PC機(jī)顯示器上,將PC機(jī)鍵盤輸入的字符(0-F)顯示到實(shí)驗(yàn)機(jī)的數(shù)碼管上。第2節(jié)單片機(jī)串行口與PC機(jī)通訊硬件設(shè)計(jì)系統(tǒng)的硬件構(gòu)成利用8031單片機(jī)串行口,實(shí)現(xiàn)與PC機(jī)通訊。CS8279接8700H。模塊中的十個(gè)短路套都套在8279側(cè)。8279狀態(tài)口地址為8701H;8279數(shù)據(jù)口地址為8700H設(shè)計(jì)說明.當(dāng)用GR命令執(zhí)行程序時(shí),實(shí)驗(yàn)機(jī)內(nèi)部會(huì)將8031串行口電路切換與PC機(jī)通訊,無須連線。.程序執(zhí)行前,進(jìn)入LCA51,加載程序后,才進(jìn)入調(diào)試菜單工具中的對(duì)話窗口,然后執(zhí)行GR0,就可實(shí)行單片機(jī)串行口與PC機(jī)通信實(shí)驗(yàn)系統(tǒng)電路圖

K叟電圖1系統(tǒng)電路圖O—運(yùn)DBS;北口二D又JtdaV―K叟電圖1系統(tǒng)電路圖O—運(yùn)DBS;北口二D又JtdaV―『AjCJJCg京SWCIEIn■工營C5a251幽良而FLEET基Tg?"TutLKQJsEMri-口卬8031單片機(jī)及其引腳說明單片機(jī)有許多種類,從生產(chǎn)廠家看,有Intel、Motorola、Epson、NEC、Phlips等公司;按位數(shù)分有四位機(jī)、八位機(jī)、十六位機(jī)也就是可以同時(shí)對(duì)四位、八位或十六位二進(jìn)制碼進(jìn)行運(yùn)算;從用途上又可以分為通用和專用。Intel公司的MCS-51系列屬于8位機(jī)的系列,性能可能滿足大多數(shù)應(yīng)用的需要。它應(yīng)用廣泛、價(jià)格便宜、技術(shù)成熟,適于初學(xué)者學(xué)習(xí)。在MCS-51系列中又有許多型號(hào),包括8031、8051、8751等。其中8051的程序已經(jīng)由工廠做在單片機(jī)內(nèi)部(稱做掩膜),是為批量用戶定制的,對(duì)于我們學(xué)習(xí)不適用。8751是在芯片內(nèi)有可擦寫的程序存儲(chǔ)器,這種芯片是為做掩膜前驗(yàn)證電路用的,也用于一些有特殊要求的場所。8031內(nèi)部沒有程序存儲(chǔ)器,它的程序存儲(chǔ)器接在芯片外面,這樣恰好便于在開發(fā)過程中對(duì)程序存儲(chǔ)器進(jìn)行控制,因此選8031學(xué)習(xí)是比較適宜的。其實(shí)這幾種型號(hào)的原理完全一樣,學(xué)會(huì)8031其它型號(hào)也就掌握了戶上口i,凡1PL2aPL1dPl.J戶上口i,凡1PL2aPL1dPl.JwP1.5P1.6,乜P1.?.—P3r0以1!_由P;l.1L-|CP3.515Pl,t衛(wèi)PIJizSisVaA.LinADIAD?AD33相片rxhTXl?ad£i忖3ADDLI<T1AD10TOALJ1IT1件LH2RDADI4AD15m2RESerXIKENALEPGNDHa/vfHU312129SO3?叫#FirsPO.EPO.7P2.GP21PZT3TTT型應(yīng)r2T圖28031引腳配置8031芯片的40條引腳功能為:1、主電源引腳VCC和VSSVCC——(40腳)接+5V電壓;VSS——(20腳)接地。2、外接晶體引腳XTAL1和XTAL2XTAL1(19腳)接外部晶體的一個(gè)引腳。在單片機(jī)內(nèi)部,它是一個(gè)反相放大器的輸入端,這個(gè)放大器構(gòu)成了片內(nèi)振蕩器。當(dāng)采用外部振蕩器時(shí),對(duì)HMOS單片機(jī),此引腳應(yīng)接地;對(duì)CHMOS單片機(jī),此引腳作為驅(qū)動(dòng)端。XTAL2(18腳)接外晶體的另一端。在單片機(jī)內(nèi)部,接至上述振蕩器的反相放大器的輸出端。采用外部振蕩器時(shí),對(duì)HMOS單片機(jī),該引腳接外部振蕩器的信號(hào),即把外部振蕩器的信號(hào)直接接到內(nèi)部時(shí)鐘發(fā)生器的輸入端;對(duì)XHMOS,此引腳應(yīng)懸浮。3、控制或與其它電源復(fù)用引腳RST/VPD、ALE/PROG、PSEN和EA/VPP①RST/VPD(9腳)當(dāng)振蕩器運(yùn)行時(shí),在此腳上出現(xiàn)兩個(gè)機(jī)器周期的高電平將使單片機(jī)復(fù)位。推薦在此引腳與VSS引腳之間連接一個(gè)約8.2k的下拉電阻,與丫久引腳之間連接一個(gè)約10HF的電容,以保證可靠地復(fù)位。VCC掉電期間,此引腳可接上備用電源,以保證內(nèi)部RAM的數(shù)據(jù)不丟失。當(dāng)VCC主電源下掉到低于規(guī)定的電平,而VPD在其規(guī)定的電壓范圍(5±0.5V)內(nèi),VPD就向內(nèi)部RAM提供備用電源。②ALE/PROG(30腳):當(dāng)訪問外部存貯器時(shí),ALE(允許地址鎖存)的輸出用于鎖存地址的低位字節(jié)。即使不訪問外部存儲(chǔ)器,ALE端仍以不變的頻率周期性地出現(xiàn)正脈沖信號(hào),此頻率為振蕩器頻率的1/6。因此,它可用作對(duì)外輸出的時(shí)鐘,或用于定時(shí)目的。然而要注意的是,每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過一個(gè)ALE脈沖。ALE端可以驅(qū)動(dòng)(吸收或輸出電流)8個(gè)LS型的1丁1輸入電路。對(duì)于EPROM單片機(jī)(如8751),在EPROM編程期間,此引腳用于輸入編程脈沖(PROG)。③PSEN(29腳):此腳的輸出是外部程序存儲(chǔ)器的讀選通信號(hào)。在從外部程序存儲(chǔ)器取指令(或常數(shù))期間,每個(gè)機(jī)器周期兩次PSEN有效。但在此期間,每當(dāng)訪問外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的PSEN信號(hào)將不出現(xiàn)。PSEN同樣可以驅(qū)動(dòng)(吸收或輸出)8個(gè)LS型的TTL輸入。④EA/VPP(引腳):當(dāng)EA端保持高電平時(shí),訪問內(nèi)部程序存儲(chǔ)器,但在PC(程序計(jì)數(shù)器)值超過0FFFH(對(duì)851/8751/80C51)或1FFFH(對(duì)8052)時(shí),將自動(dòng)轉(zhuǎn)向執(zhí)行外部程序存儲(chǔ)器內(nèi)的程序。當(dāng)EA保持低電平時(shí),則只訪問外部程序存儲(chǔ)器,不管是否有內(nèi)部程序存儲(chǔ)器。對(duì)于常用的8031來說,無內(nèi)部程序存儲(chǔ)器,所以EA腳必須常接地,這樣才能只選擇外部程序存儲(chǔ)器。對(duì)于EPROM型的單片機(jī)(如8751),在EPROM編程期間,此引腳也用于施加21V的編程電源(VPP)。4、輸入/輸出(I/O)引腳P0、P1、P2、P3(共32根)①P0口(39腳至32腳):是雙向8位三態(tài)I/O口,在外接存儲(chǔ)器時(shí),與地址總線的低8位及數(shù)據(jù)總線復(fù)用,能以吸收電流的方式驅(qū)動(dòng)8個(gè)LS型的TTL負(fù)載。②P1口(1腳至8腳):是準(zhǔn)雙向8位I/O口。由于這種接口輸出沒有高阻狀態(tài),輸入也不能鎖存,故不是真正的雙向I/O口。P1口能驅(qū)動(dòng)(吸收或輸出電流)4個(gè)LS型的TTL負(fù)載。對(duì)8052、8032,P1.0引腳的第二功能為T2定時(shí)/計(jì)數(shù)器的外部輸入,P1.1引腳的第二功能為T2EX捕捉、重裝觸發(fā),即T2的外部控制端。對(duì)EPROM編程和程序驗(yàn)證時(shí),它接收低8位地址。③P2口(21腳至28腳):是準(zhǔn)雙向8位I/O口。在訪問外部存儲(chǔ)器時(shí),它可以作為擴(kuò)展電路高8位地址總線送出高8位地址。在對(duì)EPROM編程和程序驗(yàn)證期間,它接收高8位地址。P2可以驅(qū)動(dòng)(吸收或輸出電流)4個(gè)LS型的TTL負(fù)載。④P3口(10腳至17腳):是準(zhǔn)雙向8位I/O口,在MCS-51中,這8個(gè)引腳還用于專門功能,是復(fù)用雙功能口。P3能驅(qū)動(dòng)(吸收或輸出電流)4個(gè)LS型的TTL負(fù)載。作為第一功能使用時(shí),就作為普通I/O口用,功能和操作方法與P1口相同。作為第二功能使用時(shí),各引腳的定義如表所示。值得強(qiáng)調(diào)的是,P3口的每一條引腳均可獨(dú)立定義為第一功能的輸入輸出或第二功能。表F落口線的第二功能定義口蛾引腳第二功酢P3.0101串行輸入口)P3.111丁中[串行輸出口)P3.212IHTO[外部中斷口)P3.313itm陰部中斷1)P3.414ToC定口外部輸入)P3.515rC定時(shí)器1外部輸人)P3.616愧(:外修據(jù)存儲(chǔ)器寫脈沖〕P3.717郎[歹郡數(shù)據(jù)存儲(chǔ)器彘胭桿〕圖3系統(tǒng)主程序流程圖顯示接口8279的功能及其引腳說明可編程鍵盤/顯示接口8279可編程鍵盤/顯示接口8279的引腳功能8279采用單一+5V電源供電,40腳封裝。DB0?口87:雙向數(shù)據(jù)總線,用來傳送8279與CPU之間的數(shù)據(jù)和命令。CLK:時(shí)鐘輸入線,用以產(chǎn)生內(nèi)部定時(shí)的時(shí)鐘脈沖。RESET:復(fù)位輸入線,8279復(fù)位后被置為字符顯示左端輸入,二鍵閉鎖的觸點(diǎn)回彈型式,程序時(shí)鐘前置分頻器被置為31,RESET信號(hào)為高電平有效。CS:片選輸入線,低電平有效,單片機(jī)在CS端為低時(shí)可以對(duì)8279讀/寫操作。A0:緩沖器低位地址,當(dāng)A0為高電平時(shí),表示數(shù)據(jù)總線上為命令或狀態(tài),當(dāng)為低電平時(shí),表示數(shù)據(jù)總線上為命令或狀態(tài),當(dāng)為低電平時(shí),表示數(shù)據(jù)總線上為數(shù)據(jù)。RD:讀信號(hào)輸入線,低電平有效,將緩沖器讀出,數(shù)據(jù)送往外部總線。WR:寫信號(hào)輸入線,低電平有效,將緩立器讀出,將數(shù)據(jù)從外部數(shù)據(jù)總線寫入8279的緩沖器。RL2--140--VCCRL3--239--RL1CLK--338--RL0IRQ--437--CNTL/STBRL4--536--SHIFTRL5--635--SL3RL6--734--SL2RL7--833--SL1RESRT--932--SL0RD--1031--OUTB0WR--1130--OUTB1DB0--1229--OUTB2DB1--1328--OUTB3DB2--1427--OUTA0DB3--1526--OUTA1DB4--1625--OUTA2DB5--1724--OUTA3DB6--1823--BDDB7--1922--CSVSS--2021--A0IRQ:中斷請(qǐng)求輸出線,高電平有效,在鍵盤工作方式下,當(dāng)FIFO/傳感器RAM中有數(shù)據(jù)時(shí),此中斷線變?yōu)楦唠娖?,在FIFO/傳感器RAM每次讀出時(shí),中斷線就下降為低電平,若在RAM中還有信息,則此線重又變?yōu)楦唠娖?。在傳感器工作方式中,每?dāng)探測(cè)到傳感器信號(hào)變化時(shí),中斷線就變?yōu)楦唠娖健L0?SL3:掃描線,用來掃描按鍵開關(guān),傳感器陣列和顯示數(shù)字,這些可被編程或被譯碼。RL0?RL7:回送線,經(jīng)過按鍵或傳感器開關(guān)與掃描線聯(lián)接,這些回送線內(nèi)部設(shè)置有上拉電路,使之保持為高電平,只有當(dāng)一個(gè)按閉合時(shí),對(duì)應(yīng)的返回線變?yōu)榈碗娖剑粺o按鍵閉合時(shí),均保持高電平。SHIFT:換位功能,當(dāng)有開關(guān)閉合時(shí)被拉為低電平,沒有按下SHIFT開關(guān)時(shí),SHIFT輸入端保持高電平,在鍵盤掃描方式中,按鍵一閉合,按鍵位置和換位輸入狀態(tài)一起

被存貯起來。CNTL/STB:當(dāng)CNTL/STB開關(guān)閉合時(shí)將其拉到低電平,否則始終保持高電平,對(duì)于鍵盤輸入方式,此線用作控制輸入端,當(dāng)鍵被按下時(shí),按鍵位置就和控制輸入狀態(tài)一起被存貯起來,在選通輸入方式中,作選通用,把數(shù)據(jù)存入FIFORAM中。OUTA3?OUTA0及OUTB3?OUTB0:顯示輸出A口及B口,這兩個(gè)口是16X4切換的數(shù)字顯示。這兩個(gè)端口可被獨(dú)立控制,也可看成一個(gè)8位端口。8口:空格顯示,此輸出端信號(hào)用于在數(shù)字轉(zhuǎn)換時(shí)將顯示空格或者用顯示空格命令控制其顯示空格字符。VCC:+5V電源輸入線。VSS:地線輸入線。2.6數(shù)據(jù)格式和數(shù)據(jù)交換的協(xié)議Max232產(chǎn)品是由德州儀器公司(TI)推出的一款兼容RS232標(biāo)準(zhǔn)的芯片。該器件包含2驅(qū)動(dòng)器、2接收器和一個(gè)電壓發(fā)生器電路提供TIA/EIA-232-F電平。該器件符合TIA/EIA-232-F標(biāo)準(zhǔn),每一個(gè)接收器將TIA/EIA-232-F電平轉(zhuǎn)換成5-VTTL/CMOS電平。每一個(gè)發(fā)送器將TTL/CMOS電平轉(zhuǎn)換成TIA/

溫馨提示

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

評(píng)論

0/150

提交評(píng)論