《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > STM32的CAN總線中繼器設計及應用
STM32的CAN總線中繼器設計及應用
潘 銅,葉小榮,張 娜,范建峰 西安工程大學
摘要: CAN中繼器是系統組網的關鍵,通過中繼器可以擴展節點的數量和實現不同波特率之間的通信。本文充分利用STM32F105內部集成雙bx CAN控制器的特性,設計出一款基于STM32的單芯片CAN總線中繼器,并將其應用到齊瑪印花機上。實踐證明該方法有效可行,不僅實現了齊瑪印花機的改造,還降低了系統設備的成本。
Abstract:
Key words :

摘要:CAN中繼器是系統組網的關鍵,通過中繼器可以擴展節點的數量和實現不同波特率之間的通信。本文充分利用STM32F105內部集成雙bx CAN控制器的特性,設計出一款基于STM32的單芯片CAN總線中繼器,并將其應用到齊瑪印花機上。實踐證明該方法有效可行,不僅實現了齊瑪印花機的改造,還降低了系統設備的成本。
關鍵詞:CAN總線;中繼器;STM32F105;齊瑪印花機

引言
    CAN總線是一種多主方式的串行通信總線,具有優良的穩定性、實時性、遠程通信能力以及超強的硬件CRC糾錯等特性;CAN總線技術的應用不再僅限于汽車行業,而是擴展到了機械、紡織、控制等行業,并被公認為是最有前途的現場總線之一。然而由于受制于CAN收發器,CAN總線通信距離和網絡中節點數被分別限制在10 km和110個之內。但是在稍大型的CAN總線系統中,這往往是不夠的,這時就需要用CAN總線中繼器對CAN總線網絡進行擴展。
    CAN中繼器是系統組網的關鍵技術設備之一,使用中繼器可以提高網絡設計的靈活性,并且通過中繼器還可以連接兩個不同波特率的CAN總線網絡;在兩個網絡間進行數據轉發,極大地擴展其使用范圍?;诖?,本文設計出一款基于STM32的CAN總線中繼器,并將其應用到齊瑪印花機上,完成圓網印花機通信系統的工程改造。

1 系統整體方案及硬件實現
    以往的CAN中繼器設計大多采用MCU加CAN控制器的雙芯片或多芯片解決方案。例如,參考文獻使用1片MCU加2路CAN控制器的結構實現中繼器;參考文獻使用雙MCU結構設計CAN總線中繼器;參考文獻使用獨立雙CAN控制器作為2路CAN接口的控制器來設計CAN中繼器。上述方案電路復雜,MCU與CAN控制器通過外部總線連接,數據吞吐速度慢,整體可靠性也比較差。
    意法半導體的STM32是以ARM Cortex-M3為內核的32位微處理器,主頻可高達72 MHz,內置Flash和SRAM,其容量可分別高達512 KB和64 KB;內部集成雙bxCAN控制器。它支持CAN協議V2.0A和V2.OB,波特率最高可達1 Mb/s,具有3個發送郵箱和2個3級深度的FIFO,能夠以最小的CPU負荷來高效處理大量收到的報文。基于此,選用STM32F105作為主控制器,設計出一款基于STM32的CAN總線中繼器。其整體方案如
圖1所示。

a.JPG
    由于STM32F105內部集成了雙路CAN控制器,CAN中繼器的節點電路變得十分簡單,其硬件電路如圖2所示。

b.JPG
    以往的節點電路,為了降低生產現場的抗干擾能力,保證中繼器工作的可靠性,都采用多重的抗干擾措施。例如,大部分的節點電路都是采用在CAN控制器和收發器之間加入光電隔離器6N137來實現CAN節點之間的電氣隔離,采用外加DC/DC電源模塊的方法切斷系統電源的干擾。同樣著眼于提高系統的抗干擾能力和可靠性的問題,本設計中一反常規的設計方法,直接采用廣州致遠電子有限公司生產的CAN通用收發器CTM8251。
    CTM8251是一款帶隔離的通用CAN收發器芯片,該芯片內部集成了所有必需的CAN隔離及CAN收發器件,這些都被集成在不到3 cm2的芯片上。芯片的主要功能是將CAN控制器的邏輯電平轉換為CAN總線的差分電平,并且具有DC 2500 V的隔離功能。該芯片符合ISO11898標準,因此,它可以和其他遵從ISO11898標準的CAN收發器產品互操作。
    實踐證明采用CTM8251不僅使系統真正與外接隔離開,抑制了干擾的串入提高系統的可靠性,簡化了CAN節點外圍電路的復雜度,還降低了成本,有較高的性價比。
    圖2中120 Ω為可選用的終端匹配電阻,如果網絡中已經有一對匹配電阻,則不使用該電阻。另外,電路中設計有相應的撥碼開關電路用于CAN網絡的ID標志和設置相應的波特率。

 

2 中繼器的軟件實現
    CAN中繼器的主要任務是在兩個網絡中進行數據的過濾和轉發。其軟件主要包括以下模塊:初始化模塊、數據發送模塊和接收模塊等。
2.1 初始化模塊
    CAN初始化直接關系到CAN控制器能否正常工作,在很多情況下,軟件不能正常工作并不是CAN的收發程序有問題,往往是初始化配置不正確造成的。STM32的CAN初始化主要包括CAN寄存器初始化、CAN單元初始化(包括CAN模式和波特率的設置)、CAN過濾器的初始化。由于STM32開發商提供了大量的固件庫函數,所以只需在調用的時間作出相應的設置即可。初始化子程序如下所示:
    ①CAN單元初始化子程序。

c.JPG
    在該初始化子程序中最關鍵的環節是怎么設置CAN的波特率,STM32數據手冊給出了波特率的計算公式:
    d.JPG
    其中tq為CAN時鐘周期。如上述CAN單元初始化子程序中:SJW=tq,BS1=8tq,BS2=7tq,STM32的CAN時鐘有APB1提供。假設系統時鐘為72 MHz,APB1為系統時鐘的9分頻,結合初始化子程序,CAN_Prescaler=1,帶入波特率計算公式即可求的其波特率為500 kb/s。
    ②CAN過濾器的初始化子程序。

 f.JPG
    CAN過濾器設置的得當與否是CAN是否能夠成功接收信息的關鍵,尤其在過濾器組位寬和模式設計上,如何將節點的ID號準確地映射到過濾器組位寬設置寄存器上是過濾器的核心。為了過濾出一組標識符,設置過濾器工作在屏蔽位模式下,對標識符的任何一位采用“必須匹配”或“不用關心”的原則處理。
2.2 數據發送模塊
    中繼器的任務之一就是實現報文的轉發。STM32F105內部集成了雙bxCAN控制器,它包括3個發送郵箱和2個3級深度的FIFO。結合STM32-F105的特性,采用雙FIFO的轉發機制,其原理如圖3所示。

g.JPG
    依據圖3,當STM32F105接收到新的報文時,經過數據處理模塊處理,在主監控程序負責下,對兩路bxCAN控制器的接收FIFO緩沖區進行監視,如某一路緩沖區非空則向另一路轉發。
    STM32F105發送報文的流程為:應用程序選擇1個空置的發送郵箱;設置標識符,數據長度和待發送數據;然后對CAN_TIxR寄存器的TXRQ位置1,來請求發送。TXRQ位置1后,郵箱就不再是空郵箱;而一旦郵箱不再為空置,軟件對郵箱寄存器就不再有寫的權限。TXRQ位置1后,郵箱馬上進入掛號狀態,并等待成為最高優先級的郵箱。一旦郵箱成為最高優先級的郵箱,其狀態就變為預定發送狀態。當CAN總線進入空閑狀態,預定發送郵箱中的報文就馬上被發送(進入發送狀態)。在郵箱中的報文被成功發送后,它馬上變為空置郵箱;硬件相應地對CAN_TSR寄存器的RQCP和TXOK位置1,來表明一次成功發送。
2.3 數據接收模塊
    為了提高中繼器數據傳輸的實時性,CAN報文的接收采用中斷方式。所以在CAN初始化過程中應該通過調用STM32固件庫函數voidCAN_IT-Config(CAN_TypeDef*CANx,uint32_t CAN_IT,FunctionalState Newstate)來開啟CAN1和CAN2的中斷。在接收時通過判斷其標志位來確定是CAN1還是CAN2產生的中斷,以此進入中斷函數void CAN1_RX0_IRQHandler(void)和voidCAN2 RX0_IRQHandler(void)對收到的報文進行處理。即:在接收一個報文時,其標識符首先與配置在標識符列表模式下的過濾器相比較。如果匹配上,報文就被存放到相關聯的FIFO中,并且所匹配的過濾器的序號被存入過濾器匹配序號中;如果沒有匹配,報文標識符接著與配置在屏蔽位模式下的過濾器進行比較;如果報文標識符沒有跟過濾器中的任何標識符相匹配,那么硬件就丟棄該報文,且不會對軟件有任何打擾。數據接收模塊流程如圖4所示。

i.JPG

3 系統在齊瑪印花機上的應用
    在齊瑪印花機CAN通信系統中,CF101板是控制主板,上面具有CAN中繼器的功能,其他3個操作板是從節點。系統利用中繼器將整個網絡的通信系統分為兩層,由中繼器對主節點和從節點之間的報文進行轉發。為了完成對工程的改造,將筆者所設計的CAN中繼器代替CF101主板,另外3個節點電路同樣采用STM32來設計。
    筆者所設計的CAN中繼器現在紹興某公司進行測試。在實際應用中,將中繼器的一端和網絡主干線連接,另一端和操作板及顯示板連接。就最近3個月的測試結果表明:該系統能夠和原設備正常通信,保證印花機的正常工作且性能穩定可靠;維護和擴容方便,大大提高了印花機工作效率,并更大程度地降低了設備成本。

4 結論
    本文所設計的CAN總線中繼器,充分利用以Cortex-M3為內核的STM32的優勢,內部集成雙bxCAN控制器簡化了硬件電路的設計;豐富的固件庫函數縮短了開發周期。實踐表明,基于STM32的CAN中繼器完成了各項設計指標,符合工程的要求,在齊瑪印花機系統中能夠有效的完成數據的轉發和網絡的拓展,具有較高的性價比。
 

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美亚洲一级| 国产精品久久婷婷六月丁香| 欧美亚洲尤物久久| 国产精品你懂的在线| 欧美在线三区| 激情欧美亚洲| 欧美激情1区| 亚洲成人在线网站| 久久精品在线观看| 亚洲精品免费一二三区| 欧美四级伦理在线| 国产亚洲免费的视频看| 欧美伊人久久大香线蕉综合69| 亚洲香蕉视频| 欧美一级淫片aaaaaaa视频| 99精品国产99久久久久久福利| 欧美.www| 国产欧美精品一区aⅴ影院| 一区二区三区毛片| 亚洲精品日韩久久| 国际精品欧美精品| 在线观看成人网| 亚洲狼人精品一区二区三区| 国产亚洲精品久久久| 欧美美女视频| 一区二区在线视频播放| 亚洲精品色婷婷福利天堂| 亚洲一区二区三区乱码aⅴ蜜桃女| 亚洲人成在线观看| 国产有码一区二区| 一本色道久久精品| 欧美体内she精视频| 亚洲免费一级电影| 亚洲福利免费| 欧美大片免费久久精品三p| 欧美精品1区2区| 亚洲专区欧美专区| 亚洲精品激情| 亚洲天堂成人在线观看| 欧美日韩中文精品| 激情欧美一区二区三区| 久久精品免费播放| 欧美性猛交99久久久久99按摩| 国产一区二区毛片| 免费日韩av电影| 亚洲一区3d动漫同人无遮挡| 欧美亚洲在线播放| 欧美黄色一区| 国产精品社区| 欧美性色aⅴ视频一区日韩精品| 亚洲精品久久久久久久久久久久| 亚洲精品乱码视频| 亚洲成色777777在线观看影院| 狼人社综合社区| 久久中文字幕导航| 国精产品99永久一区一区| 亚洲免费大片| 激情成人av| 国产精品二区在线观看| 美日韩精品免费观看视频| 久久久精品日韩| 国产精品高潮呻吟久久av无限| 欧美bbbxxxxx| 亚洲成在人线av| 亚洲视频1区| 国产精品第一页第二页第三页| 久久久久久久综合日本| 国产主播一区| 在线亚洲精品福利网址导航| 亚洲美女在线看| 欧美国产日韩a欧美在线观看| 亚洲一二三级电影| 亚洲国产一区在线| 国产精品捆绑调教| 亚洲日本欧美天堂| 亚洲毛片在线免费观看| 国产综合18久久久久久| 欧美精品91| 亚洲一区二区三区高清不卡| 日韩手机在线导航| 亚洲伊人观看| 欧美深夜影院| 欧美精品在线免费观看| 国产一区二区三区最好精华液| 久久人人97超碰人人澡爱香蕉| 一区二区三区四区五区精品视频| 国产精品亚洲第一区在线暖暖韩国| 国产美女精品人人做人人爽| 国内精品久久久久影院色| 国模精品一区二区三区色天香| 欧美精品一区视频| 狠狠久久亚洲欧美专区| 欧美日韩亚洲激情| 亚洲一区二区av电影| 亚洲免费人成在线视频观看| 亚洲国产美女精品久久久久∴| 激情综合色综合久久综合| 亚洲第一页在线| 欧美视频手机在线| 亚洲色图在线视频| 欧美波霸影院| 久久久精品国产99久久精品芒果| 亚洲欧洲精品成人久久奇米网| 欧美日韩一区在线| 午夜在线播放视频欧美| 欧美视频一区二| 国产一区高清视频| 一本不卡影院| 欧美亚洲在线视频| 91久久国产综合久久91精品网站| 久色婷婷小香蕉久久| 另类综合日韩欧美亚洲| 欧美国产精品人人做人人爱| 欧美日韩精品系列| 国产精品福利在线观看网址| 久久夜色精品国产亚洲aⅴ| 欧美视频在线观看一区| 男女av一区三区二区色多| 黄色亚洲大片免费在线观看| 欧美一级一区| 狠狠色综合色区| 欧美福利在线观看| 亚洲免费观看在线观看| 欧美久久99| 国产视频一区在线| 欧美成人一区二免费视频软件| 在线播放国产一区中文字幕剧情欧美| 99视频国产精品免费观看| 欧美一区二区成人| 亚洲蜜桃精久久久久久久| 136国产福利精品导航| 国产一区二区毛片| 国产麻豆日韩| 亚洲国产综合在线看不卡| 欧美手机在线| 一色屋精品亚洲香蕉网站| 欧美日韩成人综合在线一区二区| 香蕉成人伊视频在线观看| 亚洲午夜精品福利| 久久五月激情| 国产精品成人在线观看| 欧美日韩性视频在线| 国产在线成人| 久久久精品国产99久久精品芒果| 亚洲国产岛国毛片在线| 欧美成人精品在线视频| 国产乱码精品一区二区三区五月婷| 亚洲一区三区视频在线观看| 久久成人精品一区二区三区| 狠狠色综合网站久久久久久久| 伊人精品视频| 欧美日韩视频第一区| 久久久久9999亚洲精品| 久久先锋资源| 亚洲国产精品电影在线观看| 国外成人在线| 亚洲天堂av在线免费观看| 国产精品久久久久久久浪潮网站| 激情综合久久| 在线视频观看日韩| 欧美日韩亚洲系列| 欧美激情在线有限公司| 亚洲一区二区精品视频| 国产精品丝袜白浆摸在线| 欧美日韩精品一区二区天天拍小说| 国产精品区一区| 一区二区三区蜜桃网| 国产精品影片在线观看| 久久婷婷人人澡人人喊人人爽| 欧美午夜一区二区| 中日韩男男gay无套| 久久久久综合| 久久三级福利| 久久久综合香蕉尹人综合网| 亚洲国产乱码最新视频| 亚洲国产经典视频| 亚洲欧洲视频在线| 国产在线视频不卡二| 欧美大片一区二区| 亚洲综合日韩中文字幕v在线| 1204国产成人精品视频| 夜夜嗨av一区二区三区四季av| 欧美韩国一区| 在线免费观看日本欧美| 亚洲精品乱码久久久久久蜜桃91| 欧美日韩在线一区二区| 激情欧美一区| 国产精品成人久久久久| 久久久久久久久久久久久9999| 欧美亚洲综合另类| 西瓜成人精品人成网站| 国产精品成人观看视频国产奇米| 99综合视频| 国产精一区二区三区| 亚洲电影在线免费观看| 亚洲成在线观看| 国内成+人亚洲+欧美+综合在线| 亚洲一区二区少妇| 亚洲精品欧美日韩专区| 国产精品国产| 国产日韩一区| 久久午夜影视| 可以免费看不卡的av网站| 亚洲另类一区二区| 香蕉成人啪国产精品视频综合网| 欧美日韩国产成人| 国模 一区 二区 三区| 欧美日韩色综合| 亚洲在线不卡| 亚洲三级国产| 亚洲国产高清一区二区三区| 久久裸体视频| 久久不射中文字幕| 国产欧美一区二区三区沐欲| 欧美日韩美女在线观看| 亚洲永久免费精品| 亚洲精品一区二区三区不| 久久人91精品久久久久久不卡| 久久精品国产91精品亚洲| 亚洲欧洲视频在线| 欧美三级日本三级少妇99| 欧美一区二区免费| 亚洲欧美日韩一区二区在线| 欧美精品自拍| 99v久久综合狠狠综合久久| 久久精品导航| 欧美一级二级三级蜜桃| 国产色产综合色产在线视频| 一本色道久久综合亚洲精品高清| 亚洲日本va午夜在线影院| 欧美性猛交xxxx乱大交蜜桃| 欧美精品久久久久久久久老牛影院| 久久米奇亚洲| 国产亚洲一二三区| 亚洲视频一二| 欧美人与禽猛交乱配| 亚洲黄色三级| 欧美香蕉视频| 欧美精品九九99久久| 久久亚洲私人国产精品va媚药| 性欧美18~19sex高清播放| 国产一区二区在线观看免费| 美女国内精品自产拍在线播放| 欧美体内she精视频在线观看| 久久综合色88| 久久国产精品免费一区| 亚洲乱码精品一二三四区日韩在线| 在线免费一区三区| 午夜亚洲性色福利视频| 亚洲欧美日韩精品| 国产精品成人v| 精品999久久久| 亚洲精品一区二区三区蜜桃久| 国产主播精品在线| 欧美在线播放一区二区| 亚洲韩国日本中文字幕| 久久一区二区精品| 欧美激情第1页| 日韩视频免费在线观看| 在线视频你懂得一区二区三区| 亚洲免费在线视频一区 二区| 亚洲制服少妇| 午夜在线一区二区| 久久久精品一品道一区| 狼狼综合久久久久综合网| 一区二区不卡在线视频 午夜欧美不卡在| 欧美日本精品一区二区三区| 中文在线资源观看视频网站免费不卡| av成人免费观看| 亚洲欧美成人综合| 亚洲无线视频| 狠狠色丁香久久婷婷综合_中| 久久综合中文色婷婷| 久久夜色精品| 国产精品久久久久久久7电影| 久久人体大胆视频| 国产精品毛片高清在线完整版| 国产嫩草一区二区三区在线观看| 国产综合色精品一区二区三区| 激情国产一区二区| 欧美主播一区二区三区美女 久久精品人| 欧美欧美午夜aⅴ在线观看| 亚洲美女精品一区| 亚洲一区在线观看免费观看电影高清| 99热免费精品| 欧美视频精品一区| 国产精品免费网站在线观看| 激情欧美一区二区| 欧美午夜一区二区福利视频| 欧美日韩亚洲三区| 国产女人aaa级久久久级| 亚洲欧美日韩在线综合| 亚洲综合清纯丝袜自拍| 欧美一区二区三区在线看| av成人激情| 久久国产66| 久久激情视频| 在线观看国产精品淫| 欧美日本高清视频| 国产精品久久国产精品99gif| 欧美日韩国产精品自在自线| 欧美在线视频二区| 亚洲国产成人久久| 久久影视精品| 韩曰欧美视频免费观看| 在线欧美电影| 欧美黑人国产人伦爽爽爽| 久久久久在线观看| 蜜桃伊人久久| 久久在线免费观看| 亚洲综合丁香| 欧美片在线观看| 欧美日韩精品一区二区三区四区| 欧美视频中文字幕在线| 欧美涩涩视频| 国产精品永久| 免费不卡中文字幕视频| 亚洲欧美国产不卡| 欧美精品二区三区四区免费看视频| 欧美一级电影久久| 欧美精品一卡| 欧美日韩国产小视频在线观看| 亚洲摸下面视频| 国产欧美日韩亚洲精品| 欧美在线视频网站| 亚洲第一网站| 久久久精品一区二区三区| 国产精品一区二区在线观看|