找回密码
 注册
关于网站域名变更的通知
查看: 281|回复: 2
打印 上一主题 下一主题

[毕业设计] 基于单片机的CAN与RS -232转换器设计

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2020-4-22 09:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x

0 f2 m# T* ]5 l* x) V: }摘要:本文完成了基于单片机控制的CAN与RS-232转换器的研究与设计,设计了AT89C51 单片机对RS-232接口和CAN. ~: A, c" F) y6 Q( n$ l1 H
模块的控制,解决了CAN总线与RS-232 接口数据通信速率以及通信帧格式不同的技术,实现了RS-232接口数据与CAN总9 [: \: E! u: F# O3 h
线数据的传输。& ]. _5 q/ v  S. {* k
关键词:单片机; CAN总线; RS- -232
8 m# U, f, z6 e0 l9 s1概述
' ?9 A8 g6 `- N  ?% V+ S. ^; ^CAN(Controller Area Network)总线是德国BOSCH公司为解3 F0 u0 E3 R% e$ K& H0 U
决现代汽车中众多控制与测试之间的数据交换开发的-种串/ w) X$ l9 ?* O' {( i6 R; g" Q
行数据通信协议,是一种多主方式的串行通信总线。CAN总线/ ?& ^8 \4 f9 J9 S% p4 t" F* c
是一种开放式数字化、多点通信的控制系统局域网,具有通信
: Z/ ?$ n& R2 e: q0 ]/ P速率高、传输时间短传输距离远纠错能力强控制简单、扩展0 U$ L% e0 s/ {, A1 ]9 E- ]/ F
能力强以及性价比高等特点,是目前国际上应用最广泛的现场
6 Y" Q+ s1 m, E  @$ Y. [0 O总线之一。
( H" E# p: R' a. ~2 g基于CAN总线的CAN控制器具有完成CAN总线通信协
0 X4 J! _5 H& z议所要求的全部必要功能,因此CAN控制器与其它微处理器的5 O- D6 U& J( r9 E) U2 w; d
接口成为设计CAN总线系统的首要工作。实际中很多设备带
1 V4 d& Y5 q6 n6 B% }有RS- -232接口,为了方便具有RS- -232 接口的设备与CAN总.+ w$ G" i$ v) Y0 h6 ]& P& f5 y
线的数据通信,本文完成了基于单片机控制的CAN总线与RS-
* `$ s" L8 y/ |' n/ Z. w  N* [  y; ]232转换器电路设计和软件设计,实现了CAN总线数据与RS-- q& s4 M% S1 I. S
232接口设备的数据传输。9 v# |& x' p! B: U) F( A
2基于单片机控制的CAN总线与
! z) f8 |7 A5 e4 j: O, y3 dRS--232转换器电路设计& x  D6 i$ H( I1 ~9 b% C
CAN总线与RS- 232转换器电路包括:主控制模块、RS- -232& C. `" j" ]4 V" r! j
接口转换电路和CAN控制模块3个主要部分。
1 S4 l% \7 Z) V7 c" ^) H主控制模块的功能是处理CAN总线以及RS- -232接口的
0 R0 X, R" N' p数据通信和控制,本设计应用AT89C51完成对转换器各个接口
5 W; @8 I0 ?  ?' b, N( f3 T. x的控制,实现CAN总线和RS- -232接口两种协议数据帧的转换,  l& ?9 f) d3 B0 ^) f5 I
使用带有SPI总线接口的X25045实现硬件看门狗功能。主控
9 Q, [. [; ~# |2 N- b# z模块电路如图1所示。
# T- E, N7 [( b$ qRS- -232接口电路由MAX232芯片构成,实现将单片机串口
: |4 @$ p# J$ U3 _# a" Z的TL电平与RS -232电平的相互转换,完成RS- -232接口信息4 }& U0 h- r3 E$ Q+ L0 A; n2 a

' i) U+ I& v( Q0 A的输人输出传输。3 X% {; u# \$ C& f+ m6 }* Z/ C
CAN控制器模块,主要完成CAN协议的物理层和数据链
2 D* L) h9 B  v5 i路层协议的实现。其中物理接口采用PCA82C250芯片实现物
8 U: X4 K7 D& K理层的电平转换和传输。CAN控制器使用SJA1000芯片,完成
0 W7 |# W. J/ W9 Q6 I数据链路层功能,实现CAN总线信息的输人输出传输。6 K0 |' j$ g' H4 {; ^; V. u# y
AT89C51是CAN总线与RS--232转换器的控制器,提供以; K( g4 M9 b# [2 J+ q
下标准功能:4k字节Flash 闪速存储器,1000次可擦写周期,三
: D0 f5 d* X! H, r# q5 M级加密程序存储器,128字节内部RAM,32个I/0口线,两个16
! W/ Z! _2 k3 H0 O  X* Y位定时/计数器,-个5向量中断结构,-一个全双工串行通信口,
; h* A' O6 {" d$ R$ n片内振荡器及时钟电路。同时,支持两种软件可选的节电T.作模$ J; [9 d8 i$ T! i8 s! U
式。空闲方式停止CPU的工作,但允许RAM、定时/计数器、窜行
5 o( D6 b! A& x2 v# K2 Y$ s通信口及中断系统继续工作。掉电方式保存RAM中的内容,但
9 r* L6 h3 e% ?+ o# s+ u振荡器停止工作并禁止所有部件工作直到下一个硬件复位。
/ o8 C! P4 t' B5 J2 Y3 gAT89C51使用的晶振信号由SJA1000提供(SJA1000用. B4 f# T* O1 s( g0 |3 M
24MHz的片外晶振),SJA1000的CLKOUT引脚接人mcu8 k, d8 C. e/ a6 V7 A
XTAL1引脚。& k2 y* d! i* V, N5 {- }2 ~/ b* u
由于CAN总线速率与RS -232接口速率并不相同,因此本
5 r# M8 b$ S  ]设计中增加了片外RAM芯片6116,用作转换双方的数据缓冲0 Y# a" T% N" D" i# g  O; T
区。设计中使用P2.7接反向器连接61 16的片选端,所以接口转( T, h2 Y2 F& B- q4 ?
换电路中的片外RAM的起始地址实际上应为0X8000。# ]* [8 H. K. ^" ]$ Y( d) s7 K) l
, x9 x, X. @1 }! j2 H  E

+ `4 S) \' s0 k  e# ^, d5 B  Z2 M: t3 _
附件下载:
游客,如果您要查看本帖隐藏内容请回复

) S# ~4 @% \4 O$ y" i
+ h, P, Q$ `: H  M+ ~

该用户从未签到

2#
发表于 2020-4-22 11:17 | 只看该作者
基于CAN总线的CAN控制器具有完成CAN总线通信协: i4 `8 R6 ?$ W; p
议所要求的全部必要功能

该用户从未签到

3#
发表于 2020-8-10 02:23 | 只看该作者
1111111111111& l2 h' L  b! x: t3 {; T& g. x  i$ [
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-10-3 17:04 , Processed in 0.140625 second(s), 26 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表