亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于UR8 的586-Engine 異步串行通信擴展設計

        2015-08-26 06:36:58李志宇高艷輝
        電子設計工程 2015年13期
        關鍵詞:波特率寄存器中斷

        李 強,李志宇,高艷輝

        (1.南京航空航天大學 自動化學院,江蘇 南京210016;2.南京航空航天大學 無人機研究院,江蘇 南京210016)

        異步串行通信是一種串行數(shù)據(jù)傳輸協(xié)議, 用于雙向通信,可以實現(xiàn)半雙工和全雙工傳輸,因其結(jié)構(gòu)簡單、設計方便、價格低廉、占用資源少[1]、傳輸距離遠等優(yōu)勢而得到廣泛應用。 近年來串行通信正朝著帶寬、速度、穩(wěn)定性逐漸增強的方向發(fā)展[2]。 586-Engine 是TERN 公司推出的一款為了高精度和高可靠性的植入式應用所設計的核心板卡, 運算速率高,適用于工業(yè)程序控制和高精度的數(shù)學計算。 該板卡提供了2 路異步串行通信接口,這在很多應用場合遠遠不夠。為了增加串口數(shù)量并保證較高的傳輸速率, 使用高性能的UR8 擴展卡是一種可行方案, 本文結(jié)合UR8 串口擴展卡在586-Engine 上的成功應用, 對UR8 串口擴展方法進行詳細介紹。

        1 器件介紹

        586-Engine 是TERN 公司生產(chǎn)的基于AMD Elan SC520處理器的C/C++可編程微控制模塊,成本低,功耗低,結(jié)構(gòu)緊湊。 它提供了多種算法指令用于處理各類數(shù)字格式以及正弦、余弦、正切、對數(shù)等超越函數(shù),擅長高強度的運算應用[3]。

        586-Engine 的主要參數(shù)指標如下:

        1)CPU 是 主 頻 為133 MHz 的32 位AMD ElanSC520 處 理器,兼容Intel80x86;

        2)尺寸為3.6*2.3*0.3 英寸,適用溫度為-40oC—85oC;

        3)支持114 字節(jié)內(nèi)置RAM,高達512KB 電池供電的SRAM,512 kB 的Flash,不支持SDRAM、PCI、DMA。

        4)提供兩個工業(yè)標準通用異步串口(UART),最高達到1.152 Mbit/s。

        5)提供32 路多功能I/O 總線。包括總共19 路12 位模數(shù)轉(zhuǎn)換器, 其中11 路串行模數(shù)轉(zhuǎn)換和8 路并行模數(shù)轉(zhuǎn)換;6 路12位數(shù)模轉(zhuǎn)換器,其中2 路串行數(shù)模轉(zhuǎn)換和4 路并行數(shù)模轉(zhuǎn)換。

        6)可編程中斷控制器(PIC)支持22 個中斷優(yōu)先級,包括15 個外部中斷。 共有7 個定時器,其中1 個可編程內(nèi)部定時器,3 個16 位PIT 定時器和3 個16 位GP 定時器[4]。

        UR8 是TERN 公司生產(chǎn)的8 路異步串口擴展卡。 它提供了多種串口工作方式,如RS232、RS485、RS422。 其核心部件是2 片TL16C754B 芯片, 每片TL16C754B 具有4 路異步串口, 每個通道具有64 字節(jié)的發(fā)送FIFO 和64 字節(jié)的接收FIFO。在FIFO 模式下,可以減小CPU 的中斷數(shù)量并降低軟件開銷。 它有3 種工作模式:查詢模式、中斷模式和DMA 模式,并可編程選擇中斷和DMA 模式的FIFO 深度[5]。 它提供了可編程的波特率發(fā)生器用于產(chǎn)生14 種不同的波特率,最高波特率可達230400bit/s,可見UR8 的串口傳輸速度非??臁?/p>

        2 硬件設計

        2.1 UR8 擴展卡串口的可配置方案

        UR8 擴展卡提供了3 種可配置的串口標準方案 (即RS232、RS485、RS422)以滿足不同的需求。其中8 個串口均可配置為RS232 串口標準;COM2-COM5 4 個串口可配置為RS485 串口標準;COM2 可配置為RS422 串口標準。若采用后兩種方案與PC 機進行通信需在中間加裝一個RS232/RS485轉(zhuǎn)換器。 以上3 種配置方案均已成功應用, 本文僅以RS232為例對該方法進行介紹。

        2.2 接口電路原理框圖

        586-Engine 的數(shù)據(jù)總線D0-D7 連接到UR8 的D0-D7,用于雙向數(shù)據(jù)交換,/RD 和/CS1 分別和UR8 內(nèi)部HCT245 芯片的DIR 及G 相連來選擇傳輸方向;586-Engine 的地址總線A1、A2、A3、寫使能端/WR、讀使能端/RD 以及RST 與UR8 的A0、Al、A2、寫使能端/WR、讀使能端/RD 以及RST 相連,實現(xiàn)TL16C754B 的片內(nèi)寄存器尋址和讀寫控制;586-Engine 的地址總線A4、A5、A6、A7 與UR8 的A4、A5、A6、A7 相連, 經(jīng)過TL16C754B 內(nèi)部譯碼器芯片進行譯碼實現(xiàn)片選功能[6]。

        UR8 的8 個串口(COM2-COM9)選用RS232 通訊方式。可以采用兩種方案進行試驗,第一種是UR8 的8 個串口與8臺PC 機同時通信, 第二種是UR8 的8 個串口級聯(lián)的接線方式, 為了操作簡潔采用第二種方案, 即: 外部數(shù)據(jù)發(fā)送到COM2 的 接 收 端/RXD2,/TXD2 連 到/RXD3,/TXD3 連 到/RXD4,以此類推,最終數(shù)據(jù)由COM9 的發(fā)送端/TXD9 發(fā)送到PC 機的接收端,通過串口調(diào)試助手檢測數(shù)據(jù)的正確性和完整性。 整個接線關系如圖1 所示。

        圖1 接口設計電路原理圖Fig. 1 Interface circuit schematic design

        3 軟件設計

        3.1 UR8 的初始化配置

        TL16C754B 內(nèi)部寄存器地址如下表所示,每一個串口的定義都完全相同。

        表1 TL16C754B 內(nèi)部寄存器Tab.1 TL16C754B internal registers

        UR8 的地址設置非常靈活,每個通道的基地址可以自由選擇,采用基地址加偏移量的方法可以確定各寄存器的地址,然后就可以對各寄存器進行讀寫操作。 值得注意的是,A0 沒有使用,各偏移量和基地址為偶地址,這樣就增加了系統(tǒng)的抗干擾能力。

        UR8 是一款可靈活選擇配置的擴展卡, 其每一通道的初始化配置均可根據(jù)實際需要來進行。下面以串口2 為例,給出初始化配置。

        ************************************ 設 置 串 口2*********************************

        baud=13; // 波特率選擇115200

        qur_init(2, baud);

        outportb(LCR2,0x83); // 線路控制寄存器,8 位,無奇偶校驗,使能DLL、DLH

        outportb(DLL2,(unsigned char)(ctlr&0xff) ); // 波特率因子寄存器低位

        outportb (DLH2,(unsigned char)((ctlr>>8)&0xff)); // 波特率因子寄存器高位

        outportb(LCR2,0x03); // 線路控制寄存器,8 位,無奇偶校驗

        outportb(IER2,0x00); // 中斷允許寄存器,不允許中斷outportb(FCR2,0x07); // 清空FIFO

        outportb(MCR2,0x00); // Modem 控制寄存器歸零

        3.2 串口函數(shù)說明

        void qur_init( char ch, unsigned char baud) //ch=2-9,串口初始化

        void put_ch (char ch, unsigned char dat) //串口數(shù)據(jù)發(fā)送函數(shù)

        unsigned char qur_hit ( char ch) //檢查接收FIFO是否有數(shù)據(jù)

        unsigned char get_ch( char ch) //串口數(shù)據(jù)接收函數(shù)

        3.3 程序說明

        軟件設計流程圖如圖2 所示,程序采用順序查詢模式,依次查詢COM2-COM9 的接收FIFO 中是否有數(shù)據(jù), 如果有數(shù)據(jù)則存儲數(shù)據(jù)再將存儲的數(shù)據(jù)發(fā)出; 如果接收FIFO 中沒有數(shù)據(jù),則繼續(xù)檢查下一個串口。 結(jié)合硬件的連線方式,一幀數(shù)據(jù)就會在8 個串口間循環(huán)一次。每一通道都有各自的接收/發(fā)送FIFO 和寄存器,各自數(shù)據(jù)的接收和發(fā)送不受影響。

        圖2 軟件設計流程圖Fig. 2 Flow chart of the software design

        3.4 調(diào)試結(jié)果

        調(diào)試過程中,PC 機串口發(fā)送端與UR8 的串口2 的RXD2 相連, 發(fā)送的數(shù)據(jù)通過串口發(fā)送端依次通過COM2、COM3、COM4、COM5、COM6、COM7、COM8、COM9, 最 終 由COM9 的發(fā)送端TXD9 傳送到PC 機的串口接收端,形成一個數(shù)據(jù)循環(huán)傳輸?shù)倪^程。PC 機通過串口調(diào)試助手控制串口的發(fā)送和接收,具體調(diào)試原理如圖3 所示。

        圖3 調(diào)試原理框圖Fig. 3 Debugging principle diagram

        串口調(diào)試助手當波特率設定為115 200 bit/s,一幀數(shù)據(jù)為01 到40 個字符時,逐步減小每幀數(shù)據(jù)的發(fā)送間隔,最終測試得到的最短時間間隔為20 ms。 即每20 ms 發(fā)送一幀數(shù)據(jù)。PC機接收到的數(shù)據(jù)顯示在窗口中,實驗最終結(jié)果如圖4 所示。

        從結(jié)果可以看出,接收窗口接收到的數(shù)據(jù)沒有誤碼,說明數(shù)據(jù)在各個串口的接收發(fā)送過程中沒有出現(xiàn)錯誤; 界面最下面顯示S:153000 R:153000,發(fā)送和接收的字節(jié)數(shù)相等,說明沒有丟失數(shù)據(jù)。

        圖5 給出了時間間隔減小到19 ms 的實驗結(jié)果, 從接收窗口可以看出第4 行39、40 兩個字符被01、02 替代, 說明串口發(fā)送一幀數(shù)據(jù)所需要時間已經(jīng)大于PC 機發(fā)送一幀數(shù)據(jù)的時間間隔, 串口還沒發(fā)完一幀數(shù)據(jù)已經(jīng)被強制執(zhí)行下一次的發(fā)送命令,第8、15、17、22 行反映了同樣的問題。 說明20 ms為這種擴展方案的極限值。

        圖4 測試界面圖Fig. 4 Interface chart of the test system

        圖5 測試界面圖(19ms/次)Fig. 5 Interface chart of the test system(19ms/次)

        調(diào)試結(jié)果說明, 使用UR8 成功地擴展了586-Engine 的異步串行通信能力。

        4 結(jié)論

        本文介紹的這種串行通信擴展方案具有明顯的優(yōu)越性:一是增加了8 個串行通信接口,可以與更多的設備進行連接,極大地提高了586-Engine 的異步串行通信能力; 二是由于586-Engine 內(nèi)核處理數(shù)據(jù)的速度極快并盡最大限度的壓縮程序所占用時間,使得這種UR8 串口擴展方案達到很高的傳輸速率,能夠滿足譬如飛控計算機這種高實時性、高運算量設備的設計需求;三是UR8 不僅能擴展到586-Engine,還能直接 擴 展 到A-Engine、i386-Engine、i386-Drive、586-Drive 等TERN 公司生產(chǎn)的板卡,省去了設計接口電路的麻煩。 實驗證明,在實時性高、傳輸波特率高、CPU 運算量大的情況下,使用UR8 進行串口擴展是一種很實用的方案。

        [1] 蘭立榮,閆繼英,林海土,等.基于ARM處理器設備的多串口設計與實現(xiàn)[J].儀表技術,2011(5):19-21.

        LAN Li-rong, YAN Ji-ying,LIN Hai-tu,et al.Design and implementation of multi -channel UART based on ARM apparatus[J]. Instrumentation Technology,2011(5):19-21.

        [2] Chen Z H,Shi M, Yi Q M.A method for DSP asynchronous serial port expansion based on TL16C752B [C] //Business Management and Electronic Information (BMEI),2011 International Conference on.IEEE,2011(1):844-847.

        [3] TERN,Inc.586-EngineTM Technical Manual[S].2001.

        [4] 陳德勝,黃一敏,史擁軍.TLl6C754在嵌入式系統(tǒng)串行通信中的應用[J].儀器儀表用戶,2007,14(4):81-82 CHEN De-sheng,HUANG Yi-min,SHI Yong-jun.The application of TL16C754 in the serial communications of embedded system[J].Electronic Instrutmentation Costumers,2007,14(4):81-82.

        [5] 梅培智, 于海勛, 何衡湘, 等. 基于TL16C754B 的TMS320F2812異步串行通信擴展 [J]. 科學技術與工程,2007,7(23):6035-6039.MEI Pei-zhi,YU Hai-xun,HE Heng-xiang,et al.UART serial port extension of TM S320F2812 based on TL16C754B[J].Science Technology and Engineering,2007,7(23):6035-6039.

        [6] 皮小平,呂宗偉.TL16C754在多串口擴展中的應用[J].電子元器件應用,2006,3(1):64-66.PI Xiao -ping,LV Zong -wei.Application of TL16C754 in multi serial port expansion [J].Electronic Component & Device Applications,2006,3(1):64-66.

        猜你喜歡
        波特率寄存器中斷
        CAN 總線波特率自適應程序設計
        智能制造(2020年5期)2020-07-03 06:24:00
        Lite寄存器模型的設計與實現(xiàn)
        計算機應用(2020年5期)2020-06-07 07:06:44
        基于FPGA的異步串行通信波特率容錯設計
        電子測試(2018年7期)2018-05-16 06:27:18
        跟蹤導練(二)(5)
        千里移防,衛(wèi)勤保障不中斷
        解放軍健康(2017年5期)2017-08-01 06:27:44
        分簇結(jié)構(gòu)向量寄存器分配策略研究*
        AT89C51與中斷有關的寄存器功能表解
        C*Core芯片SCI串口波特率容限優(yōu)化
        FPGA內(nèi)嵌PowerPC的中斷響應分析
        微處理機(2012年4期)2012-06-13 11:32:24
        高速數(shù)模轉(zhuǎn)換器AD9779/AD9788的應用
        日本a一区二区三区在线| 又爆又大又粗又硬又黄的a片| 中文字幕在线码一区| 亚洲毛片av一区二区三区| 日本成年一区久久综合| 内射合集对白在线| 国内精品九九久久久精品| 国产精品,在线点播影院| 国产老熟女伦老熟妇露脸| 国内精品久久久人妻中文字幕 | 中文字幕日本女优在线观看| 日本a级黄片免费观看| 夜夜揉揉日日人人青青| 国产天堂在线观看| 国产激情视频在线观看你懂的| 亚洲高清在线免费视频| 丰满人妻熟妇乱又伦精品软件 | 欧美成人家庭影院| 国产精品va无码一区二区| 亚洲韩国在线| 国产精品综合女同人妖| 97久久综合区小说区图片区| 黑人巨大videos极度另类| 亚洲国产日韩av一区二区| 精品视频在线观看日韩| 啦啦啦www播放日本观看| 亚洲mv国产精品mv日本mv| 在线观看av不卡 一区二区三区| 国产精品无码人妻在线| 免费人成年小说在线观看| 精品黑人一区二区三区| 99久久婷婷国产亚洲终合精品| 欧美性猛交xxxx乱大交3| 亚洲欧洲日产国码久在线观看| 日本高清在线播放一区二区| 亚洲精品动漫免费二区| 久久AⅤ无码精品为人妻系列 | 亚洲av永久综合网站美女| 欧美亅性猛交内射| av蓝导航精品导航| 午夜无码国产18禁|