国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于FPGA的串口幀數(shù)據(jù)通信實現(xiàn)

2017-05-02 20:38孫倩
中國新通信 2017年6期
關鍵詞:通信協(xié)議數(shù)據(jù)通信串口

孫倩

【摘要】 本文介紹了RS232串口通信協(xié)議的基本概念,并在串口通信的基礎上,引入可編程邏輯器件,實現(xiàn)多幀數(shù)據(jù)通信。通過簡單的物理連線實現(xiàn)PC與器件,器件與器件之間較復雜的通信信息交互,通用性較強。

【關鍵字】 FPGA 串口通信 Verilog HDL語言 幀數(shù)據(jù)解析

一、前言

在常用的RS232通信中,可實現(xiàn)單片系統(tǒng)間的數(shù)據(jù)交互,然而我們利用串口通信僅僅為了得到一個字節(jié)的數(shù)據(jù)就顯得太過浪費。實際通信應用中,在串口發(fā)送時,我們需要將一組串口數(shù)據(jù)封裝組合為一幀數(shù)據(jù),設置一個幀數(shù)據(jù)指令約束,規(guī)定幀頭、數(shù)據(jù)長度、有效數(shù)據(jù)、校驗信息、幀尾等可用信息。因此實現(xiàn)串口幀數(shù)據(jù)通信,在有限的串口連線上賦予更多通信信息,豐富了器件間數(shù)據(jù)交互內(nèi)容。

二、串口通信協(xié)議組成

簡單的RS232串口通信利用TXD,RXD實現(xiàn)全雙工通信。協(xié)議中規(guī)定通用字格式為:1位起始位、8位數(shù)據(jù)位、奇偶校驗位、1位停止位組成。按位發(fā)送和接收字節(jié)。在串口發(fā)送時,主設備按照串口格式組成順序,以某一波特率產(chǎn)生TXD,主設備的TXD作為從設備的RXD,檢測RXD下降沿,以相同的波特率接收數(shù)據(jù),操作可逆。只要保證接收與發(fā)送端各自的波特率時鐘一致,便可保證通信的順利進行,即完成一個字節(jié)的數(shù)據(jù)交互。

三、幀數(shù)據(jù)通信

在單字節(jié)串口通信的基礎上,將多個數(shù)據(jù)組合成有規(guī)律的一幀數(shù)據(jù)進行通信。利用FPGA可對通信數(shù)據(jù)靈活組合,只要保證收、發(fā)端遵從實現(xiàn)約束的幀通信協(xié)議,便能完成數(shù)據(jù)交互。我們以串口幀數(shù)據(jù)通信實現(xiàn)PC對某一產(chǎn)品的各子模塊功能檢測為例,通過Verilog HDL語言,完成邏輯編寫,模塊分為接收模塊、發(fā)送模塊、FIFO緩存級模塊、波特率設置模塊。

發(fā)送模塊主要實現(xiàn)單字節(jié)串口數(shù)據(jù)的組合成一幀數(shù)據(jù)對外發(fā)送,實質(zhì)是對單字節(jié)串口發(fā)送模塊的反復調(diào)用。一幀數(shù)據(jù)通信格式以幀頭單字節(jié)0xAA,幀數(shù)據(jù)長度(一字節(jié))、檢測對應子模塊編號(N+1個字節(jié))、設定幀尾0x55結(jié)尾,無檢驗位,數(shù)據(jù)格式如圖3-1所示。

接收模塊主要實現(xiàn)對一幀串口指令的接收識別解析,通信解析流程如圖3-2所示。首先檢測RXD的下降沿,解析幀頭數(shù)據(jù),同時計數(shù)器字節(jié)計數(shù)開始,判斷幀頭數(shù)據(jù)為0xaa,解析數(shù)據(jù)長度,由寄存器變量緩存(一字節(jié)),解析檢測對應子模塊編號(N+1個字節(jié)),解析幀頭數(shù)據(jù)為0x55后通信完成,判斷計數(shù)器記錄字節(jié)個數(shù)與寄存器變量緩存的數(shù)據(jù)長度是否一致,判斷通信中是否漏掉數(shù)據(jù),邏輯實現(xiàn)過程由狀態(tài)機完成。FIFO緩存級模塊用于幀數(shù)據(jù)緩存處理,避免數(shù)據(jù)覆蓋。波特率設置模塊用于接收、發(fā)送端通信速度的靈活把控。

在正確接收完成后,接收端提取檢測對應子模塊編號進行對應校驗工作,校驗完成后,將檢驗結(jié)果與接收的幀數(shù)據(jù)重組,以幀頭0xAA,幀數(shù)據(jù)長度(一字節(jié))、檢測對應子模塊編號(N+1個字節(jié))、檢測結(jié)果(一字節(jié))、幀尾0x55的形式發(fā)送回PC上位機。從而完成對該產(chǎn)品指定功能模塊的校驗工作。實際應用中,幀數(shù)據(jù)可多加一級和校驗字節(jié),避免接收端將有效數(shù)據(jù)中0x55誤判斷為幀尾數(shù)據(jù),增強串口通信的可靠性。

四、總結(jié)

基于FPGA的串口幀數(shù)據(jù)通信實現(xiàn),利用簡單的RS232通信協(xié)議可滿足器件之間完成復雜的數(shù)據(jù)交互,通信靈活性更強,可用于PC對器件的復雜功能調(diào)控,操作更加直觀,人機交互良好。

參 考 文 獻

[1]鄭彪, 汪秉文. 串口通信在工業(yè)控制中的應用[J]. 自動化儀表, 2002, 23(4):58-59.

[2]王富東, 邵光慶. 單片機多串口通訊技術及其應用[J]. 儀器儀表學報, 2002, 23(z1):262-264.

[3]程鍇, 張楠. 串口通訊技術在組態(tài)軟件中應用[J]. 電子測量技術, 2004(4):82-82.

[4]王麗, 雷秀, 余建國. 基于PC機與單片機AT89C52的串行通信協(xié)議設計[J]. 機電工程技術, 2006, 35(2):19-21.

[5]李瑩, 賈彬. 一種基于狀態(tài)機的串口通信協(xié)議的設計與實現(xiàn)[J]. 電子設計工程, 2012, 20(7):100-103.

猜你喜歡
通信協(xié)議數(shù)據(jù)通信串口
際華高分子材料高科產(chǎn)業(yè)園能源管理系統(tǒng)設計
MCS—51單片機中的多串口通訊技術的應用
基于EDA技術的通用異步收發(fā)器設計
北斗衛(wèi)星同步技術在電力行業(yè)中的運用簡析
優(yōu)化網(wǎng)絡設備維護提高數(shù)據(jù)通信傳輸質(zhì)量
淺談大連地鐵二號線DCS系統(tǒng)
全國計算機等級考試機房準備工作探討
微機串口的測試診斷
基于R8C的汽車OBD通用故障診斷儀設計
SIP協(xié)議系統(tǒng)模型的形式化研究
清水县| 尖扎县| 巴彦淖尔市| 岐山县| 贵港市| 平和县| 阳高县| 弥渡县| 永城市| 永仁县| 曲阳县| 东安县| 东城区| 云霄县| 佛山市| 雷波县| 呼伦贝尔市| 金溪县| 福贡县| 宝兴县| 琼结县| 潞西市| 夹江县| 资源县| 鹤山市| 湖口县| 巴彦淖尔市| 鸡东县| 五寨县| 清水县| 株洲县| 宝坻区| 洪湖市| 岐山县| 沛县| 收藏| 天台县| 开远市| 白沙| 峨边| 泾川县|