国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

RS-232轉CAN總線協(xié)議適配器的設計

發(fā)布時間:2010-3-22 15:04    發(fā)布者:我芯依舊
關鍵詞: CAN , 配器 , 設計 , 協(xié)議 , 總線
引言

CAN是Controller Area Network的縮寫,是ISO國際標準化的串行通信協(xié)議。CAN屬于現(xiàn)場總線范疇,具有通信實時性好、糾錯能力強,結構簡單等優(yōu)點。RS-232是美國電子丁業(yè)協(xié)會EIA制定的一種串行物理接口標準。它作為計算機串行通信接口,已經(jīng)被廣泛的使用。RS-232的缺點就是傳輸距離短,而且只能點對點通信,無法組建多點通信網(wǎng)絡。CAN總線正好彌補了RS-232的這些缺點。因此設計RS-232轉CAN總線協(xié)議的適配器,既可以發(fā)揮RS-232的通用性強的優(yōu)點,又可以利用CAN總線解決遠程通信網(wǎng)絡的問題,具有很高的應用價值。

1 CAN協(xié)議幀功能及結構分析

CAN協(xié)議使用5種幀來完成通信。分別是數(shù)據(jù)幀、遠程幀、錯誤幀、過載幀、幀間間隔。其中,數(shù)據(jù)幀就是發(fā)送單元向接收單位發(fā)送數(shù)據(jù)所用的幀。數(shù)據(jù)幀分兩種,具有11位標識符的幀叫做標準格式,具有29位標識符的幀叫做擴展格式。

2 RS-232轉CAN總線協(xié)議適配器的總體設計及工作原理

RS-232轉CAN總線協(xié)議適配器分為RS-232接口部分,微處理器和CAN總線接口部分。結構框圖如圖1所示。


圖1 RS-232轉CAN總線協(xié)議適配器的結構框圖

當串口向CAN總線接口發(fā)送數(shù)據(jù)時,數(shù)據(jù)通過串口輸送到MAX232進行電平轉換,將RS-232電平轉換成TrL電平,然后STC89C51對數(shù)據(jù)進行提取,將有效數(shù)據(jù)提取出來.增加幀結構信息、幀類型、字節(jié)長度和標識符等,這樣就生成CAN報文格式.然后由CAN總線控制器MCP2510發(fā)送出去。

當CAN總線接口向串口發(fā)送數(shù)據(jù)時,總線控制器MCP2510接受到數(shù)據(jù),然后輸送給STC89C51.進行格式轉換,轉換為RS-232通信格式,然后輸送給MAX232進行電平轉換,就得到了符合RS-232格式的數(shù)據(jù)。

3 RS-232轉CAN總線協(xié)議適配器的軟硬件設計

3.1硬件設計

3.1.1微處理器

微處理器采用的是STC89C51,帶4K字節(jié)的FLASHFPROM,高性能的8位單片機。STC89C51的作用就是數(shù)據(jù)轉換,以及總線控制器的初始化。

3.1.2 RS-232接口部分

RS-232接口部分的電路圖如圖2所示。


圖2 RS-232接口部分的電路

RS-232接口部分由MAX232芯片構成。使用5v單電源供經(jīng)發(fā)送結束。處理器將要發(fā)送的數(shù)據(jù)寫入MCP2510的緩沖區(qū)電。可實現(xiàn)rI'IIJCMOS電平與RS-232電平的轉換,包含2路接收和驅動器,。MAX232可以把5 v電壓變換成RS-232輸出電平所需的+10 V電壓。

3.1.3 CAN總線接口部分

CAN總線接口部分由CAN總線控制器和CAN總線收發(fā)器組成。

(1) CAN總線控制器MCP2510

MCP2510是一種帶有SPI接口的CAN控制器,它支持CAN技術規(guī)范V2.0MB,并能夠發(fā)送和接收標準的和擴展的信息幀同時具有接收濾波和信息管理的功能。MCP2510通過SPI接口與MCU進行數(shù)據(jù)傳輸,最高數(shù)據(jù)傳輸速率可達5Mb/s,MCU可通過MCP2510與CAN總線上的其它MCU單元通訊。MCP2510內含三個發(fā)送緩沖器、二個接收緩沖器。同時還具有靈活的中斷管理能力.這些特點使得MCU對CAN總線的操作變得非常簡便。

(2)CAN總線高速收發(fā)器TJA1050

TJAl050是CAN總線協(xié)議控制器和物理總線之間的接口.可以為總線提供不同的發(fā)送性能.為CAN總線控制器提供不同的接收性能.而且它與IS01 1898標準完全兼容。采用TJAl050的目的是增大通信距離、提高系統(tǒng)的瞬間抗干擾能力、保護總線、降低射頻干擾及實現(xiàn)熱防護等。CAN總線接口部分的電路圖如圖3所示。


圖3 CAN總線接口部分的電路圖

3.2 軟件設計

RS-232轉CAN總線協(xié)議適配器的軟件設計包括單片機STC89C51的初始化,CAN總線控制器的初始化,數(shù)據(jù)的發(fā)送、接收以及錯誤處理等。具體流程如圖4所示。


圖4軟件設計流程圖

(1) STC89C51的初始化

單片機STC89C51上電復位后,要對單片機的定時/計數(shù)控制寄存器、串行控制器、中斷優(yōu)先級控制器、中斷使能寄存器等進行初始化。

(2)CAN總線控制器的初始化

要實現(xiàn)CAN通信。首先要對CAN控制器進行初始化。MCP2510中有3個發(fā)送緩沖區(qū),可以循環(huán)使用,也可以只使用一個發(fā)送緩沖區(qū),但必須保證在發(fā)送的時候.前一次的數(shù)據(jù)已經(jīng)發(fā)送結束。處理器將要發(fā)送的數(shù)據(jù)寫入MCP2510的緩沖區(qū)之后,調用RTS命令即可將數(shù)據(jù)發(fā)送的CAN總線上。

這里定義了一個結構體MCP2510_Data作為傳輸數(shù)據(jù)的結構體。

struet{
int id_CAN;
char datalength;
char data[8];
int IsExt;
im rxRTR;
}MCP25 10_Data;

id_CAN是CAN信息的ID號,datalength是傳輸數(shù)據(jù)的長度,data是要傳輸?shù)南?shù)據(jù),IsExt指是否使用擴展1D,rxRTR指使用數(shù)據(jù)幀還是遠程幀。

定義了一個MCP2510_Rev結構體用于記錄緩沖區(qū)的各種狀態(tài)。

struct{
MCP25 10_Data candata;
int nCANREV;
int nCANREAD;
int loop;
}MCP25 10一Rev;

nCANREV表示接收緩沖區(qū)數(shù)據(jù)狀態(tài),nCANREAD表示讀取緩沖區(qū)數(shù)據(jù)狀態(tài),loop表示是否支持回環(huán)模式。

(3)數(shù)據(jù)的發(fā)送與接收

數(shù)據(jù)的發(fā)送接收.包括串行中斷程序和CAN總線中斷程序。中斷流程圖如圖5所示。


圖5中斷流程圖

函數(shù)MCP2510_Write和MCP2510_Read負責對緩沖區(qū)讀寫數(shù)據(jù),MCP25lO_Open負責打開CAN總線控制器,并清空3個發(fā)送緩沖區(qū),MCP2510_Close負責關閉CAN總線控制器,MCP2510 Comm負責向CAN總線控制器發(fā)送各種控制命令。

4 結束語

本文作者創(chuàng)新點:使用STC89C51設計了RS-232與CAN總線協(xié)議轉換的硬件電路,解決了RS-232與CAN總線數(shù)據(jù)轉換與傳輸?shù)膯栴}。這樣將使很多具有RS-232接口的設備可以與CAN總線一起構成一個遠程的通信網(wǎng)絡,既節(jié)省了成本,又
保證了設備的兼容性。


作者:謝曜聰    來源:《微計算機信息》2009年第7-2期
本文地址:http://m.qingdxww.cn/thread-9710-1-1.html     【打印本頁】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點和對其真實性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問題,我們將根據(jù)著作權人的要求,第一時間更正或刪除。
phy14 發(fā)表于 2011-12-26 10:22:20
學習了!
lhxzui 發(fā)表于 2015-1-16 16:20:16
學習啦,謝謝。。              
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應用程序
  • 使用Harmony3加速TCP/IP應用的開發(fā)培訓教程
  • 集成高級模擬外設的PIC18F-Q71家族介紹培訓教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿澤電子(Mouser)專區(qū)

相關在線工具

相關視頻

關于我們  -  服務條款  -  使用指南  -  站點地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
主站蜘蛛池模板: 青草青视频| 亚洲最新网站| 一二高清在线观看| 超碰在线观看| 美女张开让男生桶| 手机看片福利盒子久久| 亚洲激情视频在线播放| 日本成人在线网站| 最近更新在线中文字幕一页| 亚洲狠狠| 国产传媒18精品免费观看| 忘忧草日本在线社区WWW电影| 亚洲精品一级毛片| 日本一区二区三区在线 观看网站| 亚洲乱码国产一区网址| 小蝌蚪亚洲精品国产| 91久久线看在观草草青青| 禁漫H天堂免费A漫| 亚洲AV成人无码网天堂| 亚洲国产综合精品中文字幕| 日本三级韩国三级香港三级网站 | 国产色情短视频在线网站| 无码区国产区在线播放| 亚洲伊人久久大香线蕉在观| 日本一区二区视频在线| 四虎在线影院| ZZoo兽2皇| 欧美人妖12p| 日韩视频在线精品视频免费观看| 青草青草伊人精品视频| 双性受np| 粉嫩小护士| 日韩一区二区三区免费体验| 日本成人免费在线观看| 日本精品在线播放| 天天夜夜啦啦啦| 打扑克床上视频不用下载免费观看| 午夜精品久久久久久久99蜜桃 | 色婷婷亚洲十月十月色天| 五月色婷婷网在线观看| G0GO人体大尺香蕉|