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

        ?

        基于CAN總線的數(shù)據(jù)接收控制方式的設(shè)計

        2012-06-06 08:14:04劉素華沈三民黃仁杰
        電視技術(shù) 2012年1期
        關(guān)鍵詞:單片機(jī)信號系統(tǒng)

        劉素華,沈三民,黃仁杰

        (1.中北大學(xué)電子測試技術(shù)國家重點(diǎn)實驗室,山西 太原 030051;2.中北大學(xué)材料科學(xué)與工程學(xué)院,山西 太原 030051)

        CAN總線是國際上應(yīng)用廣泛的現(xiàn)場總線之一,是一種多主方式的串行通信總線,已被廣泛應(yīng)用于汽車電子和航空等領(lǐng)域。C8051F040內(nèi)部集成有博世CAN控制器的混合信號系統(tǒng)級芯片(SoC),能夠?qū)崿F(xiàn)國際上標(biāo)準(zhǔn)的CAN傳輸協(xié)議本[1]。本系統(tǒng)通過C8051F040單片機(jī)和FPGA來實現(xiàn)模擬量數(shù)據(jù)和數(shù)字量數(shù)據(jù)的接收,并通過USB接口傳到上位機(jī)實時分析數(shù)據(jù)的準(zhǔn)確性。

        1 總體框圖

        數(shù)據(jù)接收系統(tǒng)的主要作用是通過CAN總線接口接收來自其他設(shè)備的數(shù)字量和模擬量,并可以通過USB接口傳到上位機(jī)中,實時分析數(shù)據(jù)的可靠性。系統(tǒng)涉及到的主要模塊包括CAN總線接口模塊、C8051F040單片機(jī)控制模塊、FPGA主控模塊以及USB接口模塊。系統(tǒng)的總體設(shè)計框架如圖1所示。

        圖1 系統(tǒng)的總體框圖

        上位機(jī)通過FT245BM和底層硬件設(shè)備進(jìn)行通信。FPGA中控單元主要是和FT245BM及單片機(jī)進(jìn)行通信,并對有關(guān)數(shù)據(jù)接收、緩存、發(fā)送等操作進(jìn)行控制。單片機(jī)內(nèi)部集成了CAN控制器,通過CAN接口接收數(shù)字量數(shù)據(jù)和模擬量數(shù)據(jù)并傳送到FPGA控制單元。CAN總線收發(fā)器選用的是飛利浦公司生產(chǎn)的TJA1040。CAN總線控制器和CAN總線接口之間要通過高速光電耦合器6N137進(jìn)行隔離,提高系統(tǒng)的抗干擾能力。信號傳輸易產(chǎn)生輻射和信號衰減,本文采用雙絞線外加金屬屏蔽層,可減少信號輻射,防止重要信息外泄,也可阻止外部電磁信號干擾的進(jìn)入,同時使用屏蔽雙絞線比使用非屏蔽雙絞線具有更高的信號傳輸速率。

        2 CAN總線接口接收消息的控制

        系統(tǒng)數(shù)據(jù)接收主要是通過C8051F040系列單片機(jī)內(nèi)部集成的CAN模塊進(jìn)行,其硬件電路接口如圖2所示。

        圖2 C8051F040單片機(jī)接口電路

        單片機(jī)C8051F040的CAN核控制器原理如圖3所示。

        圖3 CAN控制器的原理框圖

        在圖3中,接口單元是CPU接口;消息處理單元主要是通過狀態(tài)機(jī)控制數(shù)據(jù)從CAN核的輸入輸出移位寄存器和消息RAM之間傳輸;所有寄存器都用來控制和配置CAN模塊;CAN核控制器及輸入、輸出移位寄存器用于消息的串/并轉(zhuǎn)換及其他和協(xié)議相關(guān)的任務(wù)。CAN控制器的幀格式是系統(tǒng)自動生成的,不需要自己去設(shè)計幀格式,只需要往相關(guān)的寄存器中寫入相應(yīng)的內(nèi)容即可。

        系統(tǒng)接收的數(shù)據(jù)采用的是標(biāo)準(zhǔn)幀,接收數(shù)據(jù)時,當(dāng)接收到的消息仲裁和控制領(lǐng)域已經(jīng)完全移到CAN核的Rx/Tx移位寄存器時,消息處理的優(yōu)先狀態(tài)機(jī)便開始掃描消息RAM來匹配一個有效的消息對象。接收過濾的單元裝入CAN核移位寄存器中的仲裁位,然后消息對象的仲裁和屏蔽信息域裝入接收過濾單元并且和CAN核移位寄存器中的仲裁信息域相比較,直到找到匹配的消息對象。這種匹配會在所有的消息對象中重復(fù)。一旦匹配出現(xiàn)則停止掃描,進(jìn)行消息處理。接收消息控制的流程如圖4所示。

        圖4 接收消息控制流程圖

        3 FPGA主控模塊

        模擬量和數(shù)字量數(shù)據(jù)的接收以FPGA作為中央控制器。主要完成的功能有接收上位機(jī)命令、向單片機(jī)發(fā)送命令、接收單片機(jī)發(fā)送來的模擬量數(shù)據(jù)和數(shù)字量數(shù)據(jù),并通過緩存模塊進(jìn)行讀寫控制,將讀取到的數(shù)據(jù)混合編幀通過USB接口傳到上位機(jī)。FPGA主控模塊的原理如圖5所示。

        圖5 FPGA主控模塊

        如何在異步時鐘方式下實現(xiàn)同步是FPGA和單片機(jī)進(jìn)行實時通信的關(guān)鍵點(diǎn)。對于異步接口,可以采用以下兩種方式避免亞穩(wěn)態(tài)的發(fā)生:1)速率不匹配,需要緩存??梢赃x擇使用FIFO或者雙RAM口進(jìn)行緩存。2)需要握手信號。可以使用雙握手信號,例如REQ和ACK等[2]。

        3.1 命令信號傳輸控制

        在本文中,考慮到系統(tǒng)的使用性,F(xiàn)PGA向單片機(jī)發(fā)送數(shù)據(jù)主要為命令信號,需要進(jìn)行握手協(xié)議。首先FPGA需要將命令信號放在數(shù)據(jù)線上,同時向單片機(jī)發(fā)送請求信號,當(dāng)單片機(jī)接收到請求信號后,接收FPGA發(fā)送的命令,接收完畢后,向FPGA回傳應(yīng)答信號。這樣完成一次命令的發(fā)送,以此類推,保證了數(shù)據(jù)發(fā)送的可靠性。

        3.2 批量數(shù)據(jù)傳輸控制

        當(dāng)單片機(jī)將收到的模擬量數(shù)據(jù)和數(shù)字量數(shù)據(jù)向FPGA進(jìn)行傳送時,由于數(shù)據(jù)量較大,再使用握手信號來解決亞穩(wěn)態(tài)狀態(tài)就已經(jīng)不實用了。這時需要通過緩存RAM來解決亞穩(wěn)態(tài)現(xiàn)象。在單片機(jī)和FPGA傳送數(shù)據(jù)時,每次發(fā)送一個數(shù)據(jù),則需要編寫一個控制信號,本文是在wr信號的上升沿處向FPGA發(fā)送1 byte數(shù)據(jù)。

        經(jīng)過CAN總線傳過來的數(shù)字量和模擬量數(shù)據(jù)首先需要通過FPGA內(nèi)部的RAM模塊進(jìn)行緩存,F(xiàn)PGA通過監(jiān)測緩存模塊的半滿信號進(jìn)行讀取。在一般的電路設(shè)計中,只需要邏輯控制電路產(chǎn)生空信號和滿信號,考慮到實際情況,需要邏輯控制模塊產(chǎn)生半滿信號和滿信號。由于本文有兩種類型的數(shù)據(jù),分別是模擬量數(shù)據(jù)和數(shù)字量數(shù)據(jù)。兩種類型的數(shù)據(jù)需要分別通過內(nèi)部FIFO進(jìn)行緩存。滿信號和半滿信號都是通過內(nèi)部邏輯控制模塊產(chǎn)生的。當(dāng)FULL=“1”時,停止向 RAM 中寫數(shù);當(dāng) FULL=“0”時,同時檢測寫使能信號和寫控制信號的上升沿,當(dāng)條件同時滿足時,則向RAM中寫數(shù)據(jù),寫RAM控制流程圖見圖6所示。讀取RAM數(shù)據(jù)時,在復(fù)位的情況下,系統(tǒng)不做任何事情,當(dāng)不復(fù)位的情況下,系統(tǒng)優(yōu)先判斷模擬量數(shù)據(jù)緩存模塊的半滿信號,當(dāng)moni_HF=“1”時,讀取一定容量的數(shù)據(jù),并按著圖7的幀格式向上位機(jī)發(fā)送數(shù)據(jù),當(dāng)模擬量RAM沒有出現(xiàn)半滿時再判斷數(shù)字量RAM塊。從RAM塊讀取數(shù)據(jù)的流程圖見圖8,當(dāng)都沒有出現(xiàn)半滿時則系統(tǒng)默認(rèn)為復(fù)位狀態(tài)。

        圖6 寫RAM塊控制流程

        圖7 模擬量和數(shù)字量幀結(jié)構(gòu)

        圖8 讀RAM塊控制流程圖

        在上位機(jī)實時監(jiān)測時,傳到上位機(jī)中的數(shù)據(jù)既有模擬量也有數(shù)字量,為了能夠?qū)⑺袛?shù)據(jù)均能夠?qū)崟r地在上位機(jī)中顯示,通過幀頭幀尾來拆分。每一幀數(shù)據(jù)的幀頭均為CA AC,一旦出現(xiàn)E3 3E或者9D D9,說明一幀數(shù)據(jù)的結(jié)束。如果為E3 3E,則實時表示數(shù)字量數(shù)據(jù),若為D9 D9,則實時表示模擬量數(shù)據(jù)。

        4 USB接口的設(shè)計

        本文是通過FT245BM和上位機(jī)進(jìn)行通信的。硬件電路和上位機(jī)進(jìn)行通信時的時序圖見圖9和圖10。

        在圖9中,當(dāng)FPGA檢測到TXE為低時,F(xiàn)T245BM允許接收數(shù)據(jù)緩沖區(qū)發(fā)送數(shù)據(jù)到USB端口,可以通過數(shù)據(jù)總線將數(shù)據(jù)發(fā)送到緩存區(qū)中,發(fā)出寫控制命令,即可發(fā)送數(shù)據(jù);當(dāng)TXE信號被硬件置高時,不能發(fā)送數(shù)據(jù)。圖10中,當(dāng)FPGA檢測到RXF為低時,F(xiàn)T245BM內(nèi)部發(fā)送緩沖區(qū)有來自USB接口的數(shù)據(jù),發(fā)出讀控制命令,即可以從數(shù)據(jù)總線讀出數(shù)據(jù)。數(shù)據(jù)讀取結(jié)束,RXF信號硬件置高時,不能接收數(shù)據(jù)[3-4]。

        為了保證接收數(shù)據(jù)和發(fā)送數(shù)據(jù)正確性,一定要將關(guān)鍵性信號進(jìn)行濾波。比如TXE和RXF都必須進(jìn)行濾波,否則的話,由于TXE和RXF這些信號的抖動,造成接收數(shù)據(jù)和發(fā)送數(shù)據(jù)的錯誤。

        5 系統(tǒng)的驗證

        整套系統(tǒng)調(diào)試中連接其他設(shè)備,啟動整個系統(tǒng)進(jìn)行工作,并通過上位機(jī)軟件讀取到的硬件電路發(fā)送過來的模擬量數(shù)據(jù)和數(shù)字量數(shù)據(jù),原始數(shù)據(jù)見圖11。

        6 總結(jié)

        本文主要是通過C8051F040單片機(jī)的CAN接口接收來自其他設(shè)備的模擬量數(shù)據(jù)和數(shù)字量數(shù)據(jù),主要以單片機(jī)和FPGA為中心,實現(xiàn)了單片機(jī)和FPGA之間的通信,適當(dāng)?shù)牟捎昧藘?nèi)部緩存和握手的方法大大減小了亞穩(wěn)態(tài)造成的影響,并通過內(nèi)部邏輯控制讀寫緩存中的數(shù)據(jù),將模擬量和數(shù)字?jǐn)?shù)據(jù)混合編幀,按著一定幀結(jié)構(gòu)通過USB接口傳到上位機(jī)中。

        圖11 上位機(jī)監(jiān)測到的混合編幀數(shù)據(jù)

        [1]饒運(yùn)濤,鄒繼軍,鄭勇蕓.現(xiàn)場總線CAN原理和應(yīng)用系統(tǒng)設(shè)計[M].北京:北京航空航天大學(xué)出版社,2003.

        [2]吳曉蕻.跨時鐘若干問題的研究——同步與亞穩(wěn)態(tài)[D].合肥:中國科學(xué)技術(shù)大學(xué),2008.

        [3]安榮,任勇峰,李圣昆.基于FPGA和USB2.0的數(shù)據(jù)采集系統(tǒng)[J].儀表技術(shù)與傳感器,2009(3):49-51.

        [4]徐峰.基于FT245BM的多USB接口的實現(xiàn)[J].無錫職業(yè)技術(shù)學(xué)院學(xué)報,2008,7(2):41-43.

        猜你喜歡
        單片機(jī)信號系統(tǒng)
        Smartflower POP 一體式光伏系統(tǒng)
        信號
        鴨綠江(2021年35期)2021-04-19 12:24:18
        WJ-700無人機(jī)系統(tǒng)
        ZC系列無人機(jī)遙感系統(tǒng)
        北京測繪(2020年12期)2020-12-29 01:33:58
        完形填空二則
        基于單片機(jī)的SPWM控制逆變器的設(shè)計與實現(xiàn)
        電子制作(2019年13期)2020-01-14 03:15:28
        基于單片機(jī)的層次漸變暖燈的研究
        電子制作(2019年15期)2019-08-27 01:12:10
        基于單片機(jī)的便捷式LCF測量儀
        電子制作(2019年9期)2019-05-30 09:42:02
        基于FPGA的多功能信號發(fā)生器的設(shè)計
        電子制作(2018年11期)2018-08-04 03:25:42
        連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
        亚洲一区二区视频免费看| 国产精品video| 久久婷婷国产精品香蕉| 亚洲激情一区二区三区视频| 国产人妻熟女高跟丝袜| 日本女优爱爱中文字幕| 丝袜美腿av在线观看| 国产xxxxx在线观看| 色丁香久久| 国产高清精品在线二区| 国语对白免费观看123| 欧美精品黑人粗大免费| 中文字幕免费观看视频| 日本高清一区二区在线观看| 最新国产熟女资源自拍| 最近中文字幕大全在线电影视频| 中日韩欧美在线观看| 日本在线播放不卡免费一区二区| 男女裸体做爰视频高清| 狠狠色噜噜狠狠狠狠7777米奇| 国产中文aⅴ在线| 国产一区二区三区在线观看蜜桃| 五月色婷婷丁香无码三级| 国产成人无码一区二区在线观看| 欧美精品aaa久久久影院| 我的美艳丝袜美腿情缘| 久久亚洲日韩精品一区二区三区| 欲妇荡岳丰满少妇岳| 女人被躁到高潮嗷嗷叫| 日本一区二区三区四区高清不卡 | 亚洲国产美女精品久久| 性一交一乱一乱一视频亚洲熟妇 | 精品无码人妻久久久一区二区三区| 色婷婷久久综合中文蜜桃| 内射合集对白在线| 国产爽爽视频在线| 白白色福利视频在线观看| 波多野结衣中文字幕一区二区三区| 久久久精品2019免费观看| 成人av天堂一区二区| 久久精品av在线观看|