at89c51单片机控制的can总线rs232接口电路设计.docx
- 文档编号:23028862
- 上传时间:2023-04-30
- 格式:DOCX
- 页数:48
- 大小:1.99MB
at89c51单片机控制的can总线rs232接口电路设计.docx
《at89c51单片机控制的can总线rs232接口电路设计.docx》由会员分享,可在线阅读,更多相关《at89c51单片机控制的can总线rs232接口电路设计.docx(48页珍藏版)》请在冰豆网上搜索。
AT89C51单片机控制的CAN总线/RS232
接口电路设计
目录
引言1第一章CAN总线协议和RS232接口协议分析2
1.1CAN总线2
1.1.1CAN总线特点和优势2
1.1.2CAN总线协议3
1.1.3CAN总线报文格式和报文帧结构4
1.1.3.1CAN报文格式4
1.1.3.2报文帧结构4
1.1.4CAN总线错误5
1.2RS232接口协议5第二章元器件介绍与分析7
2.1CAN控制器芯片SJA1000介绍及特性分析7
2.2CAN收发驱动器PCA82C250介绍及特性分析10
2.3光电隔离芯片6N137介绍及特性分析11
2.4电平转换芯片MAX232介绍及特性分析13
2.5AT89C51单片机介绍及特性分析14第三章CAN总线与RS232转换接口设计17
+15V,逻辑“1”为一3V〜一15V。
一个标准的RS-232接口包括25针的D型插座,其包括主信道和辅助信道。
但在实际使用中只使用一个主信道,此时可简化为一个九针的D型插座,分为公型和母型,表1-2是RS-232九针接口的引脚定义。
表1-2RS-232接口的引脚定义
9针接口
名称
方向
功能说明
1
DCD
输入
数据载波检测引脚
2
RXD
输入
数据接收引脚
3
TXD
输出
数据发送引脚
4
DTR
输出
数据终端设备DTE准备就绪引脚
5
GND
信号地
6
DSR
输出
数据通信装置DCE准备就绪引脚
7
RTS
输出
请求数据传送引脚
8
CTS
输入
清除数据传送引脚
9
RI
输入
振铃信号引脚
第二章元器件介绍与分析
2.1CAN控制器芯片SJA1000介绍及特性分析
SJA1000是一种独立控制器,用于移动目标和一般工业环境中的区域网络控制。
它是PHILIPS半导体PCA82C200CAN控制器的替代产品,而且它增加了一种新的工作模式PeliCAN,这种模式支持具有很多新特性的CAN2.0B协议〔久此次设计采用的是PeliCAN工作模式。
SJA1000具有如下特性:
1)和PCA82C200独立CAN控制器引脚兼容;
2)具有PeliCAN模式;
3)支持CAN2.0A和CAN2.0B协,议;
4)支持11位和29为标志符;
5)通信速率可达1Mbps;
6)最高达24MHz的时钟频率;
7)支持不同的处理器接口;
8)可编程的CAN输出驱动器配置;
9)有扩展的接收缓冲器64B(FIFO)⑷。
PeliCAN模式下增强的功能如表2T所示:
表2-1PeliCAN模式下增强的功能7
CAN2.0B(active)
CAN2.0Bactive支持带有29位标识符的网络扩展应用
发送缓冲器
有11位或29位标识符的报文的单报文发送缓冲器
增强的验收滤波器
两个验收滤波器模式支持11位和29位标识符的滤波
可读的错误计数器
支持错误分析在原型阶段和在正常操作期间可用于:
诊断、系统维护、系统优化
可编程的出错警告界限
错误代码捕捉寄存器
出错中断
仲裁丧失捕捉中断
支持系统优化包括报文延迟时间的分析
单次发送
使软件命令最小化和允许快速重载发送缓冲器
仅听模式
SJA1OOO能够作为一个认可的CAN监控器操作,可以分析CAN总线通信或进行自动位速率检测
自测试模式
支持全部CAN节点的功能自测试或在一个系统内的自接收
SJA1000管脚如图2-1所示:
图2-1SJA1OOO管脚图
SJA1OOO内部结构如图2-2所示:
图2-2SJA1OOO内部结构图
SJA1000的引脚功能如表2-2所示:
表2-2SJA1000引脚说明9
vJt
弓1脚
说明
AD7-AD0
2、1、28-23
多路地址/数据总线
ALE/AS
3
ALE输入信号(Intel模式),AS输入信号(Motorola模式)
/CS
4
片选输入,低电平允许访问SJA1000。
(/RD)/E
5
微控制器的/RD信号(Intel模式)或E使能信号(Motorola模式)。
AVR
6
微控制器(CPU)的/WR信号Intel模式或RD//WR信号
Motorola模式
CLKOUT
7
SJA1000产生的提供给微控制器的时钟输出信号。
时钟信号来源于内部振荡器,且通过编程驱动时钟。
控制寄存器的时钟关闭位可禁止该引脚。
VSS1
8
逻辑地
XTALk
XTAL2
9、10
外部晶振接入端
Mode
11
模式选择输入。
1=Intel模式、0=Motorola模式。
VDD3
12
输出驱动器的电源端。
TXO、TX1
13、14
CAN输出驱动器的输出端0和输出端1。
VSS3
15
输出驱动器的接地端。
/INT
16
中断输出,用于中断微控制器。
/INT在内部中断寄存器各位都被置位时低电平有效。
/INT是开漏输出,且与系统中的其它/INT是线或的。
此引脚上的低电平可以把IC从睡眠模式中激活。
/RST
17
芯片复位端。
VDD2
18
输入比拟器的电源端。
RXO、RX1
19、20
CAN输入比拟器的输入端。
和输入端lo
VSS2
21
输入比拟器的接地端。
VDD1
22
电源端。
2.2CAN收发驱动器PCA82C250介绍及特性分析
PCA82c250是CAN协议控制器和物理总线之间的接口。
该器件对总线提供差动发送能力并对CAN控制器提供差动接收能力。
它是全世界使用最广泛的CAN收发器。
其主要特性如下:
1)完全符合ISO11898标准;
2)抗瞬间干扰,保护总线;斜率控制,降低射频干扰;
3)具有差分接收器,抗宽范围的共模干扰,抗电磁干扰;
4)具有热保护;
5)防止电池和地之间的短路;
6)低电流待机模式;
7)未上电的节点对总线无影响;
PCA82c250外部管脚和内部结构图如图2-3、图2-4所示:
图2-3PCA82c250管脚图
02-4PCA82c250内部结构图
PCA82c250的管脚功能如表2-3所示:
表2—3PCA82c250管脚功能10
符号
管脚
功能描述
TXD
1
发送数据输入
GND
2
地
Vcc
3
电源电压
RXD
4
接收数据输出
Vref
5
参考电压输出
CANL
6
低电平CAN电压输入/输出
CANH
7
高电平CAN电压输入/输出
Rs
8
斜率电阻
PCA82c250具有三种工作模式,其工作模式的条件如表2-4所示。
1)高速模式:
管脚8接地。
在此高速工作模式下,发送器输出级晶体管以最快速度导通或截止。
这种模式不采取任何措施限制上升和下降斜率。
用户应使用屏蔽电缆防止射频干扰问题。
2)斜率控制模式:
对于较低速度和较短总线长度,可以使用非屏蔽线或平行线作为总线。
采取措施限制上升和下降斜率降低射频干扰问题。
上升和下降斜率由管脚8接至地的连接电阻进行控制,斜率正比于管脚8的电流输出。
3)准备模式:
管脚8接至高电平,电路进入低电流待机模式。
在此模式下,发送器关闭,接收器转至低电流⑷。
表2-4PCA82c250工作模式
在RS管脚上强制条件
模式
管脚上电压和电流
Vrs>0.75Vcc
待机模式
-10|1A
—10|iA
斜率控制模式
0.3Vcc Vrs<0.3Vcc 高速模式 /rsV—500|iA 2.3光电隔离芯片6N137介绍及特性分析 6N137光耦合器是一款用于单通道的高速光耦合器。 其内部由一个850nm波长AlGaAsLED和一个集成检测器组成。 其检测器由一个光敏二极管、高增益线性运放及一个肖特基钳位的集电极开路的三极管组成。 它具有温度、电流和电压补偿功能,高的输入输出隔离,LSTTL/TTL兼容,高速(典型为lOMBd),5mA的极小输入电流⑷。 特性如下: 11 1)转换速率高达lOMBit/s; 2)摆率高达lOkV/ps; 3)扇出系数为8; 4)逻辑电平输出; 5)集电极开路输出; 工作参数: 最大输入电流,低电平: 250|iA;最大输入电流,高电平: 15mA;最大允许低电平电压(输出高): 0.8V;最大允许高电平电压: Vcc;最大电源电压输出: 5.5V;扇出(TTL负载): 8个(最多);工作温度范围: -4(TC〜+85。 以 6N137光耦合器的内部结构、管脚如图2-5、2-6所示: 6N137 图2-66N137内部结构图 6N137的内部结构原理如图2-6所示,信号从脚2和脚3输入,发光二极管发光,经片内光通道传到光敏二极管,反向偏置的光敏管光照后导通,经电流-电压转换后送到与门的一个输入端,与门的另一个输入为使能端,当使能端为高时与门输出高电平,经输出三极管反向后光电隔离器输出低电平。 当输入信号电流小于触发阈值或使能端为低时,输出高电平,但这个逻辑高是集电极开路的,可针对接收电路加上拉电阻或电压调整电路图。 6N137光耦合器的真值如表2-5所示: 表2-56N137真值表12 6N137光耦合器真值表 输入电平 EN引脚电平 输出电平 高 高 低 低 高 高 低 高 低 低 低 I1 RI 无关 低 低 无关 高 2.4电平转换芯片MAX232介绍及特性分析MAX232芯片是美信(MAXIM)公司专为RS-232标准串口设计的单电源电平转换 芯片,是最常见的有线通讯协议RS-232的转换芯片。 它使用+5V单电源供电,常用于51单片机、51单片机和嵌入式设备、PC机进行通信。 MAX232主要特点有: 1、 符合所有的RS-232c技术标准。 2、 只需要单一+5V电源供电。 3、 4、 功耗低,典型供电电流5mA。 5、 内部集成2个RS-232C驱动器。 6、 高集成度,片外最低只需4个电容即可工作。 片载电荷泵具有升压、电压极性反转能力,能够产生+10V和-10V电压V+、V-O MAX232管脚和内部结构如图2-7、2-8所示: 图2-7MAX232管脚图 图2-8MAX232内部结构图 13 第一局部是电荷泵电路。 由1、2、3、4、5、6脚和4只电容构成。 功能是产生+12V和-12V两个电源,提供给RS-232串口电平的需要。 第二局部是数据转换通道。 由7、8、9、10、11、12、13、14脚构成两个数据通道。 其中13脚(R1IN)、12脚(R1OUT)、11脚(T1IN)、14脚(T1OUT)为第一数据通道。 8脚(R2IN)、9脚(R2OUT)、10脚(T2IN)、7脚(T2OUT)为第二数据通道。 TTL/CMOS数据从11引脚(TUN)、10弓|脚(T2IN)输入转换成RS-232数据从14脚(T1OUT)、7脚(T2OUT)送至! )电脑DB9插头;DB9插头的RS-232数据从13引脚(R1IN)、8弓|脚(R2IN)输入转换成TTL/CMOS数据后从12引脚(R1OUT)、9引脚(R2OUT)输出。 第三局部是供电。 15脚GND、16脚Vcc(+5v)叫2.5AT89C51单片机介绍及特性分析 AT89C51是一种带4K字节FLASH存储器(FPEROM—FlashProgrammableandErasableReadOnlyMemory)的低电压、高性能CMOS8位微处理器,俗称单片机。 AT89C2051是一种带2K字节闪存可编程可擦除只读存储器的单片机。 单片机的可擦除只读存储器可以反复擦除1000次。 该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。 由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器⑸。 AT89C51提供以下标准功能: 4k字节Flash闪速存储器,128字节内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。 同时,AT89c51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。 空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作。 掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位⑸。 AT89C51外形及引脚排列如图2-9所示: 14 u? 1 P1.0VCC Pl.lP0.0(AD0) Pl.2PO.l(ADl) Pl.3P0.2(AD2) Pl.4P0.3(AD3) Pl.5P0.4(AD4) Pl.6PO.5(AD5) Pl.7P0.6(AD6) RSTP0.7(AD7) P3.O(RXD)(EAyVPP P3.1(TXD)(PROG)ALEP3.2(INTO)PSEN P3.3(INTI)P2.7(A15) P3.4(T0)P2.6(A14) P3.5(T1)P2.5(A13) P3.6(/WR)P2.4(A12) P3.7(RD)P2.3(A11) XTAL2P2.2(A10) XTAL1P2.1(A9) GNDP2.0(A8) X 3 4 5 6 一 S 9 1 0 11 ih 13 14_ 15 16 17 18 19 2 0 AT89C51 _39 38 37 34 _33 32 36 15 3_1 30 29 _28 _27 26 24 图2-9AT89C51管脚图 vcc: 供电电压。 GND: 接地。 P0n: P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。 P0能够用于外部程序数据存储器,它可以被定义为数据/地址的低八位。 P1口: P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。 P2口: P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。 并因此作为输入时,P2口的管脚被外部拉低,将输出电流。 P3口: P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。 当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。 作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。 P3口也可作为AT89c51的一些特殊功能口,如表2-6所示: 表2-6P3口备选功能 P3口管脚 备选功能 P3.0 RXD(串行输入口) 15 3.1系统总体设计17 3.2系统硬件电路详细设计18 3.2.1PCA82C250收发电路设计18 3.2.26N137电路设计19 3.2.3MAX232接口电路设计20 3.2.4SJA1000接口电路设计21 3.2.5AT89C51单片机模块周围电路设计22第四章软件设计24 4.1RS232程序设计24 4.2CAN通信程序设计26第五章实体电路制作和实验29 5.1实体电路的制作26 5.2实验分析30第六章总结与展望31 致谢32参考文献: 33 P3.1 TXD(串行输出口) P3.2 /INTO(外部中断0) P3.3 /INT1(外部中断1) P3.4 TO(计时器0外部输入) P3.5 T1(计时器1外部输入) P3.6 AVR(外部数据存储器写选通) P3.7 /RD(外部数据存储器读选通) P3口编程校验接收一些控制信号。 RST: 复位输入。 当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。 ALE/(/PROG): 当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。 /PSEN: 外部程序存储器的选通信号。 在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。 但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。 (/EA)/VPP: 当/EA保持低电平时,那么在此期间外部程序存储器(OOOOH-FFFFH),不管是否有内部程序存储器。 注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。 XTAL1: 反向振荡放大器的输入及内部时钟工作电路的输入。 XTAL2: 来自反向振荡器的输出⑸。 16 第三章CAN总线与RS232转换接口设计 3.1系统总体设计 本设计采用的单片机为ATMEL公司生产的AT89C51单片机,其作用是初始化CAN控制器SJA1000,并控制它的数据收发等功能,实现串行数据的接收与处理;CAN控制器选用PHILIPS公司的SJAlOOOo它支持CAN2.0A/B规约,集成了CAN协议的物理层和数据链路层功能,其地址为0x000—OxOFF;CAN接收器选用PHILIPS公司的PCA82C250,它可以支持110个CAN节点。 其作用是对总线提供差动发送能力并对CAN控制器提供差动接收能力;光电耦合器采用Technologies公司生产的6N137,其作用是防止串入信号干扰,实现元器件间的电气隔离;电平转换芯片采用美信(MAXIM)公司专为RS-232标准串口设计的单电源电平转换芯片MAX232,它把RS232电平转换到微控制器接口电路的TTL电平。 MAX232把终端设备COM接口的RS-232电平转换为TTL电平后接入AT89c51单片机的串行口,在AT89c51单片机中将串行数据转换为并行数据,然后由单片机的IO端口发送给CAN总线控制器SJA1000,再通过CAN总线接收器PCA82C250把数据送入CAN总线中,完成了RS-232总线到CAN总线的转换。 从CAN总线到RS232总线的转换只要把上述过程反过来即可。 系统总体结构如图3-1所示: 0 ATC89C51 单片机 「「SJA100。 控制器 6N137 PCA82C 250接收 器 <=>光耦器 7^ CAN 总线 图3-1系统总体结构框图 17 系统硬件电路详细设计 硬件电路设计分为: PCA82c250收发电路设计、6N137电路设计、MAX232接口电路设计、SJA1000与AT89c51单片机接口电路设计、AT89C51单片机模块周围电路设计。 下面是各个电路的详细设计。 3.1.1PCA82c250收发电路设计 PCA82c250是CAN总线收发器,是光电耦合器6N137与CAN总线的接口器件,是对CAN总线以差分方式发送,TXD和RXD引脚分别发送和接收经过驱动后的发送信号和接收信号。 选用PCA82C250是因为SJA1000的信号输出驱动能力比拟低,它驱动不了系统所需节点数。 其次,82C250具有高速和抗瞬间干扰保护总线的能力。 它可以和110个节点相连,当某一个节点掉电时,也不影响总线,可以有效防止电池与地之间发生短路。 设计中为提高数据通信的可靠性和抗干扰性,在CAN总线两端接一个电阻以再接入82C250,电阻的作用是匹备总线阻抗,其阻值与使用的导线有关,这里选用120。 的电阻。 PCA82c250的RS引脚控制82c250的工作模式。 由于系统的数据传输速率较慢,这里选择斜率控制模式,RS引脚接一个47kQ的电阻后再接地。 TXD引脚与光电耦合器发送通道的引脚6相接,RXD引脚与光电耦合器接收通道的引脚3相接。 Vref引脚置空,具体电路如图3-2所示: 图3-2PCA82C250收发电路 18 3.1.26N137电路设计 6N137高速光电隔离芯片是将电信号先转化为光信号,再转化为电信号。 它可以在传输信号的同时有效抑制尖锋脉冲和各种噪声干扰,提高开关通道信噪比。 6N137光耦合器的使用需要注意两点: 一是6N137光耦合器的第6脚Vo输出电路属于集电极开路电路,必须上拉一个电阻;二是6N137光耦合器的第2脚和第3脚之间是一个LED,必须串接一个限流电阻⑷。 图3-3的6N137为发送通道,引脚1和4悬空,引脚2接VCC,引脚7和8接VEE,引脚5接地,引脚6与CAN接收器PCA82c250的TXD引脚相接,引脚3通过一个390Q的限流电阻与CAN控制器SJA1000的TX0引脚相接,当TX0为逻辑“1”时,发光二极管不发光,输出三极管截止,TXDout输出高电平;反之,发光二极管发光输出三极管导通,引脚6被拉到地,TXDout输出低电平,同理可得图作为接收通道的6N137逻辑。 发送通道和接收通道的NC引脚都置空,接收通道各引脚接法不再表达,如图3-4所示: 3-36N137发送通道 19 图3-46N137接收通道 3.1.3MAX232接口电路设计 RS-232c接口电平采用的是负逻辑电平,即逻辑为-3V〜-15V,逻辑〃0〃为+3V〜+15Vo而CAN总线采用〃显性〃和〃隐性〃两个互补的逻辑值表示〃0〃和〃1〃,它的信号以两线之间的〃差分〃电压形式表现。 因此,MAX232构成的接口转换电路的功能是实现RS232电平与单片机AT89c51串口的TTL电平之间的相互转换⑷。 接口电路如图3-5所示: MAX232电平转换芯片的Rlout和Tlin弓I脚接AT89C51单片机芯片的RXD引脚和TXD引脚。 而
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- at89c51 单片机 控制 can 总线 rs232 接口 电路设计