0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學(xué)習在線(xiàn)課程
  • 觀(guān)看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區
會(huì )員中心
創(chuàng )作中心

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

3天內不再提示

CAN總線(xiàn)與RS-232接口設備的數據傳輸電路設計

電子設計 ? 來(lái)源:網(wǎng)絡(luò )整理 ? 作者:佚名 ? 2020-02-06 07:02 ? 次閱讀

CAN(Controller Area Network)總線(xiàn)是德國BOSCH公司為解決現代汽車(chē)中眾多控制與測試之間的數據交換開(kāi)發(fā)的一種串行數據通信協(xié)議,是一種多主方式的串行通信總線(xiàn)。CAN總線(xiàn)是一種開(kāi)放式、數字化、多點(diǎn)通信的控制系統局域網(wǎng),具有通信速率高、傳輸時(shí)間短、傳輸距離遠、糾錯能力強、控制簡(jiǎn)單、擴展能力強以及性?xún)r(jià)比高等特點(diǎn),是目前國際上應用最廣泛的現場(chǎng)總線(xiàn)之一。但是目前PC機普遍配置RS232串行通信接口,沒(méi)有CAN總線(xiàn)接口。實(shí)際中很多設備帶有RS-232接口沒(méi)有CAN總線(xiàn)接口,為了方便具有RS-232接口的設備與CAN總線(xiàn)的數據通信,本文完成了基于單片機ATMega16控制的CAN總線(xiàn)與RS-232轉換器電路設計和軟件設計,實(shí)現了CAN總線(xiàn)數據與RS-232接口設備的數據傳輸。

一、簡(jiǎn)述CAN總線(xiàn)與RS232協(xié)議

CAN作為一種多主方式的串行通訊總線(xiàn),其基本設計規范要求高位速率和較高的抗電磁干擾性能,而且要能夠檢測出通訊總線(xiàn)上產(chǎn)生的任何錯誤。當信號傳輸距離達10km時(shí),CAN仍可提供高達5kbit/s的數據傳輸速率。表1為CAN總線(xiàn)上任意兩個(gè)節點(diǎn)之間最大傳輸距離

與其位速率之間的對應關(guān)系。

由此可見(jiàn),無(wú)論從實(shí)時(shí)性、適應性、靈活性,還是可靠性上來(lái)看,CAN總線(xiàn)都是一種比較優(yōu)秀的串行總線(xiàn)。當兩臺串口設備的相距較遠,不能直接用RS-232把它們連接起來(lái)時(shí),就可以把RS-232轉換為CAN,通過(guò)CAN總線(xiàn)來(lái)實(shí)現串口設備的網(wǎng)絡(luò )互連。

CAN總線(xiàn)與RS-232接口設備的數據傳輸電路設計

表1 CAN總線(xiàn)系統任意兩節鼎足之勢之間的最大距離

RS-232和CAN在電平和幀格式上都是很大的不同。具體表現如下:RS-232標準電平±(3V~15V)之間。而CAN信號則使用差分電壓傳送,兩條信號線(xiàn)稱(chēng)為“CAN_H”和“CAM_L”,靜態(tài)時(shí)均為2.5V左右;RS-232串口的幀格式為:一位起始位,八位數據位,一位可編程的第九位,一位停止位。而CAN的數據幀格式為:幀信息+ID+數據。

二、CAN總線(xiàn)轉RS232總體設計

CAN總線(xiàn)轉2 3 2 的接口硬件電路, 主要選用MAX232、ATMega16、SJAl000和MCP2551設計實(shí)現。

其原理框圖如圖1所示。

CAN總線(xiàn)與RS-232接口設備的數據傳輸電路設計

三、轉換器硬件設計

3.1 主控制器設計

主控制器選擇ATMEL公司的ATMega16作為主處理器,該芯片是一個(gè)低電壓,高性能單片機,片內含可反復擦寫(xiě)的EEPROM和隨機存取數據存儲器(RAM),兼容標準MCS-51指令系統。

ATMega16有44個(gè)引腳,32個(gè)外部雙向I/0端口,同時(shí)內含3個(gè)外中斷口,2個(gè)8位和1個(gè)16位可編程定時(shí)計數器,1個(gè)全雙工串行通信口,ATMega16可按常規方法進(jìn)行編程,也可在線(xiàn)編程。ATMega16的4腳接復位電路,低電平有效;9,10腳接MAX232的數據接收/發(fā)送端;PD口腳接SJAl000的控制端端;7,8腳接晶振電路;PB口接SJAl000的復用地址/數據總線(xiàn)。

3.2 MAx232電路設計

選擇MAX232芯片作為RS232與CAN總線(xiàn)的電平轉換器。MAX232是一種電平轉換驅動(dòng)器,提供TTL與RS232電平的轉換。其13、14腳接到232接口的2、3針;11、12腳接到單片機的接收、發(fā)送端。

3.3 CAN控制器電路設計

選用Phi l ip公司的SJAl000芯片實(shí)現CAN控制器和CAN總線(xiàn)驅動(dòng)器。SJAl000控制器與單片機硬件連接電路設計,如圖2、3所示。

CAN總線(xiàn)與RS-232接口設備的數據傳輸電路設計

CAN總線(xiàn)與RS-232接口設備的數據傳輸電路設計

為使SJAl000正確復位,CAN控制器必須連接一個(gè)穩定的振蕩器時(shí)鐘,這里選擇16MHz的晶振。

3.4收發(fā)器電路設計

收發(fā)器是協(xié)議控制器和物理傳輸線(xiàn)路之間的接口,這里由MCP2551實(shí)現。協(xié)議控制器通過(guò)串行數據輸出線(xiàn)(Tx)和串行數據輸入線(xiàn)(RX)連接到收發(fā)器,收發(fā)器通過(guò)有差動(dòng)發(fā)送和接收功能的兩個(gè)總線(xiàn)終端CANH和CANI。連接到總線(xiàn)電纜,實(shí)現CAN總線(xiàn)的數據通信。如圖4所示。

CAN總線(xiàn)與RS-232接口設備的數據傳輸電路設計

四、主程序設計

在微處理控制下,RS-232和CAN進(jìn)行數據交換時(shí),采用CAN查詢(xún)方式和串口發(fā)送可提高工作效率。其主程序流程圖如圖5所示。SJA1000的初始化在復位模式下才可以進(jìn)行,主要包括工作方式的設置、時(shí)鐘分頻和驗收濾波寄存器的設置、波特率參數的設置以及中斷允許寄存器的設置等。數據能否準確傳遞還取決于波特率和流量控制,這也是軟件設計時(shí)不可忽略的地方。

CAN總線(xiàn)與RS-232接口設備的數據傳輸電路設計

串口波特率采用9600 bit/s,系統上電初始化后CAN控制器查詢(xún)發(fā)送標志位,一旦發(fā)送緩沖區空就發(fā)送數據。同時(shí)也檢測狀態(tài)寄存器的接收標志位,當有數據接收時(shí)讀取接收緩沖區,然后判斷接收數據幀,當接收幀為錯誤幀就丟掉數據并將CAN控制器復位,如果數據幀是正確幀就將該幀打包成符合RS232協(xié)議的幀結構,通過(guò)串口發(fā)送出去。

五、結束語(yǔ)

本文采用ATMega16、SJAl000、MCP2551和MAX232,設計開(kāi)發(fā)了CAN總線(xiàn)轉232的接口,完成了兩種協(xié)議的轉換,實(shí)現了CAN總線(xiàn)與RS232通信接口設備之間的通信。測試和實(shí)際使用表明該接口運行穩定、可靠,達到了設計要求。

責任編輯:gt


聲明:本文內容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權轉載。文章觀(guān)點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習之用,如有內容侵權或者其他違規問(wèn)題,請聯(lián)系本站處理。 舉報投訴
  • 轉換器
    +關(guān)注

    關(guān)注

    27

    文章

    8282

    瀏覽量

    143431
  • CAN
    CAN
    +關(guān)注

    關(guān)注

    56

    文章

    2510

    瀏覽量

    460771
  • 總線(xiàn)
    +關(guān)注

    關(guān)注

    10

    文章

    2735

    瀏覽量

    87390
收藏 人收藏

    評論

    相關(guān)推薦

    RS-232RS-485信號超長(cháng)距離通信解決方案

    ,此種通信方式和通常的RS-485總線(xiàn)類(lèi)似,在網(wǎng)絡(luò )中每個(gè)掛有型號為CAN232G的RS-232光隔超遠程驅動(dòng)器的RS-232
    發(fā)表于 05-27 15:07

    串口通信發(fā)展史 RS-232有哪些優(yōu)點(diǎn)

    定義了數據終端設備(DTE)和數據通信設備(DCE)間按位串行傳輸接口信息,合理安排了接口的電
    發(fā)表于 10-16 10:01

    USB數據傳輸接口電路設計

      USB數據傳輸接口電路設計  USB接口數據傳輸速度快、連接簡(jiǎn)單、兼容性好等特點(diǎn)。汽車(chē)行駛記錄儀國家標準考慮到
    發(fā)表于 06-17 05:00

    怎樣去設計RS-485遠距離通信接口數據傳輸接口?

    本設計綜合實(shí)現了PC主機與DSP從機的RS-485遠距離通信接口和DSP從機與CAN現場(chǎng)總線(xiàn)數據傳輸
    發(fā)表于 06-03 06:52

    通過(guò)RS485總線(xiàn)或者CAN總線(xiàn)的方式達到數據傳輸

    引言在一般的項目開(kāi)發(fā)過(guò)程中,往往需要兩塊或以上單片機進(jìn)行通信完成數據傳輸,例如四旋翼無(wú)人機在飛行過(guò)程中無(wú)線(xiàn)傳輸數據回到地面站,治療儀器需要實(shí)時(shí)將患者和機器運轉情況傳回上位機平臺,糧倉溫控裝置需將各種傳感器通過(guò)
    發(fā)表于 08-23 09:01

    RS232接口概述

    。連接電纜和機械、電氣特性、信號功能及傳送過(guò)程?! ?b class='flag-5'>RS-232-C標準規定的數據傳輸速率為每秒50、75、100、150、300、600、1200、2400、4800、9600、19200波特?! ?b class='flag-5'>RS232特點(diǎn):  
    發(fā)表于 02-16 07:49

    使用自動(dòng)選向控制的隔離式RS-232RS-485轉換器

    接口,而且本身極易受噪聲影響。它的總線(xiàn)最大長(cháng)度被限定在20米(60英尺)左右。盡管允許進(jìn)行全雙工數據傳輸(通過(guò)一些單獨的信號導線(xiàn)同時(shí)發(fā)送和接收數據),但是
    發(fā)表于 11-23 07:05

    基于單片機的CANRS-232轉換器設計

    本文完成了基于單片機控制的CANRS-232 轉換器的研究與設計,設計了AT89C51單片機對RS-232 接口CAN 模塊的控制,解
    發(fā)表于 08-31 11:45 ?62次下載

    基于CAN總線(xiàn)RS-232串口設備遠程通信

    基于CAN總線(xiàn)RS-232串口設備遠程通信 闡述了CAN總線(xiàn)
    發(fā)表于 09-27 16:07 ?1379次閱讀
    基于<b class='flag-5'>CAN</b><b class='flag-5'>總線(xiàn)</b>的<b class='flag-5'>RS-232</b>串口<b class='flag-5'>設備</b>遠程通信

    RS-232 接口,RS-232 接口是什么意思

    RS-232 接口,RS-232 接口是什么意思 電纜長(cháng)度限制 RS-232的最初標準建議將電纜長(cháng)度限制在50 ft以?xún)?,對于?0 00
    發(fā)表于 03-09 10:57 ?6.1w次閱讀

    RS-232接口實(shí)現串口數據傳輸的點(diǎn)對點(diǎn)通信設計

    單片機在控制本地的外圍期間時(shí),信息的交互是通過(guò)8位并行數據總線(xiàn)進(jìn)行的,但是在較大規模的現代控制系統中,單片機還需要控制遠端的設備,可以利用單片機的串行通信模塊,在學(xué)習了RS-232串口
    發(fā)表于 03-03 15:19 ?3453次閱讀
    <b class='flag-5'>RS-232</b><b class='flag-5'>接口</b>實(shí)現串口<b class='flag-5'>數據傳輸</b>的點(diǎn)對點(diǎn)通信設計

    實(shí)現RS-232數據傳輸的一些工業(yè)用數據鏈路

    高達±13V的高信號擺幅,但RS-232仍然是一種非平衡或單端接口,而且本身極易受噪聲影響。它的總線(xiàn)最大長(cháng)度被限定在20米(60英尺)左右。盡管允許進(jìn)行全雙工數據傳輸(通過(guò)一些單獨的信
    的頭像 發(fā)表于 11-23 10:54 ?1061次閱讀

    為惡劣的工業(yè)應用設計可靠的隔離式RS-232數據接口

    工業(yè)和儀器儀表(I&I)應用的一個(gè)關(guān)鍵要求是通過(guò)診斷端口檢查連接系統的可靠數據接口。RS-232總線(xiàn)標準是I&I應用中最古老,使用最廣泛的物理層總線(xiàn)
    的頭像 發(fā)表于 01-17 09:26 ?2769次閱讀
    為惡劣的工業(yè)應用設計可靠的隔離式<b class='flag-5'>RS-232</b><b class='flag-5'>數據</b><b class='flag-5'>接口</b>

    RS232、RS485和CAN究竟能傳輸多遠距離?

    RS-232/422/485和CAN總線(xiàn)是物聯(lián)網(wǎng)應用中比較常見(jiàn)的通訊方式,可用于不同設備間進(jìn)行數據傳輸和通信。不同的通訊線(xiàn)具有不同的
    的頭像 發(fā)表于 12-15 08:20 ?982次閱讀
    <b class='flag-5'>RS232</b>、<b class='flag-5'>RS</b>485和<b class='flag-5'>CAN</b>究竟能<b class='flag-5'>傳輸</b>多遠距離?

    CANRS-232網(wǎng)關(guān)的參數介紹

    波特率(Baud Rate):波特率是指數據傳輸的速率,表示每秒傳輸的位數。CAN總線(xiàn)RS-232總線(xiàn)
    的頭像 發(fā)表于 01-18 10:08 ?337次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看