新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于C8051的CAN多点实时数据通信系统

基于C8051的CAN多点实时数据通信系统

作者:时间:2012-02-16来源:网络收藏

2 F040单片机
Cygnal公司的51系列单片机F040是集成在一块芯片上的混合信号级单片机,在一个芯片内集成了构成一个单片机数据采集或控制的智能节点所需要的几乎所有模拟、数字外设以及其他功能部件,代表了目前8位单片机控制的发展方向。芯片上有1个12位多通道ADC,2个12位DAC,2个电压比较器,1个电压基准,1个32 kB的Flash存储器,与MCS-51指令集完全兼容的高速CIP-51内核,峰值速度可达25 MI·s-1,并且还有硬件实现的UART串行接口、完全支持2.0A和2.0B的控制器。

3 CAN多点设计
3.1 CAN多点系统硬件结构
设计的CAN多点系统由一台电脑,两块F040单片机开发板组成。结构框图如图2所示。

本文引用地址:http://www.eepw.com.cn/article/155286.htm

b.jpg


在这个系统中,电脑作为主机,通过USB/CAN转换器与CAN总线相连,使用软件工具CANTools-V6.2进行数据地发送、接收以及显示。系统中两个CAN节点分别为开发板1和开发板2,通过编译相应的程序,使得CAN节点能实时把数据发送到主机,主机可根据接收到的数据向CAN节点发出控制信号来改变CAN节点回发的数据,以此达到实时通信控制的目的。同时两个CAN节点之间也能互相进行数据通信,并把所接收到的数据显示在开发板的LCD屏上。
3.2 软件设计
软件设计分为两大部分:(1)主程序的设计。(2)CAN通信库函数程序的编写。
主程序主要涉及的是程序流程,包括调用初始化函数,打开中断,根据与主机通信还是与其他节点通信调用CAN通信库函数编写出相应的通信流程,流程图如图3所示。

c.jpg


CAN通信库函数主要包括:系统初始化函数、CAN初始化函数、CAN中断服务函数、CAN接收数据函数和CAN发送数据函数。
这里详细讲述CAN通信库函数中,CAN接收数据函数、CAN发送数据函数和CAN中断服务函数。



评论


相关推荐

技术专区

关闭