女人自慰AV免费观看内涵网,日韩国产剧情在线观看网址,神马电影网特片网,最新一级电影欧美,在线观看亚洲欧美日韩,黄色视频在线播放免费观看,ABO涨奶期羡澄,第一导航fulione,美女主播操b

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于CAN控制器和USB接口芯片實現CAN-USB接口卡系統的軟硬件設計

電子設計 ? 來源:微計算機信息 ? 作者:左小五 ? 2020-07-06 07:59 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

1. 引言

CAN以其優良的性能,廣泛應用在嵌入式系統中,PC機有豐富的軟件和強大的功能,在工業網絡中,將PC機設計成CAN網絡的一個節點,方便數據處理等。

CAN網絡與PC機的連接可通過以下幾種方式:1)CAN-RS232接口卡;2)CAN-PCI接口卡;3)CAN-USB接口卡。CAN-RS232接口卡速度太慢,且不支持熱插拔;CAN-PCI接口卡雖然速度快,但不支持熱插拔。而采用CAN-USB接口卡,不但速度快,而且支持熱插拔,并且可以從系統中直接汲取電流而不需要外部供電。

文中所設計的CAN-USB接口卡,均采用SJA1000和PIDUSBD12, SJA1000為并行總線接口,與現在許多無外部總線的MCU不適應,PIDUSBD12也為并行總線接口,且與MCU的軟件接口編寫復雜,本文中設計的CAN-USB接口卡,USB接口芯片選擇南京沁恒電子有限公司生產的CH375,該芯片支持全速設備接口USB V1.1,該公司提供了完善的USB驅動程序;并且該芯片內部集成了USB 接口SIE、數據緩沖區、被動并行接口、串行接口、命令解釋器、控制傳輸的協議處理器、通用的固件程序等,這樣,以CH375設計的USB設備,不需要詳細了解USB 通訊協議,開發編程非常方便。CAN協議芯片選擇MCP2510,該芯片采用SPI接口,連接方便,有3個發送緩沖區,2個接收緩沖區,寬工作電壓,低功耗。

2. 系統硬件設計

設計CAN-USB接口卡,硬件方面需要USB接口芯片、CAN協議芯片和微處理器。系統的硬件框圖見圖1。

微處理器選擇華邦公司的W78E516,該芯片與MCS-51系列單片機兼容,內部集成有64K的FLASH、看門狗、256字節輔助存儲器,還支持在系統可編程(ISP)。

基于CAN控制器和USB接口芯片實現CAN-USB接口卡系統的軟硬件設計

CH375與MCU的連接提供了并行接口和串行接口,本文采用了并行接口,W78E516與CH375的接口電路如圖2所示。

由于CH375可輸出復位信號,微處理器可利用此復位信號,從而不需要其它專門復位電路。設計中還必須注意,CH375的晶振頻率必須為12MHz,筆者曾經接11.0592 MHz晶振時,系統不能正常工作,改為12MHz時,則可正常工作。

CAN協議芯片選擇MCP2510,總線驅動器采用PCA82C250。設計如圖3所示。如果要求CAN總線上各節點間電氣隔離,可在MCP2510與PCA82C250之間加高速光隔離(如6N137)進行電氣隔離。

3. 下位機程序設計

下位機程序的功能是,當接收到CAN報文,將此報文重新組成適合USB傳輸的數據包,并裝載到USB的發送緩沖區,而當從USB接收到數據包,則將此數據包重新組成適合CAN傳輸的幀。

下位機程序設計采用Keil C進行設計,由于MCP2510是SPI接口,而W78E516沒有SPI接口,故編寫了專門操作SPI接口的程序。

設計中,CAN報文采用了標準11位ID,并且根據CAN幀格式,在單片機內存中,定義CAN報文發送緩沖區和接收緩沖區。

雖然CH375的端點每次最大可傳輸64字節,但為了設計方便,我們設計成每次只傳輸11個字節,用如下的結構體表示。

struct struct_USB

{

unsigned char USB_cmd;

unsigned char Dat[10];

};

USB_cmd中指示每次數據包的含義,以方便PC機與單片機傳遞信息。Dat[10]為將傳輸到CAN總線上的數據,或從CAN總線上接收到的數據。

圖4 程序流程圖

為防止通訊接收溢出,在設計中,為CAN和USB定義了比較大的數據緩沖區,啟用了W78E516芯片上的256字節輔助存儲器,Keil C編譯時配置存儲器模式為Compact模式,但在設計中需要注意的是:main()函數的語句中,必須先用賦值語句對寄存器CHPENR和CHPCON進行配置,啟用W78E516芯片上的256字節輔助存儲器,然后,才能執行函數調用語句,否則程序雖在編譯時可通過,但運行時會出現錯誤。

4.上位機程序設計

上位機程序采用VB進行設計,由于沁恒公司為CH375提供了豐富的動態鏈接庫(API函數),在程序設計時,只需聲明和調用這些API函數,下面介紹編程注意事項。

在程序設計時,程序中調用CH375的第一個API函數應為CH375的設備開啟函數,Declare Function CH375OpenDevice Lib “CH375DLL.DLL” (ByVal iIndex As Long) As Long,該函數的功能是打開CH375設備。關閉應用程序時,需調用設備關閉函數,Declare Sub CH375CloseDevice Lib “CH375DLL.DLL” (ByVal iIndex As Long),該函數的功能是關閉CH375設備。對于PC機向單片機發送數據和接收來自單片機的數據,只需調用相關的API函數即可。

編寫完上位機程序,當CAN-USB接口卡通過USB連接線與PC機的USB接口相連之后,系統會檢測到新硬件,此時,安裝好驅動程序,就可以使用該設備。正常工作時,此卡中與CH375相連的LED亮。

5. 結論

采用CH375和MCP2510設計CAN-USB接口卡,給出了硬件電路圖和軟件流程圖,相對于其它用SJA1000和PIDUSBD12設計的類似產品,本CAN-USB接口卡的硬件接口簡潔,軟件不需要編寫USB固件程序,開發效率高,性能價格比高,在實際使用中,效果良好。另外,由于硬件上采用了獨立的CAN控制器和USB接口芯片,軟件采用C語言設計,所以移植到其它微處理器也比較方便。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 芯片
    +關注

    關注

    459

    文章

    52474

    瀏覽量

    440505
  • 控制器
    +關注

    關注

    114

    文章

    17096

    瀏覽量

    184166
  • usb
    usb
    +關注

    關注

    60

    文章

    8177

    瀏覽量

    272716
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    基于ARM7的CAN-USB轉換設計

    設計了一種CAN-USB轉換實現CAN總線與上位機的實時通信,完成了對CAN總線通信的實時信息采集。
    發表于 10-09 15:39 ?1879次閱讀
    基于ARM7的<b class='flag-5'>CAN-USB</b>轉換<b class='flag-5'>器</b>設計

    USBCAN芯片

    求一種CANUSB芯片,不是網上買的USBCAN接口卡,只是自己想做一下
    發表于 12-11 09:38

    采用CH375和MCP2510設計CAN-USB接口卡

    ,寬工作電壓,低功耗[4]。2. 系統硬件設計設計CAN-USB接口卡硬件方面需要USB
    發表于 05-05 09:29

    基于CAN總線的智能接口卡的設計

    CAN 總線作為一種優秀的現場總線已成為構建現代監測網絡的重要通信平臺之一,而作為各設備之間通信橋梁的接口卡,顯得更為重要。本文介紹一種基于CAN 總線的智能接口卡的設計
    發表于 06-18 10:03 ?22次下載

    基于USB接口卡

    介紹了一種基于USB 總線接口卡系統,利用此上預留的幾種常用接口,用戶板可以非常方便的通過USB
    發表于 08-05 16:11 ?25次下載

    基于LPC2148和MCP2510的高速USB-CAN

    本文介紹了基于LPC2148和MCP2510的USB-CAN接口卡。LPC2148是基于ARM7TDMI-S核的微控制器,處理速度高,內置USB
    發表于 02-25 11:47 ?35次下載

    CAN/RS232接口卡的設計及實現方法

    CAN/RS232接口卡的設計及實現方法 控制器局域網(Controller Area Network,CAN)屬于現場總線的范疇,其總線
    發表于 03-25 09:08 ?3791次閱讀
    <b class='flag-5'>CAN</b>/RS232<b class='flag-5'>接口卡</b>的設計及<b class='flag-5'>實現</b>方法

    CAN計算機接口卡系列產品選型指南詳細資料免費下載

    一般來說計算機本身不帶CAN接口,所以直接使用計算機和CAN網絡是不能互聯的。但是很多商用或者工業應用計算機控制系統都離不開CAN-bus,
    發表于 11-05 17:36 ?6次下載
    <b class='flag-5'>CAN</b>計算機<b class='flag-5'>接口卡</b>系列產品選型指南詳細資料免費下載

    基于CAN總線接口卡的軟件設計

    硬件部分主要包括主控制器CAN總線控制器CAN總線收發以及與計算機的RS 232通信
    發表于 03-26 13:56 ?1835次閱讀

    廣成usb-can接口卡功能講解(1)

    usb-can接口卡也叫USBCAN分析儀,是我們進行CAN總線數據檢測的基礎設備。很多的廠家都開放了有自己特色的USBCAN,我們廣成科技也不例外。為了方便大家了解廣成usb-can
    的頭像 發表于 01-03 10:26 ?3295次閱讀

    廣成usb-can接口卡功能講解(2)

    今天我們繼續聊有關廣成usb-can接口卡功能的一些事情,今天講的是設備的數據保存功能,好的我們開始。
    的頭像 發表于 01-03 10:31 ?2177次閱讀

    廣成usb-can接口卡功能講解(3)

    今天我們繼續介紹廣成科技usb-can接口卡的功能,今天說的是顯示功能以及清除數據功能。
    的頭像 發表于 01-03 10:40 ?2329次閱讀

    廣成usb-can接口卡功能講解(4)

    今天我們講的是廣成usb-can接口卡的濾波功能。其實除了usb-can接口卡以外,廣成科技還有很多的CAN轉換網關也集成了相關的功能。那么
    的頭像 發表于 01-03 10:43 ?2017次閱讀

    USBCAN 8E U高性能USBCAN接口卡用戶手冊

    電子發燒友網站提供《USBCAN 8E U高性能USBCAN接口卡用戶手冊.pdf》資料免費下載
    發表于 10-17 11:01 ?1次下載
    USBCAN 8E U高性能<b class='flag-5'>USB</b>轉<b class='flag-5'>CAN</b><b class='flag-5'>接口卡</b>用戶手冊

    USBCAN I/II+智能USBCAN接口卡用戶手冊

    電子發燒友網站提供《USBCAN I/II+智能USBCAN接口卡用戶手冊.pdf》資料免費下載
    發表于 10-17 10:50 ?4次下載
    USBCAN I/II+智能<b class='flag-5'>USB</b>轉<b class='flag-5'>CAN</b><b class='flag-5'>接口卡</b>用戶手冊