《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > CP2102與C8051F040的USB-CAN轉換器設計
CP2102與C8051F040的USB-CAN轉換器設計
摘要: 隨著計算機技術的飛速發展,PC這個已經把USB采納為通用總線和通用接口標準的控制器幾乎已經成為各個領域操控終端的不二之選。只要接口標準統一,并安裝必要的應用軟件和驅動程序,PC就能接入到各個控制系統中去。因此,為了應用的高效率和操控的便利性,完全有必要采用技術手段實現通過PC的USB接口接入CAN專業網絡,把USB的通用性和CAN的專業性結合起來,把它們的優勢融合。
Abstract:
Key words :

  引 言

   CAN(Controller Area Network,控制器局域網)總線是德國Bosch公司在20世紀80年代初為解決汽車中眾多控制與測試儀器間的數據交換而開發的一種串行數據通信協議,主要用于各種設備檢測及控制。CAN總線是一種多主機控制局域網標準,具有物理層和數據鏈路層的網絡協議、多主節點、無損仲裁、高可靠性及擴充性能好等特點,能有效支持分布式控制系統的串行通信網絡。一方面,其通信方式靈活,可實現多主方式工作,還可實現點對點、點對多點等多種數據收發方式;另一方面,它能在相對較大的距離間進行較高位速率的數據通信。因此無論是在高速網絡還是在低成本的節點系統,CAN總線都得到了廣泛的應用。USB(Universal Serial Bus,通用串行總線)是1995年以Intel為首的7家公司推出的一種協議規范,具有即插即用、軟硬件支持廣泛、功耗低、價格低、數據傳輸率高、硬件結構標準化和總線拓撲結構完備等特點,因此USB自1995年問世以來,顯示出了強大的生命力。在以計算機為上位機的控制系統中,USB口比較適合作為計算機與測控網絡的接口。

   隨著計算機技術的飛速發展,PC這個已經把USB采納為通用總線和通用接口標準的控制器幾乎已經成為各個領域操控終端的不二之選。只要接口標準統一,并安裝必要的應用軟件和驅動程序,PC就能接入到各個控制系統中去。因此,為了應用的高效率和操控的便利性,完全有必要采用技術手段實現通過PC的USB接口接入CAN專業網絡,把USB的通用性和CAN的專業性結合起來,把它們的優勢融合。

  1 芯片的選擇

  1.1 CP2102芯片介紹

   CP2102是Silicon Labs公司研發的一種高度集成的USB轉UART橋接芯片,具有價格低、開發簡單等特點,能夠用最簡單的外部電路和最少的外部器件簡便地實現USB到UART的轉換。CP2102包含USB2.O全速功能控制器、USB收發器、振蕩器和帶有全部調制解調器控制信號的異步串行數據總線(UART)。該芯片的全部功能集成在一個5mm×5 mm的QFN28封裝的IC中。CP2102內置與計算機通信的協議,工作時,所提供的免費的實用COM口器件驅動器允許基于CP2102的產品將其作為1個口使用,也就是通常所說的產生1個虛擬的口,而電路無需任何外部的USB器件即可工作,工作特性可以滿足CAN總線的傳輸波特率要求。

  1.2 C8051F040芯片介紹

   C8051F系列單片機是Silicon Labs公司推出的混合信號系統級芯片,具有與80C51兼容的CIP一51內核,指令集與MCS一51完全兼容。C8051F040內部集成的CAN控制器包括一個CAN內核、消息RAM(獨立于CIP一51內核)、消息處理單元、控制寄存器等。C8051F040內部的CAN控制器是一個協議控制器,它并沒有提供物理層的驅動器,實現與CAN總線的接口,例如82C250、TJAl050等。數據接收和濾波都由CAN控制器完成,不需要CIP一51內核的參與。通過這種方式使CAN通信時占用的系統資源最小。CIP一51內核通過其內部的特殊功能寄存器來配置CAN控制器以及實現數據交互。C8051F040內部的CAN結構框圖如圖1所示。

 

CP2102與C8051F040的<a class=USB-CAN轉換器" onclick="get_larger(this)" p="" src="http://files.chinaaet.com/images/20110726/1e0f24a9-bd4a-4f75-b280-bd317322578c.jpg" style="WIDTH: 521px; HEIGHT: 356px" title="USB-CAN轉換器" width="550" />

 

  CAN的控制協議寄存器包括控制寄存器CANOCN、狀態寄存器CANOSTA、測試寄存器CANOTST、錯誤計數寄存器、位定時寄存器、波特CAN控制器、處理中斷、監視總線狀態、設定控制器的測試模式等。CAN控制器收發的數據存放在消息RAM中,CAN處理器有32個消息目標,可以通過配置用于數據發送或接收。這些消息RAM的數據不能被直接訪問,而必須通過接口寄存器IFl或IF2來訪問。除此之外,可以被直接訪問的寄存器是CANOCN、CANOSTA、CANOTST。CAN內部其他不能被直接訪問的寄存器通過CANOADR、CANODATH、CANODATL這三個寄存器來訪問,這三個寄存器分別表示要訪問的寄存器的地址和數據,向CANOADR中寫入要訪問的寄存器地址后,對CANODAT的讀/寫就相當于讀/寫相應的寄存器。由于C8051F040內部集成了CAN總線控制器,所以只需外加總線驅動器并加上適當的隔離就可以了,電路顯得非常簡潔。

  2 硬件實現

   系統電路如圖2所示,由CP2102、C8051F040、CAN驅動芯片PCA82C250以及光電隔離芯片6N137等組成。CP2102的RTX、TXD引腳分別是串口的接收及輸出端,與單片機的對應引腳相連。USB的終止和恢復信號支持功能便于CP2102器件以及外部電路的電源管理。當在總線上檢測到終止信號時,CP2102將進入終止模式。在進入終止模式時,CP2102會發SUSPEND和SUSPEND信號。但是,SUSPEND和SUSPEND在CP2102復位期間會暫時處于高電平。為避免這種情況出現,需要用1個10kΩ的電阻來確保SUSPEND在復位期間保持在低電平。PCA82C250是CAN收發器,可增加總線驅動能力,RS端接地,系統處于高速工作方式。6N137是光電隔離芯片,CAN總線信號CANTX和CANRX從C8051F040出來后先分別經過高速光耦6N137進行電氣隔離,再經過CAN總線控制器接口芯片82C250驅動,然后接到CAN數據線上。6N137實現智能節點與CAN總線之間的電氣隔離,不但提高了節點的可靠性和系統的抗干擾能力,而且也保護了總線及總線上的其他節點。總線兩端124Ω的電阻對,防止通信信號傳輸到導線端點時發生反射。

CP2102與C8051F040的USB-CAN轉換器設計

  3 USB與CAN之間協議轉換的實現

   設計在充分遵守USB和CAN協議的基礎上,實現了USB數據與CAN數據之間的協議轉換和轉發。在設計過程中,USB的高速率和CAN的低速率,以及USB的大數據包和CAN的小數據包之間存在著矛盾,必須認真解決,否則可能造成數據丟失、協議轉換不可靠、設備工作不穩定。本設計中USB和CAN都采用了接收中斷方式,將USB和CAN的數據包先存儲下來,作為緩沖進一步處理。在接收中斷服務程序的數據時,只有將數據準確地收取下來,才將接收緩沖區釋放,在此之前拒絕接收新的數據。在數據發送時,先確認發送緩沖區可用才寫入數據。由于兩端接口芯片都有內部的發送和接收緩沖區,主程序的主要任務就是完成數據的轉發,以及提供通信同步的握手協議,防止數據丟失和順序錯誤。

   相對于CAN總線傳輸速率,USB總線速率要高得多,128字節的緩沖區也比CAN總線芯片8字節緩沖區大得多。因此,向CAN接口發送數據需要完成拆包和重新打包的任務,屬較慢的操作,采用定時查詢式發送。CAN接收任務時,每次盲接轉發CAN接口收到的8字節數據到USB接口發送緩沖區,采用2個信號量(CAN—rcv,USB—wr)完成數據同步操作。數據轉發工作共有以下4個任務協調配合完成。

   (1)USB中斷后續處理任務

   CP2102接收到數據或發送完成,都會觸發中斷程序運行。中斷處理程序只需要簡單地通知此任務有中斷發生,以盡量減少中斷關閉的時間。因此,這個任務的優先級最高,并且一旦開始運行便不再等待其他事件,要盡快處理完成。此任務根據USB接口的不同中斷原因,通知其他任務進行后續的數據處理或轉發工作。

   (2)控制端點信息處理任務

   當USB接口接收到主機發來的USB協議信息時,此任務得到通知。根據主機的要求,該任務按照USB協議規范的數據格式對主機應答。它主要用于USB設備枚舉階段,與主機之間進行信息交換。其他時間,此任務不占用處理器時間。

   (3)CAN總線發送任務

   當USB接口有新的數據要轉發到CAN總線時,USB中斷后續處理任務通知此任務運行。讀出USB芯片接收緩沖區中的數據到內存緩沖區,然后分解成小于或等于8字節的數據包,增加CAN總線協議數據包頭,送入C805lF040的發送緩沖區。微處理器的主要處理時間就是USB數據包的分解和重新打包發送。

   此任務占用處理器的時間最長。CAN發送任務每次等待USB接收中斷觸發USB_rd信號量后,開始讀取CP2102接收緩沖區數據到內存數組Ep2out_Bur[128],然后采用查詢式發送方式,將數據送到C8051F040的發送緩沖區,每次8字節。在查詢過程中,如果C8051F040處于正在發送中,將任務休眠3個時鐘嘀嗒(<5 ms),然后再次查詢,避免長時間占用處理器。

 

   (4)CAN總線接收任務

   當CAN總線接收到數據后,由于數據包最多只有8個字節,因此可以一次放入USB接口芯片發送緩沖區,由主機讀取。此任務很少占用處理器時間。主要是為了協調CAN總線與USB總線之間數據轉發的同步,使數據包可以按照原來的順序接收到,并且不覆蓋尚未發送的上一個數據包,避免數據丟失。CAN接收中斷首先讀C8051F040中斷寄存器,清除中斷標志。然后觸發CAN—rcv信號量,使CAN接收任務得以運行。CAN接收任務然后等待USB發送完成中斷觸發USB—wr信號量,表示USB接口可以發送新的數據。由于USB接口緩沖區較大,并且發送速度快,CAN接收任務直接將CAN接收到的數據送入USB接口芯片CP2012的發送緩沖區。然后打開CAN接收中斷。

  結 語

   在遵守USB和CAN協議的基礎上,USB和CAN都采用了接收中斷方式,通過通信同步的握手協議,實現了USB數據與CAN數據之間的協議轉換和轉發,很好地解決了USB的高速率和CAN的低速率,以及USB的大數據包與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>
          亚洲三级毛片| 国产九色精品成人porny| 亚洲大片精品永久免费| 久久综合久久综合久久综合| 亚洲一区二区三区乱码aⅴ| 亚洲欧洲一区二区在线播放| 欧美手机在线视频| 久久国内精品视频| 亚洲激情不卡| 欧美一区2区三区4区公司二百| 欧美精品激情在线观看| 亚洲人成在线播放网站岛国| 亚洲福利专区| 亚洲影院在线| 亚洲美女电影在线| 麻豆国产精品va在线观看不卡| 一区视频在线播放| 国产综合色在线视频区| 久久爱另类一区二区小说| 国产精品久久久久久久app| 久久成人免费电影| 国产精品伦子伦免费视频| 午夜精品久久久久久久久久久久久| 日韩午夜在线视频| 国产精品久久久久久久久果冻传媒| 国产精品成人一区二区| 欧美日韩精品一区二区三区四区| 欧美一级在线视频| 国产精品毛片在线| 在线精品视频一区二区| 亚洲欧美国产日韩中文字幕| 一区二区三区高清在线观看| 亚洲理论电影网| 欧美精品一区二区三| 久久亚洲精品一区| 欧美日韩精品三区| 在线亚洲欧美专区二区| 亚洲一区二区三区影院| 亚洲人人精品| 亚洲国产一区二区三区高清| 国产精品男人爽免费视频1| 久久av二区| 一本久道久久综合中文字幕| 麻豆精品一区二区av白丝在线| 在线观看福利一区| 国产精品国产亚洲精品看不卡15| 欧美大成色www永久网站婷| 国产精品一二三视频| 性久久久久久久久| 国产精品专区第二| 国产精品尤物福利片在线观看| 欧美日本网站| 国产喷白浆一区二区三区| 免费观看不卡av| 国产在线欧美日韩| 久久久久久久精| 欧美日韩免费网站| 国产精品区二区三区日本| 国产区在线观看成人精品| 欧美精品久久久久久久| 欧美国产日韩一区二区三区| 亚洲免费黄色| 欧美性猛交一区二区三区精品| 欧美精品一区二区三区很污很色的| 亚洲国产精品一区二区www在线| 欧美视频专区一二在线观看| 欧美午夜欧美| 欧美a级片一区| 久久偷看各类wc女厕嘘嘘偷窃| 国产精品极品美女粉嫩高清在线| 亚洲色图在线视频| 欧美日韩在线亚洲一区蜜芽| 欧美亚男人的天堂| 亚洲一区二区三区国产| 91久久在线| 精品99一区二区| 亚洲欧美欧美一区二区三区| 久久精品人人做人人爽| 欧美在线国产| 影音先锋久久资源网| 亚洲精品一区久久久久久| 欧美一区免费视频| 欧美成人综合网站| 亚洲一区观看| 在线播放一区| 欧美日韩另类一区| 欧美日韩久久久久久| 亚洲美女视频在线观看| 亚洲精品资源| 亚洲永久精品大片| 亚洲国产精品尤物yw在线观看| 免费成人黄色av| 农夫在线精品视频免费观看| 欧美日韩中文字幕| 亚洲国产中文字幕在线观看| 欧美在线一区二区| 国产视频精品va久久久久久| 久久久五月天| 国产精自产拍久久久久久蜜| 久久久一区二区三区| 久久人人超碰| 亚洲精品婷婷| 美女视频网站黄色亚洲| 国产精品一区视频网站| 精久久久久久| 欧美精品一区在线播放| 一本久道久久综合婷婷鲸鱼| 99riav久久精品riav| 欧美日韩 国产精品| 国产伦精品一区二区三区| 国内精品伊人久久久久av一坑| 久久亚裔精品欧美| 欧美日本韩国在线| 亚洲欧美日韩综合| 午夜在线观看欧美| 欧美激情视频一区二区三区在线播放| 永久91嫩草亚洲精品人人| 欧美精品性视频| 欧美日韩国产在线播放| 伊人久久婷婷色综合98网| 在线观看91久久久久久| 激情久久五月天| 国产麻豆视频精品| 国产精品盗摄一区二区三区| 激情欧美国产欧美| 亚洲综合999| 欧美日韩伦理在线| 国产精品美女久久福利网站| 国产午夜精品一区二区三区欧美| 一本久久知道综合久久| 久久精品日韩欧美| 欧美—级a级欧美特级ar全黄| 亚洲国产精品www| 国产真实久久| 在线视频日韩| 欧美电影免费观看高清完整版| 欧美在线视频播放| 国语自产偷拍精品视频偷| 狠狠久久五月精品中文字幕| 亚洲福利视频网| 亚洲国产精品123| 久久国产精品99国产| 欧美日本在线| 亚洲无线观看| 激情综合色综合久久综合| 国产亚洲永久域名| 亚洲午夜女主播在线直播| 亚洲国产专区校园欧美| 亚洲欧洲精品一区二区三区不卡| 国产精品久久久久久久电影| 韩日午夜在线资源一区二区| 一本色道88久久加勒比精品| 午夜在线观看欧美| 欧美怡红院视频一区二区三区| 国产亚洲精品久久飘花| av成人国产| 亚洲最新视频在线播放| 久久中文字幕导航| 欧美激情一区二区久久久| 久久国产精品亚洲va麻豆| 最新亚洲一区| 免费观看在线综合| 欧美精品在线播放| 国产精品视频精品视频| 性感少妇一区| 在线看片日韩| 欧美日韩另类综合| 韩国v欧美v日本v亚洲v| 久久亚洲电影| 国产精品美女久久久久aⅴ国产馆| 亚洲视频在线观看一区| 欧美精品v国产精品v日韩精品| 欧美精品激情blacked18| 一区二区在线不卡| 亚洲破处大片| 免费久久99精品国产自| 免费观看国产成人| 国产精品成人aaaaa网站| 欧美黄污视频| 国产精品影视天天线| 亚洲伊人观看| 欧美在线观看一区二区三区| 亚洲黄色尤物视频| 久久免费偷拍视频| 亚洲精品女人| 免费亚洲一区| 狠狠久久综合婷婷不卡| 欧美日韩综合一区| 久久福利视频导航| 一本综合精品| 国产精品欧美在线| 一色屋精品亚洲香蕉网站| 欧美一区中文字幕| 亚洲美女视频在线免费观看| 亚洲精品久久嫩草网站秘色| 国产精品每日更新在线播放网址| 一色屋精品视频在线看| 91久久精品国产91久久| 亚洲淫性视频| 亚洲精品久久在线| 午夜日韩福利| 久久精品国产一区二区三| 国产一区久久久| 伊人成综合网伊人222| 欧美电影免费观看高清完整版| 亚洲男人的天堂在线观看| 国内成+人亚洲+欧美+综合在线| 欧美欧美在线| 欧美永久精品| 国内精品模特av私拍在线观看| 亚洲精品日韩欧美| 国产亚洲视频在线| 欧美午夜精品一区二区三区| 国产精品日韩精品欧美精品| 免费不卡欧美自拍视频| 欧美日韩午夜精品| 国产精品mm| 在线视频一区二区| 久久综合成人精品亚洲另类欧美| 亚洲国内欧美| 伊人狠狠色丁香综合尤物| 日韩一二三区视频| 这里只有精品在线播放| 一区二区视频免费完整版观看| 国产日韩精品在线播放| 亚洲国产精品成人久久综合一区| 国产精品视频久久一区| 亚洲精品久久| 欧美夜福利tv在线| 久久激情综合网| 欧美一区三区三区高中清蜜桃| 国产色婷婷国产综合在线理论片a| 欧美精品一区二区三区蜜桃| 亚洲人成精品久久久久| 99在线精品视频在线观看| 久久国产视频网站| 欧美激情第五页| 欧美激情一区二区三区| 久久频这里精品99香蕉| 欧美午夜精品一区二区三区| 亚洲精品美女免费| 亚洲精品系列| 欧美精品久久久久久久免费观看| 午夜精品视频| 国产视频一区在线观看| 快she精品国产999| 亚洲欧美视频一区二区三区| 久久噜噜亚洲综合| 国产视频一区在线观看一区免费| 久久久99久久精品女同性| 日韩视频久久| 黄网动漫久久久| 国产婷婷色一区二区三区在线| 国产精品一区二区久久久| 久久一区亚洲| 日韩亚洲视频在线| 亚洲国产精品黑人久久久| 国产精品久久久爽爽爽麻豆色哟哟| 欧美日韩另类综合| 国产一区二区精品久久91| 久久精品国产91精品亚洲| 欧美极品在线观看| 伊人久久男人天堂| 亚洲欧美激情精品一区二区| 亚洲永久免费观看| 国产视频在线一区二区| 99精品欧美一区二区蜜桃免费| 亚洲精一区二区三区| 亚洲国产欧美不卡在线观看| 欧美日韩一区三区| 亚洲国产精品久久久久婷婷884| 午夜国产精品影院在线观看| 葵司免费一区二区三区四区五区| 久久精品一区二区国产| 久久免费99精品久久久久久| 国内精品免费午夜毛片| 亚洲另类一区二区| 久久久噜噜噜久噜久久| 久久久久久久久久看片| 午夜精品免费视频| 中文在线资源观看视频网站免费不卡| 欧美性开放视频| 免费欧美高清视频| 蜜臀av国产精品久久久久| 国产欧美日韩中文字幕在线| 国产日韩在线看片| 国产日产精品一区二区三区四区的观看方式| 一区二区三区精品在线| 欧美日韩一区二区视频在线| 国产精品久久久久久影院8一贰佰| 亚洲国产日韩一区| 91久久精品国产91性色| 国产精品日本| 亚洲一区二区黄| 国产精品v一区二区三区| 亚洲电影免费观看高清完整版| 亚洲综合另类| 久久久视频精品| 老司机aⅴ在线精品导航| 欧美在线视频观看免费网站| 欧美国产极速在线| 9色porny自拍视频一区二区| 国产欧美一区二区三区国产幕精品| 国产精品日韩精品欧美在线| 国产一级久久| 欧美大片一区二区| 亚洲黄色三级| 久久精精品视频| 久久亚洲春色中文字幕久久久| 久久亚洲精品欧美| 亚洲深夜av| 韩国精品在线观看| 韩国自拍一区| 国产真实精品久久二三区| 久久蜜桃av一区精品变态类天堂| 亚洲国产精品电影在线观看| 欧美日韩视频在线第一区| 99在线热播精品免费99热| 一区二区三区在线视频观看| 欧美成人按摩| 欧美日韩一卡二卡| 欧美视频精品在线观看| 亚洲欧美国产不卡| 国产欧美一二三区| 亚洲成人自拍视频| 最新中文字幕亚洲| 国产精品呻吟| 欧美在线播放视频|