單片機(jī)在波特變換器中的應(yīng)用._第1頁(yè)
單片機(jī)在波特變換器中的應(yīng)用._第2頁(yè)
單片機(jī)在波特變換器中的應(yīng)用._第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)在波特變換器中的應(yīng)用 單片機(jī)在波特變換器中的應(yīng)用 類別:?jiǎn)纹瑱C(jī) /DSP &n bsp在一些復(fù)雜的系統(tǒng)中,系統(tǒng)與分系統(tǒng)、分系統(tǒng) 與設(shè)備等之間存在數(shù)據(jù)的傳遞問(wèn)題,往往采用通信的方式來(lái)解決。由于分系 統(tǒng)、沒(méi)備等通信波特率的不同,特別是一些特殊波特率設(shè)備的存在,使得系統(tǒng) 中設(shè)備間的相互通信不易實(shí)現(xiàn)。例如,在一個(gè)系統(tǒng)中,上位機(jī)接收某一設(shè)備的 數(shù)據(jù),如圖 1所示,設(shè)備 l 和設(shè)備 2采用的是 1728 kbps 的波特率,而上位 機(jī)用VB編程,其通信波特率為115. 2 kbps、128 kbps或256 kbps,等,這 樣設(shè)備之間就不能相互通信,給設(shè)計(jì)帶來(lái)困難。為了解決上述問(wèn)題,采用雙單 片機(jī)

2、電路,設(shè)計(jì)了波特率變換器,將接收波特率為 172. 8 kbps 的數(shù)據(jù),轉(zhuǎn)換 成波特率為 115. 2 kbps 的輸出,從而使不同波特率設(shè)備之間的通信成為可 能。&n bspl波特率變換電路 波特率 變換電路如圖 2 所示。電路采用 2 片單片機(jī) 89C5l 作為電路的核心,利用單片 機(jī)的UART串行口與相關(guān)設(shè)備通信。單片機(jī) u1_L.(接波特率低的設(shè)備)與波特 率為115. 2 kbps的設(shè)備通信,單片機(jī)U2_H接波特率高的設(shè)備)與波特率為 172. 8 kbps的設(shè)備通信。Ul_l,與U2_H的通信采用并行口方式,以加快 UI。與U2_H間數(shù)據(jù)傳遞的速率。U1_L與U2_H的通

3、信可以采用中斷查詢的 方式,也可以采用握手查詢的方式進(jìn)行數(shù)據(jù)傳 遞。 電路采用2片75176接口驅(qū)動(dòng) 芯片組成一個(gè)RS-422通信接口。U3和U4組成的通信接口與115. 2 kbps的設(shè) 備相連,U5和U6組成的通信接口與172. 8 kbps的設(shè)備相連,通信接口采用 中斷技術(shù)。波特率變換器工作原理如下:U1。從串行口收到設(shè)備的數(shù)據(jù)后, 從PI 口輸出數(shù)據(jù),并通知U2_H數(shù),U2_HW到數(shù)據(jù)后向設(shè)備發(fā)出數(shù)據(jù),同時(shí) 通知UI.已取走數(shù)據(jù),為U1一 L下一次輸出數(shù)據(jù)做準(zhǔn)備。當(dāng) U2_HR串行口 收到設(shè)備的數(shù)據(jù)后,查詢 U1,是否允許接收數(shù)據(jù),如允許接收數(shù)據(jù),U2_H從 P1 口輸出數(shù)據(jù),

4、并通知 UI_L 取數(shù), UI_L 取到數(shù)據(jù)后向設(shè)備發(fā)出數(shù)據(jù),同時(shí)通 知U2_H已取走數(shù)據(jù),為U2_H下一次輸出數(shù)據(jù)做準(zhǔn)備;如 UI_L不允許接收數(shù) 據(jù),則U2_H暫緩送數(shù)。 2波特率變換器的應(yīng) 用 波特率變換器在應(yīng)用中,根據(jù)使用情況可以分為單向 傳送和雙向傳送。兩單片機(jī)之間的數(shù)據(jù)傳遞可以采用中斷方式.也可以采用查 詢方式。如采用查詢方式,編程時(shí)利用 P2 口的幾位作為查詢信號(hào),實(shí)現(xiàn)單向或 雙向傳送。&n bsp2. 1單向傳送&n bsp單向 傳送就是通信口的數(shù)據(jù)流只向一個(gè)方向,即從UI_L接收到的數(shù)據(jù),從U2_H發(fā) 送出去,或從U2_H接收到的數(shù)據(jù),從UI_L發(fā)送出去。用這

5、種方式進(jìn)行軟件編 程比較簡(jiǎn)單?,F(xiàn)以U1_L只接收外部設(shè)備數(shù)據(jù), U2_H只向外部設(shè)備發(fā)送數(shù)據(jù), 采用查詢方式為例,兩單片機(jī)之間數(shù)據(jù)傳送的流程圖如圖 3 所示。其中 UI_L 的 P2. 2作為向U2_Hf專送新數(shù)據(jù)的查詢信號(hào)(U2_H的P2. 5),P2. 2= “0”表示 有新的數(shù)據(jù),P2. 2= “ 1”表示沒(méi)有新的數(shù)據(jù);U2_HB P2. 2作為接收U1_L數(shù) 據(jù)的查詢信號(hào)(U1_L的P2. 5) , P2. 2= “O表示可以接收新的數(shù)據(jù), P2. 2= “ 1”表示不能接收新的數(shù)據(jù)。如果采用中斷方式,兩單片機(jī)的查詢信號(hào) 更簡(jiǎn)單,只要Ul_L查詢U2_H是否可以接收數(shù)據(jù)的信號(hào)就可以,U

6、2_H無(wú)需查詢 U1_L的查詢信號(hào)。 2.2雙向傳 送 雙向傳送就是通信口可以同時(shí)接收數(shù)據(jù)和發(fā)送數(shù)據(jù), 數(shù)據(jù)流是雙向的,Ul_L和U2_H既接收數(shù)據(jù)也發(fā)送數(shù)據(jù)。這種方式軟件編程比 較復(fù)雜,特別是雙向傳送數(shù)據(jù)采用查詢方式時(shí)。單片機(jī)之間的查詢信號(hào)就更加 復(fù)雜了?,F(xiàn)以雙向查詢方式為例,兩單片機(jī)之間數(shù)據(jù)傳送的流程圖如圖 4 所 示,U2_H的流程與U1_L樣。其中U1_L向U2_H傳送數(shù)據(jù)時(shí)的查詢信號(hào)與單 向傳送的定義一樣,U2_H的P2. 3作為向U1_L傳送新數(shù)據(jù)的查詢信號(hào)(U1_L的 P24), P23= “0”表示有新的數(shù)據(jù), P23= “l(fā) ”表示沒(méi)有新的數(shù)據(jù); Ul_L 的

7、P2. 3作為接收U2_H數(shù)據(jù)的查詢信號(hào)(U2_H的P2. 4),P2. 3= “O表示可 以接收新的數(shù)據(jù),P2. 3= “ 1”表示不能接收新的數(shù)據(jù)。如果采用中斷方式,查 詢信號(hào)可以減少,編程可以簡(jiǎn) 化。 2.3 應(yīng)用時(shí)的注意事 項(xiàng)&n bsp兩個(gè)單片機(jī)之間的握手方式如果采用中斷,由于U2_H 向外部發(fā)送數(shù)據(jù)比U1_L接收外部數(shù)據(jù)快,Ul_L向U2_H傳送數(shù)據(jù)時(shí),無(wú)需考慮 U2_H的狀態(tài),而U2_H向U1_L傳送數(shù)據(jù)時(shí),市 U2_H接收外部數(shù)據(jù)比U1_L向 外部發(fā)送數(shù)據(jù)快,U2_H、須查詢Ul_L的狀態(tài),即U1_L是否處于接收U2_H數(shù) 據(jù)的狀態(tài),否則,U2_H就不能向Ul_L傳送數(shù)

8、 據(jù)。 若作為RS_485通信接口使用, 只需對(duì)圖 2 中的電路稍做改動(dòng),增加對(duì) 75176芯片的讀寫控制,同時(shí)兩個(gè)單片 機(jī)中與主通信設(shè)備相連的單片機(jī)作為主機(jī),通過(guò) P2 口的一位來(lái)協(xié)調(diào)兩個(gè)單片機(jī) 是接收數(shù)據(jù)還是發(fā)送數(shù)據(jù)。&n bsp值得注意的是,該波特率變 換器在不同的應(yīng)用中會(huì)受到一定的限制,在使用時(shí)要注意下面幾點(diǎn):波特率 很高時(shí),要考慮單片機(jī)串行口能否實(shí)現(xiàn);從波特率高的向波特率低的變換 時(shí),要考慮波特率低的單片機(jī)能否實(shí)現(xiàn)不丟數(shù)據(jù)的發(fā)送;當(dāng)雙向變換時(shí),既 要考慮上述情況,還有考慮程序的大小,以及執(zhí)行時(shí)間對(duì)雙向傳送數(shù)據(jù)的影 響,計(jì)算兩個(gè)單片機(jī)能否實(shí)現(xiàn)不丟數(shù)據(jù)的變換,在時(shí)間上要留有余量;

9、在查 詢時(shí),要注意握手信號(hào)的關(guān)系,不要對(duì)同一數(shù)據(jù)產(chǎn)生重復(fù)讀取,以至于數(shù)據(jù)重 復(fù);波特率不同時(shí),單片機(jī)可以選用不同的晶振頻 率。 2.4實(shí)例及源程序 在實(shí)際使 用中若碰到如圖 1 所示的情況,需要波特率變換器將坡特率為 172.8kbps 的通 信數(shù)據(jù)轉(zhuǎn)換成波特率為115.2kbps,再向上位機(jī)傳送。實(shí)際使用的電路如圖2 所示。在該實(shí)例中,為了防止局部時(shí)刻接收數(shù)據(jù)比發(fā)送快而丟失數(shù)據(jù),再 U2_H 單片機(jī)的程序中,加入了 8個(gè)數(shù)據(jù)區(qū)作為接收數(shù)據(jù)存放緩沖 區(qū)。&n bsp3結(jié)論&n bsp通過(guò)長(zhǎng)時(shí)間的通信 實(shí)驗(yàn)和實(shí)際應(yīng)用,設(shè)計(jì)的波特率變換器方案可行,通信可靠,沒(méi)有出現(xiàn)數(shù)據(jù)丟 失的情況。在一些系統(tǒng)中,由于通信波

溫馨提示

  • 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)論