微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 一种基于AT89C51的三总线转换装置设计

一种基于AT89C51的三总线转换装置设计

时间:08-26 来源:互联网 点击:

层和数据链路层功能,可完成对通信数据的帧处理,其地址为0x000-0x0FF。AT82C50作为CAN控制器和物理总线之间的接口,用于提供总线的差动发送能力和CAN控制器差动接收能力。通过AT82C50的引脚3可选择3种不同的工作方式(高速、斜率控制和待机)。该引脚接地为高速方式,高速光耦隔离用6N137实现,其作用是防止串入信号的干扰。MAX232用来完成RS232电平到微控制器接口电路的TTL电平转换,同时还可进行一些总线端口的工作参数设置。

5 软件设计

在微控制器的控制下,各总线之间进行数据交换,微控制器先对各个总线工作参数进行初始化,设置好时钟、寄存器、波特率、并选择合适的中断方式,对于SJA1000,主要指对控制寄存器CR、验收码寄存器ACR、验收屏蔽寄存器AMR、时钟分频寄存器CDR、总线定时寄存器BTR0、总线定时器BRT1等的设置。USB的传输方式有4种:控制传输、块传输、同步传输和中断传输。本设计中使用了控制传输和块传输。USBN9603的内部寄存器和FIFO缓冲区分别对每个端点进行控制,当接到主机法来的IN标记包时,发送端点应自动向上发送数据。如果没有数据发送,则回应NAK(Negative Acknowledegment)握手包。其主程序流程如图4所示。

在设计软件时,一定要正确选择需要传输数据的2种总线,可以用软件或硬件进行选择。

6 结束语

这种3总线转换器可方便地实现不同端口设备之间的数据通信,USB-CAN的转换速率可以达到1Mb/s。如果现场条件要求较高且适应性要求较强,可采用双CPU、加数据缓冲区RAM等措施来完善电路。这样无形中增加了硬件电路 的复杂性和软件设计的逻辑性。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top