《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于CAN總線與RS485的DSP通信接口設計
基于CAN總線與RS485的DSP通信接口設計
摘要: 在工業控制領域中,往往是由一臺主機控制多臺從機,上位機和下位機的遠距離通信通過串行通信實現。本設計綜合實現了PC主機與DSP從機的RS-485遠距離通信接口和DSP從機與CAN現場總線的數據傳輸接口設計,同時具備主從機的遠距離通信和CAN現場總線設備的實時通信功能,具有廣泛的應用前景。在設計中充分發揮了DSP的CAN模塊和SCI模塊的作用,使得接口設計簡單,工作更加可靠。
Abstract:
Key words :

  1.概述

  現場總線是一種開放式、數字化、多點通信的控制系統局域網絡,是當今自動化領域中最具有應用前景的技術之一 ,CAN總線是現場總線中的應用熱點。由于CAN總線具有通信速率高、開放性好、報文短、糾錯能力強以及控制簡單、擴展能力強、系統成本低等特點,越來越受到人們的關注。

  TI公司的TMS320LF2407型DSP微控制器以其處理能力強,外設功能模塊集成度高及存儲器容量大等特點廣泛應用于數字化控制與通信領域。CAN總線控制器與TMS320LF2407微控制器連接,可以實現CAN總線的通信。TMS320LF2407微控制器內嵌的異步串行口(SCI)支持CPU與其它使用標準格式的異步外設之間的數字通訊,通過RS-485接口可以方便地進行DSP之間或DSP與PC機之間的異步串行通信。

  RS-485是一種多發送器的接口標準,它擴展了RS-422A的性能,允許雙絞線上一個發送器驅動32個負載設備,負載設備可以是被動發送器、接收器或收發器,RS-485最大傳輸距離為1200m,最大傳送速率可達10Mb/s。因此,RS-485在遠程通信和多機總線系統中具有很大的吸引力,在實際設計中得到了廣泛應用。

  本設計以PC機為主機,以TMS320LF2407為從機,實現了主從機之間的基于RS-485的串行通信,以及TMS320LF2407與CAN總線的通信。其中PC機與TMS320LF2407的RS-485通信,采用MAXIM公司生產的MAX48X/49X系列收發器芯片,完成RS-485標準接口通信。由于PC機上提供的是標準的RS-232C串行接口,因此,需要RS-232C/RS-485轉換器進行接口轉換。如圖1所示。應用TMS320LF2407內嵌的CAN模塊和總線接口芯片PCA82C250,實現了TMS320LF2407與CAN總線的串行通信。

PC機與TMS320LF2407的RS-485<a class=通信接口" border="0" height="205" hspace="0" src="http://files.chinaaet.com/images/20100816/e475ad00-1c30-4b55-9ec6-acdb871b239a.jpg" width="500" />

  2.TMS320LF2407的RS-485通信設計

  TMS320F2407有較強的串行通信能力,設計到的控制類寄存器較多,這使系統設計比較靈活。設計時,首先對控制類寄存器進行初始化,包括數據格式、中斷使能、中斷優先級、波特率等參數的設置。初始化完成以后,就可以發送和接收數據了。如果要發送數據,只要把數據寫入SCITXBUF即可,由串行通信SCI模塊自動完成發送數據。如果要接收數據,只要把SCIRXBUF的內容讀出即可(從引腳SCIRXD/IO移位來的信息由串行通信SCI模塊本身自動去掉起始位、停止位、校驗位,并將數據放到SCIRXBUF中)。代碼如下:

  初始化TMS320LF2407的SCI模塊

程序

程序

  3.上位機PC串行通信軟件設計

  上位機PC采用高級語言VB的通信控件,實現串行通信。在VB5.0及以上版本中,提供了一個名為MSComm的通信控件,它為應用程序提供基本的串行通信功能,可以通過串行接口發送和接收數據。

  PC串行口發送器輸出端和接收器輸入端的數據格式為幀信息格式,與TMS320LF2407的SCI格式相同。通信時,雙方預先約定通信數據傳輸格式、傳輸速率及各自工作方式等。本文設計中雙方約定:波特率為9600bps。1幀信息格式為1個起始位、8個數據位和1個停止位。傳送方式:PC機采用查詢方式接收數據,TMS320F240采用中斷方式接收數據。

  4.TMS320LF2407的CAN通信設計

  TMS320LF2407 內嵌的CAN模塊,是一個16 位的外圍器件,其通信特性有:(1)完全支持CAN2.0B協議;(2)具有6個郵箱,其中mailbox2與mailbox3可按工程需求配置為接收或發送郵箱,數據長度為0—8字節;(3)當發送出錯或仲裁過程中數據丟失時,該控制器具有自動重發功能;(4)能夠通過軟件編程實現自檢測功能。

  4.1硬件設計

  應用TMS320LF2407微控制器組成一個CAN總線網絡,進行實時接收和發送數據。CAN控制器接口用于提供CAN協議控制器與物理總線之間的接口,總線接口芯片使用PHILIPS公司生產的PCA82C250,它可以方便的將CAN控制器連接到CAN總線網絡上。硬件系統分為兩層,第一層是CAN總線與TMS320LF2407的接口電路,實現CAN總線和TMS320LF2407的物理接口,第二層是TMS320LF2407與CAN總線的信息處理層。如圖2所示。

TMS320LF2407與CAN總線的信息處理層

  PCA82C250提供差分發送和對CAN控制器的差分接收,由于PCA82C250是5V電源供電,TMS320LF2407是用3.3V電源供電,因此采用電阻分壓來實現電平轉換。其中R2,R3分別取1KΩ和2KΩ,R1取10KΩ。對于二極管D1選用具有快速恢復能力的肖特基二極管IN5819。

 

 

 

  4.2軟件設計

  4.2.1初始化CAN模塊

 

  CAN模塊的初始化包括初始化位時間和初始化郵箱。

  初始化位時間可按如下步驟進行(如圖3所示):

 ?。?)在MCR寄存器中設置改變配置請求位:CANMCR=1000H;

 ?。?)配置BCR寄存器:CANBCR2=0000H; CANBCR1=0157H;

  (3)請求正常模式:CANMCR=0000H;

  初始化郵箱可以按照如下步驟配置郵箱(如圖4所示):

  (1)禁止郵箱寫0到CANMDER:CANMDER=0000H;

 ?。?)在CANMCR中設置改變數據域請求:CANMCR=0100H;

 ?。?)改變郵箱內容:數據可以只在發送郵箱中設置;

 ?。?)返回正常模式:CANMCR=0000H;

  (5)使能郵箱:CANMDER=0004H;

  4.2.2 發送消息

  為了實現CAN模塊的消息發送,需要按照以下步驟配置發送過程:

 ?。?)對發送郵箱進行初始化

  禁止郵箱對CANMDER寫0:CANMDER=0000H;

  在CANMCR中設置改變數據域請求:CANMCR=0100H;

  對發送郵箱設置消息ID: CANMSGIDnH="0E00H";CANMSGIDnL=000FH;

  設置消息控制域,即對CANMSGCTRLn進行寫操作: CANMSGCTRLn="0008H";

  創建消息并寫到CANMBXnA、CANMBXnB、CANMBXnC和CANMBXnD中:

  CANMBXnA=0ABCDH;CANMBXnB=0123H;CANMBXnC=0EF32H;CANMBXnD=6789H;

  重新設置CANMCR的第8位,請求正常操作:CANMCR=0000H;

  允許郵箱對CANMDER寄存器進行寫操作:CANMDER=0004H;

 ?。?)設置TCR寄存器的TRS位,請求發送消息:TCR=0010H;

  (3)等待發送確認(TCR寄存器的TA=1);

  (4)重新設置TA和發送標志:TCR=1000H;

  4.2.3 接收消息

        應用CAN模塊接收外界消息時,需要對CAN控制器進行如下設置:

 ?。?)設置局部接收屏蔽寄存器。 LAM1H=8000H;

  (2)設置郵箱標識符和控制。

  禁止郵箱對MDER寫0:CANMDER=0000H;

  寫MCR寄存器申請改變數據域請求:CANMCR=0100H;

  對發送郵箱設置消息ID: CANMSGIDnH="0E00H";CANMSGIDnL=000EH;

  設置消息控制域:CANMSGCTRLn=0008H;

  重置MCR第8位,請求正常操作:CANMCR=0000H;

  允許郵箱寫MDER寄存器:CANMDER=0044H;

  (3)等待接收確認和CANIFR的郵箱中斷標志。

  (4)重置RMP和接收標志,必須對RMP寫1: CANRCR="0040H";

初始化位時間編程流程圖

圖3 初始化位時間編程流程圖

郵箱初始化流程圖

  5.結論

  本文作者的創新點是:在工業控制領域中,往往是由一臺主機控制多臺從機,上位機和下位機的遠距離通信通過串行通信實現。本設計綜合實現了PC主機與DSP從機的RS-485遠距離通信接口和DSP從機與CAN現場總線的數據傳輸接口設計,同時具備主從機的遠距離通信和CAN現場總線設備的實時通信功能,具有廣泛的應用前景。在設計中充分發揮了DSP的CAN模塊和SCI模塊的作用,使得接口設計簡單,工作更加可靠。

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 成人免费一级片 | 欧美黄色一级在线 | 狠狠干综合网 | 视频一区欧美 | 亚洲天堂视频在线播放 | 色哒哒影院 | 国产中文久久精品 | 日韩在线观看你懂的 | 天天操狠狠操夜夜操 | 日韩综合 | 伦理网站在线播放视频 | 欧美一级在线观看播放 | 午夜影院免费在线观看 | 老妇女黄色片 | 黑人巨大videos极度另类 | 婷婷亚洲久悠悠色悠在线播放 | 亚洲欧美日产综合一区二区三区 | 91短视频在线观看免费 | 国产91网站在线观看 | 免费观看黄a一级视频 | 天天毛片 | 亚洲精品视频久久久 | 91小鲜肉| 亚洲免费在线看 | 男女免费观看视频 | 欧美精品videosex另类 | 爱操视频在线观看 | 午夜色图 | 国产凹凸在线观看一区二区 | 欧美一区二区三区在线观看 | 黄色网址在线免费观看 | 一级毛片中国 | 免费一级毛片在线视频观看 | 国产乱理伦片在线看 | 国产欧美精品一区二区三区四区 | 午夜视频久久 | 美女视频永久黄网站在线观看 | 欧美日韩在线一区 | 夜夜春精品视频 | wwwav在线 | 一级免费黄色片 |