日韩床上生活一级视频|能看毛片的操逼网站|色悠悠网站在线观看视频|国产免费观看A淫色免费|国产av久久久久久久|免费A级视频美女网站黄|国产毛片av日韩小黄片|热久久免费国产视频|中文字幕无码色色|成人在线视频99久久久

機(jī)電之家資源網(wǎng)
單片機(jī)首頁|單片機(jī)基礎(chǔ)|單片機(jī)應(yīng)用|單片機(jī)開發(fā)|單片機(jī)文案|軟件資料下載|音響制作|電路圖下載 |嵌入式開發(fā)
培訓(xùn)信息
贊助商
利用Intel8274多協(xié)議串行控制器實現(xiàn)基于SDLC協(xié)議的串行通訊
利用Intel8274多協(xié)議串行控制器實現(xiàn)基于SDLC協(xié)議的串行通訊
 更新時間:2008-8-16 21:10:56  點擊數(shù):24
【字體: 字體顏色

Intel 8274在使用方式上同樣可以有多種靈活的配置方式,如查詢、等待、中斷和DMA等。

3 串行通訊的硬件實現(xiàn)

由于Intel 8274是專門為了與Intel公司的微型機(jī)系統(tǒng)相匹配而設(shè)計的,因此該芯片與一些Intel公司的CPU、DMA控制器等可以做到無縫連續(xù)。這里介紹的是通過TI公司的DSP芯片TMS320F206來對Intel 8274進(jìn)行控制所組成通訊系統(tǒng)。

TMS320F206是TI公司新近推出的TMS320C2XX系列DSP,該系列DSP具有非常高的性價比,相對TMS320C2X系列來說,它的指令集可兼容,而速度提高了2~4倍,且價格降低了一半,因而在簡單的控制和通訊領(lǐng)域有著非常廣泛的應(yīng)用。

圖1是一個由TMS320F206、Intel 8274組成的基于RS-485標(biāo)準(zhǔn)和SDLC協(xié)議的串行通訊接口系統(tǒng)的具體結(jié)構(gòu)圖。該電路非常簡單。圖中由TMS320F206充當(dāng)微處理機(jī)來對Intel 8274進(jìn)行控制,而Intel 8274只使用了其中的一個接收/發(fā)送通道,并且由于采用了中斷方式,因此,它們之間只有14根連接線(其中控制線4根,數(shù)據(jù)總線8根,地線總線2根)。

4 串行通訊的軟件設(shè)計

在以往的Intel 8274的應(yīng)用中,大部分都是工作在查詢模式。雖然查詢方式的程序設(shè)計簡單,但由于必須使用控制芯片(微處理器、DSP)來不斷地查詢寄存器中的狀態(tài)標(biāo)志位,因而不能進(jìn)行其它工作,這使得整個程序的效率很低。尤其是在實時性要求較強(qiáng)的場合下不太適用。因此,設(shè)計時需將Intel 8274工作在中斷模式。

在筆者的應(yīng)用中,該串行通訊的流程首先是TMS320F206需要從另一個同步串行口接收數(shù)據(jù),然后,相關(guān)部分對該數(shù)據(jù)進(jìn)行處理程序通過Intel 8274發(fā)送出去。因此Intel 8274只有在同步串行口接收到數(shù)據(jù)后才處于發(fā)送狀態(tài),其它時候則處于接收狀態(tài)。

TMS320F206串行通訊的相關(guān)軟件如下(未注明寄存器均指B通道寄存器):

Intel 8274初始化程序:

……

splk #0004h,60h ;wr0:復(fù)位

out 60h,0003h

splk #0020h,60h ;wr4:SDLC方式

out 60h,0003h

splk #0046h,60h ;wr0:指示寄存器指向wr6

out 60h,0003h

splk #0054h,60h ;wr6:接收匹配地址54h

out 60h,0003h

splk #0097h,60h ;wr0:指示寄存器指向wr7

out 60h,0003h

splk #007eh,60h ;wr7:同步標(biāo)志7eh

out 60h,0003h

splk #0002h,60h ;A通道wr0

out 60h,0002h

splk #0020h,60h ;A通道wr2:中斷方式

out 60h,0002h

splk #0031h,60h ;wr0:指示寄存器指向wr1

out 60h,003h

splk #001ch,60h ;wr1:全部接收中斷方式,不啟動發(fā)送器

out 60h,0003h

splk #0023h,60h ;wr0:指示寄存器指向wr3

out 60h,0003h

splk #00cdh,60h ;wr3:8位接收,接收CRC、接收器啟動

out 60h,003h ;地址匹配接收模式

……

下面是切換Intel 8274至發(fā)送狀態(tài)的同步接收中斷服務(wù)程序中:

……

rco485s:splk #000bh,60h ;485總線轉(zhuǎn)入發(fā)送狀態(tài)

out 60h,iosr

splk #0085h,60h ;wr0:指示寄存器指向wr5

out 60h,0003h

splk #0069h,60h ;wr5:發(fā)送CRC、發(fā)送器啟動

out 60h,0003h

splk #0001h,60h ;wr0:指示寄存器指向wr1

out 60h,0003h

splk #001eh,60h ;wr1:發(fā)送中斷啟動

out 60h,0003h

lacl #0ah ;等待0ah周期循環(huán),

loop: sub #1h ;使發(fā)送足夠同步標(biāo)志

nop

bcnd loop,GT

lar ar3,6fh

mar *,ar3 ;置ar3為當(dāng)前輔助寄存器

out *+,0001h ;發(fā)送第一個數(shù)據(jù)到Intel 8274

……

Intel 8274發(fā)送/接收中斷服務(wù)程序:

……

;Intel 8274接收

r485: lar ar1,70h

mar *,ar1 ;置ar1為當(dāng)前輔助寄存器

in *+,0001h ;從Intel 8274接收一個數(shù)據(jù)

……

;Intel 8274發(fā)送

s485:mar *,ar3 ;置ar3為當(dāng)前輔助寄存器

out *+,0001h ;發(fā)送一個數(shù)據(jù)到Intel 8274

……

lacl #60h ;等待60h周期循環(huán),

loop1: sub #1h ;使能發(fā)送兩個字節(jié)CRC

nop ;和至少一個同步標(biāo)志

5 應(yīng)用Intel 8274的注意事項

在圖1的硬件設(shè)計中,必須注意是Intel 8274的TXCB管腳(或TXCA管腳)。由于TXCB管腳在作為Intel 8274的發(fā)磅器時鐘的同時又是一個輸入管腳,而作為485串行通訊數(shù)據(jù)總線上的發(fā)送器時鐘要求對于源端是輸出管腳,這樣,就必須從外部引入一個發(fā)送同步時鐘CLKT。這是使用Intel 8274時在硬件上應(yīng)注意的問題。

在軟件設(shè)計中,第一個要注意的問題是Intel 8274的16個寫寄存器的使用問題。在Intel 8274中,每個通道有8個寫寄存器和3個讀寄存器,但卻只有2根地址線。因此該芯片專門設(shè)計了一個內(nèi)部指示寄存器,以專門用于在存取8274命令/狀態(tài)時選擇讀/寫哪個命令或狀態(tài)寄存器。該指示寄存器位于WR0寄存器的D2~D0位。上電復(fù)位后,指示寄存器的內(nèi)容為0。因此第一次寫入命令寄存器的命令將寫入WR0,同時這個命令的低三位寫入指示寄存器,并標(biāo)志著下次將讀/取的寄存器號。而指示寄存器的內(nèi)容在完成讀或?qū)懖僮髦缶捅粡?fù)位,因些在讀或?qū)懸粋寄存器之前,都必須先向WR0(指示寄存器)寫入一條指令。在上面的程序中,尤其是初始化段,可以明顯地看到這一過程。

第二個需要注意的問題是SDLC的同步標(biāo)志字。SDLC協(xié)議規(guī)定,在幀起始和結(jié)束的時候,必須發(fā)送至少1個同步標(biāo)志01111110。在一般的實際應(yīng)用中,TMS320F206的時候會遠(yuǎn)遠(yuǎn)高于Intel 8274的時候,因此,從同步串行口接收完數(shù)據(jù),并將Intel 8274切換至發(fā)送狀態(tài)起,到向Intel 8274發(fā)送第一個數(shù)據(jù)之前,根本來不及讓Intel 8274自動發(fā)送至少一個SDLC協(xié)議的步標(biāo)志字。為解決這一問題,在實際編程過程中,設(shè)計得可有意在它們之間加入一個10個周期左右的循環(huán)(虛框內(nèi)的程序)。同樣,從Intel 8174發(fā)送完一幀數(shù)據(jù)之后到切換Intel 8274至接收狀態(tài)之間,設(shè)計也可有意加入一個循環(huán)(虛框內(nèi)的程序)。在這個循環(huán)中,Intel 8274首先會自動插入兩個字節(jié)的CRC循環(huán)冗余校驗碼,然后才暗SDLC的同步標(biāo)志字,因此這個循環(huán)的周期數(shù)要大于第一個循環(huán)的周期數(shù)。這兩個循環(huán)周期的具體參數(shù)與TM320F206和Intel 8274所使用的時鐘有關(guān),因此需要設(shè)計者在實際系統(tǒng)調(diào)試中加以確定。

6 Intel 8274串行通訊系統(tǒng)的應(yīng)用

在筆者研制的某雷達(dá)項目中,要求其中一條通訊線路的信息交換需通過滿足RS-485標(biāo)準(zhǔn)和SDLC信息交換規(guī)程要求的串行通訊總線來進(jìn)行。其數(shù)據(jù)傳送速度要求為800kbps,相對不穩(wěn)定度為10-4。為了滿足這些要求,筆者在設(shè)計中使用了如圖1所示的由TMS320F206為主控制芯片,Intel 8274為串行通訊協(xié)議控制芯片所構(gòu)成的串行通訊接口系統(tǒng)。該系統(tǒng)在調(diào)試過程中,從示波器中可以明顯地反映出上面所提到的兩個循環(huán)周期對Intel 8274自動插入SDLC同步標(biāo)志字的個數(shù)的影響。插入這些循環(huán)周期并經(jīng)過調(diào)試使該串行口的工作得以正常,從而簡單、高效地實現(xiàn)了基于SDLC協(xié)議的串行通訊,達(dá)到了系統(tǒng)的設(shè)計要求。

  • 上一篇: 遠(yuǎn)距離多機(jī)分時雙工通信芯片SR331
  • 下一篇: 1-wire網(wǎng)絡(luò)的電纜選擇與保護(hù)
  • 發(fā)表評論   告訴好友   打印此文  收藏此頁  關(guān)閉窗口  返回頂部
    熱點文章
     
    推薦文章
     
    相關(guān)文章
    網(wǎng)友評論:(只顯示最新5條。)
    關(guān)于我們 | 聯(lián)系我們 | 廣告合作 | 付款方式 | 使用幫助 | 機(jī)電之家 | 會員助手 | 免費鏈接

    點擊這里給我發(fā)消息66821730(技術(shù)支持)點擊這里給我發(fā)消息66821730(廣告投放) 點擊這里給我發(fā)消息41031197(編輯) 點擊這里給我發(fā)消息58733127(審核)
    本站提供的機(jī)電設(shè)備,機(jī)電供求等信息由機(jī)電企業(yè)自行提供,該企業(yè)負(fù)責(zé)信息內(nèi)容的真實性、準(zhǔn)確性和合法性。
    機(jī)電之家對此不承擔(dān)任何保證責(zé)任,有侵犯您利益的地方請聯(lián)系機(jī)電之家,機(jī)電之家將及時作出處理。
    Copyright 2007 機(jī)電之家 Inc All Rights Reserved.機(jī)電之家-由機(jī)電一體化網(wǎng)更名-聲明
    電話:0571-87774297 傳真:0571-87774298
    杭州濱興科技有限公司提供技術(shù)支持

    主辦:杭州市高新區(qū)(濱江)機(jī)電一體化學(xué)會
    中國行業(yè)電子商務(wù)100強(qiáng)網(wǎng)站

    網(wǎng)站經(jīng)營許可證:浙B2-20080178-1