新闻中心

EEPW首页>汽车电子>设计应用> 基于CAN总线的温度检测节点设计

基于CAN总线的温度检测节点设计

作者: 时间:2010-01-11 来源:网络 收藏


外围设备电路为PIC16F87x最小系统运行所需要的必要外设。PIC16F87x通过SPI与MCP2510进行数据交换,完成数据包的发送和接收,其接口电路如图3所示。

图3 PIC16F877与MCP2510的接口电路


其中,SCK为SPI时钟,PIC16F87x模块的SPI接口接MCP2510的SI、SO、SCK,RA4与RA1分别控制MCP2510的芯片复位和片选。INT接受MCP2510的中断请求。

系统软件设计

1系统软件流程

为了避免因干扰而产生误动作,软件采取了一些冗余和容错处理,在A/D模块处理采样数据时,采用了软件滤波措施,以滤除电路中可能会出现的尖峰干扰。

方法为连续采样五次,通过比较判断,去掉其中的最大值和最小值, 其余三次的值求和后取平均值,把平均值作为CPU用来划分温度范围的有效数据。数据包的解析和封装都遵循的应用层协议,主程序流程如图4所示。

图4 主程序流程



评论


相关推荐

技术专区

关闭