資料介紹
PC機(jī)之間串口通信的實(shí)現(xiàn)
一、實(shí)驗(yàn)?zāi)康?BR>?1.熟悉微機(jī)接口實(shí)驗(yàn)裝置的結(jié)構(gòu)和使用方法。
?2.掌握通信接口芯片8251和8250的功能和使用方法。
?3.學(xué)會(huì)串行通信程序的編制方法。
二、實(shí)驗(yàn)內(nèi)容與要求
?1.基本要求
主機(jī)接收開關(guān)量輸入的數(shù)據(jù)(二進(jìn)制或十六進(jìn)制),從鍵盤上按“傳輸”鍵(可自行定義),就將該數(shù)據(jù)通過8251A傳輸出去。終端接收后在顯示器上顯示數(shù)據(jù)。具體操作說明如下:
(1)出現(xiàn)提示信息“start with R in the board!”,通過調(diào)整乒乓開關(guān)的狀態(tài),設(shè)置8位數(shù)據(jù);
(2)在小鍵盤上按“R”鍵,系統(tǒng)將此時(shí)乒乓開關(guān)的狀態(tài)讀入計(jì)算機(jī)I中,并顯示出來,同時(shí)顯示經(jīng)串行通訊后,計(jì)算機(jī)II接收到的數(shù)據(jù);
(3)完成后,系統(tǒng)提示“do you want to send another data? Y/N”,根據(jù)用戶需要,在鍵盤按下“Y”鍵,則重復(fù)步驟(1),進(jìn)行另一數(shù)據(jù)的通訊;在鍵盤按除“Y”鍵外的任意鍵,將退出本程序。
2.提高要求
?能夠進(jìn)行出錯(cuò)處理,例如采用奇偶校驗(yàn),出錯(cuò)重傳或者采用接收方回傳和發(fā)送方確認(rèn)來保證發(fā)送和接收正確。
三、設(shè)計(jì)報(bào)告要求
?1.設(shè)計(jì)目的和內(nèi)容
?2.總體設(shè)計(jì)
?3.硬件設(shè)計(jì):原理圖(接線圖)及簡要說明
?4.軟件設(shè)計(jì)框圖及程序清單
5.設(shè)計(jì)結(jié)果和體會(huì)(包括遇到的問題及解決的方法)
四、8251A通用串行輸入/輸出接口芯片
由于CPU與接口之間按并行方式傳輸,接口與外設(shè)之間按串行方式傳輸,因此,在串行接口中,必須要有“接收移位寄存器”(串→并)和“發(fā)送移位寄存器”(并→串)。能夠完成上述“串←→并”轉(zhuǎn)換功能的電路,通常稱為“通用異步收發(fā)器”(UART:Universal Asynchronous Receiver and Transmitter),典型的芯片有:Intel 8250/8251。
8251A異步工作方式:
如果8251A編程為異步方式,在需要發(fā)送字符時(shí),必須首先設(shè)置TXEN和CTS#為有效狀態(tài),TXEN(Transmitter Enable)是允許發(fā)送信號(hào),是命令寄存器中的一位;CTS#(Clear To Send)是由外設(shè)發(fā)來的對(duì)CPU請(qǐng)求發(fā)送信號(hào)的響應(yīng)信號(hào)。然后就開始發(fā)送過程。在發(fā)送時(shí),每當(dāng)CPU送往發(fā)送緩沖器一個(gè)字符,發(fā)送器自動(dòng)為這個(gè)字符加上1個(gè)起始位,并且按照編程要求加上奇/偶校驗(yàn)位以及1個(gè)、1.5個(gè)或者2個(gè)停止位。串行數(shù)據(jù)以起始位開始,接著是最低有效數(shù)據(jù)位,最高有效位的后面是奇/偶校驗(yàn)位,然后是停止位。按位發(fā)送的數(shù)據(jù)是以發(fā)送時(shí)鐘TXC的下降沿同步的,也就是說這些數(shù)據(jù)總是在發(fā)送時(shí)鐘TXC的下降沿從8251A發(fā)出。數(shù)據(jù)傳輸?shù)牟ㄌ芈嗜Q于編程時(shí)指定的波特率因子,為發(fā)送器時(shí)鐘頻率的1、1/16或1/64。當(dāng)波特率指定為16時(shí),數(shù)據(jù)傳輸?shù)牟ㄌ芈示褪前l(fā)送器時(shí)鐘頻率的1/16。CPU通過數(shù)據(jù)總線將數(shù)據(jù)送到8251A的數(shù)據(jù)輸出緩沖寄存器以后,再傳輸?shù)桨l(fā)送緩沖器,經(jīng)移位寄存器移位,將并行數(shù)據(jù)變?yōu)榇袛?shù)據(jù),從TxD端送往外部設(shè)備。
在8251A接收字符時(shí),命令寄存器的接收允許位RxE(Receiver Enable)必須為1。8251A通過檢測RxD引腳上的低電平來準(zhǔn)備接收字符,在沒有字符傳送時(shí)RxD端為高電平。8251A不斷地檢測RxD引腳,從RxD端上檢測到低電平以后,便認(rèn)為是串行數(shù)據(jù)的起始位,并且啟動(dòng)接收控制電路中的一個(gè)計(jì)數(shù)器來進(jìn)行計(jì)數(shù),計(jì)數(shù)器的頻率等于接收器時(shí)鐘頻率。計(jì)數(shù)器是作為接收器采樣定時(shí),當(dāng)計(jì)數(shù)到相當(dāng)于半個(gè)數(shù)位的傳輸時(shí)間時(shí)再次對(duì)RxD端進(jìn)行采樣,如果仍為低電平,則確認(rèn)該數(shù)位是一個(gè)有效的起始位。若傳輸一個(gè)字符需要16個(gè)時(shí)鐘,那么就是要在計(jì)數(shù)8個(gè)時(shí)鐘后采樣到低電平。之后,8251A每隔一個(gè)數(shù)位的傳輸時(shí)間對(duì)RxD端采樣一次,依次確定串行數(shù)據(jù)位的值。串行數(shù)據(jù)位順序進(jìn)入接收移位寄存器,通過校驗(yàn)并除去停止位,變成并行數(shù)據(jù)以后通過內(nèi)部數(shù)據(jù)總線送入接收緩沖器,此時(shí)發(fā)出有效狀態(tài)的RxRDY信號(hào)通知CPU,通知CPU8251A已經(jīng)收到一個(gè)有效的數(shù)據(jù)。一個(gè)字符對(duì)應(yīng)的數(shù)據(jù)可以是5~8位。如果一個(gè)字符對(duì)應(yīng)的數(shù)據(jù)不到8位,8251A會(huì)在移位轉(zhuǎn)換成并行數(shù)據(jù)的時(shí)候,自動(dòng)把他們的高位補(bǔ)成0。
五、系統(tǒng)總體設(shè)計(jì)方案
根據(jù)系統(tǒng)設(shè)計(jì)的要求,對(duì)系統(tǒng)設(shè)計(jì)的總體方案進(jìn)行論證分析如下:
1.獲取8位開關(guān)量可使用實(shí)驗(yàn)臺(tái)上的8255A可編程并行接口芯片,因?yàn)橹灰@取8位數(shù)據(jù)量,只需使用基本輸入和8位數(shù)據(jù)線,所以將8255A工作在方式0,PA0-PA7接實(shí)驗(yàn)臺(tái)上的8位開關(guān)量。
2.當(dāng)使用串口進(jìn)行數(shù)據(jù)傳送時(shí),雖然同步通信速度遠(yuǎn)遠(yuǎn)高于異步通信,可達(dá)500kbit/s,但由于其需要有一個(gè)時(shí)鐘來實(shí)現(xiàn)發(fā)送端和接收端之間的同步,硬件電路復(fù)雜,通常計(jì)算機(jī)之間的通信只采用異步通信。
3.由于8251A本身沒有時(shí)鐘,需要外部提供,所以本設(shè)計(jì)中使用實(shí)驗(yàn)臺(tái)上的8253芯片的計(jì)數(shù)器2來實(shí)現(xiàn)。
4:顯示和鍵盤輸入均使用DOS功能調(diào)用來實(shí)現(xiàn)。
設(shè)計(jì)思路框圖,如下圖所示:
六、硬件設(shè)計(jì)
硬件電路主要分為8位開關(guān)量數(shù)據(jù)獲取電路,串行通信數(shù)據(jù)發(fā)送電路,串行通信數(shù)據(jù)接收電路三個(gè)部分。
1.8位開關(guān)量數(shù)據(jù)獲取電路
該電路主要是利用8255并行接口讀取8位乒乓開關(guān)的數(shù)據(jù)。此次設(shè)計(jì)在獲取8位開關(guān)數(shù)據(jù)量時(shí)采用8255令其工作在方式0,A口輸入8位數(shù)據(jù),CS#接實(shí)驗(yàn)臺(tái)上CS1口,對(duì)應(yīng)端口為280H-283H,PA0-PA7接8個(gè)開關(guān)。
2.串行通信電路
串行通信電路
本設(shè)計(jì)中8253主要為8251充當(dāng)頻率發(fā)生器,接線如下圖所示。
- 使用51單片機(jī)實(shí)現(xiàn)PC串口通信程序和仿真免費(fèi)下載 40次下載
- 使用LabWindows實(shí)現(xiàn)多個(gè)單片機(jī)與PC進(jìn)行串口通信的工程文件和程序 17次下載
- 使用Visual Basic實(shí)現(xiàn)PC與多個(gè)單片機(jī)串口通信的資料和程序
- arm系列單片機(jī)與pc機(jī)之間的串行通信 2次下載
- 單片機(jī)_PC_串口通信 46次下載
- 單片機(jī)與PC機(jī)串口通信顯示 15次下載
- 用Labview實(shí)現(xiàn)PC與PC串口通信【集合】 107次下載
- PC機(jī)與單片機(jī)串口通信程序設(shè)計(jì).zip 0次下載
- 利用Keil C51實(shí)現(xiàn)單片機(jī)與PC機(jī)串口通信任務(wù)2 0次下載
- PC機(jī)與單片機(jī)串口通信程序設(shè)計(jì) 0次下載
- 利用Keil C51實(shí)現(xiàn)單片機(jī)與PC機(jī)串口通信任務(wù) 0次下載
- PC與PC串口通信程序設(shè)計(jì) 0次下載
- 串口通信調(diào)試(PC與PC串口通信) 0次下載
- PC機(jī)雙串口互通信程序設(shè)計(jì) 0次下載
- 用Powerbuilder8.0實(shí)現(xiàn)PC機(jī)與PLC的串口通信
- 兩個(gè)單片機(jī)之間串口通信的例程 8088次閱讀
- 基于GPS接收芯片實(shí)現(xiàn)GPS接收機(jī)和PC的數(shù)據(jù)通信設(shè)計(jì) 3332次閱讀
- 基于RS485總線實(shí)現(xiàn)單片機(jī)與PC機(jī)的遠(yuǎn)程控制設(shè)計(jì) 4648次閱讀
- 采用自由口通信模式實(shí)現(xiàn)工控PC機(jī)與主控PLC之間的通信 2732次閱讀
- 基于DSP芯片PC機(jī)之間的USB接口設(shè)計(jì) 2213次閱讀
- 如何實(shí)現(xiàn)PC機(jī)與51系列單片機(jī)的通信 6293次閱讀
- PIC單片機(jī)與PC機(jī)的通信設(shè)計(jì) 1060次閱讀
- 如何實(shí)現(xiàn)ATMEGA16單片機(jī)與PC機(jī)的通信 1498次閱讀
- 如何使用51單片機(jī)實(shí)現(xiàn)串口通信 3w次閱讀
- 單片機(jī)與PC串口通信的程序及電路圖詳解 1.5w次閱讀
- 單片機(jī)之間UART通信示意圖分享 1.6w次閱讀
- 基于VB的伺服驅(qū)動(dòng)器串口通信的實(shí)現(xiàn) 2017次閱讀
- 基于MAX232實(shí)現(xiàn)PC機(jī)與CPU通信 7706次閱讀
- RS 232串口通信在PC機(jī)與單片機(jī)通信中的應(yīng)用 6989次閱讀
- 基于AVR單片機(jī)的串口轉(zhuǎn)FSK的通信模塊設(shè)計(jì) 1762次閱讀
下載排行
本周
- 1常用電子元器件集錦
- 1.72 MB | 24490次下載 | 免費(fèi)
- 2PC2456高壓浪涌抑制器控制器數(shù)據(jù)手冊
- 3.03 MB | 12次下載 | 免費(fèi)
- 3PC2464具理想二極管的浪涌抑制控制器數(shù)據(jù)手冊
- 4.42 MB | 8次下載 | 免費(fèi)
- 4PC2466高電壓浪涌抑制器數(shù)據(jù)手冊
- 3.37 MB | 8次下載 | 免費(fèi)
- 5ssd1306單片 CMOS OLED/PLED 驅(qū)動(dòng)芯片中文手冊
- 1.66 MB | 5次下載 | 1 積分
- 6PC2596 40V 輸入 150KHz 3A 降壓型電源轉(zhuǎn)換器數(shù)據(jù)手冊
- 2.44 MB | 3次下載 | 免費(fèi)
- 7松下 rq-sx3隨身聽電路圖資料
- 2.93 MB | 2次下載 | 5 積分
- 8臺(tái)式主板DDR5內(nèi)存插槽引腳功能表資料
- 0.17 MB | 2次下載 | 5 積分
本月
- 1常用電子元器件集錦
- 1.72 MB | 24490次下載 | 免費(fèi)
- 2三相逆變主電路的原理圖和PCB資料合集免費(fèi)下載
- 27.35 MB | 111次下載 | 1 積分
- 3運(yùn)算放大器基本電路中文資料
- 1.30 MB | 16次下載 | 免費(fèi)
- 4蘋果iphone 11電路原理圖
- 4.98 MB | 12次下載 | 5 積分
- 5PC2456高壓浪涌抑制器控制器數(shù)據(jù)手冊
- 3.03 MB | 12次下載 | 免費(fèi)
- 6常用電子元器件介紹
- 3.21 MB | 11次下載 | 免費(fèi)
- 7PC2570低Iq理想二極管控制電路數(shù)據(jù)手冊
- 1.54 MB | 8次下載 | 免費(fèi)
- 8PC2557正向高壓理想二極管控制電路中文手冊
- 1.80 MB | 8次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935130次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183345次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81591次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73816次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65990次下載 | 10 積分
評(píng)論