第一范文网 - 专业文章范例文档资料分享平台

基于CAN总线的车门控制

来源:用户分享 时间:2025/6/24 14:20:56 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

基于CAN总线的车门锁控制

dlc=(*databuf&0x0f); if(dlc>8){ dlc=8; }

switch(*databuf&0xC0){ case 0x00:

len=STD_FRAMEID_LENTH+dlc; break; case 0x40:

len=STD_FRAMID_LENTH; case 0x80:

len=EXT_FRAMEID_LENTH+dlc; break; case 0xC0:

len=EXT_FRAMEID_LENTH; defalut: len=0; status=0; break; } if(len>0){

WriteSJARegBlock(REG_CAN_TXFMINFO,databuf,len); SetSJASendCmd(cmd); status=1; }}

return(status); SJA1000接收程序

char SJARcvData(unsigned char *databuf) {

char status=1; unsigned char len; unsigned char dlc;

if(ReadSJAeg(REG_CAN_SR)&RBS_BIT)==0){ status=0; }else{

*databuf=ReadSJAReg(REG_CAN_RXFMINFO);

9

基于CAN总线的车门锁控制

dlc=(*databuf&0x0f); if(dlc>8){ dlc=8; }

switch(*databuf&0xC0){ case 0x00:

len=STD_FRAMEID_LENTH+dlc; break; case 0x40:

len=STD_FRAMID_LENTH; case 0x80:

len=EXT_FRAMEID_LENTH+dlc; break; case 0xC0:

len=EXT_FRAMEID_LENTH; defalut: len=0; status=0; break; } if(len>0){

ReadSJARegBlock(REG_CAN_BXBUF1,databuf+1,len); status=SetBitMask(REG_CAN_CMR,RRB_BIT); }}

return(status); }

SJA1000滤波器设置函数

void SJA1000——Config——Filter(char mode,*Filter) SetBitMask(REG_CAN_MOD,RM_RR_BIT); if(mode>0){

SetBitMask(REG_CAN_MOD,AFM_BIT); } else

{ClearBitMask(REG_CAN_MOD,AFM_BIT); }

WriteSJARegBlock(REG_CAN_ACR0,Filter,8); ClearBitMask(REG_CAN_MOD,RM_RR_BIT);

10

基于CAN总线的车门锁控制

} 4.3 ARM控制程序模块

首先是中断模块,这里我用到的是ARM2103定时器0中断及计时count表示1S中断后+!,以下是中断函数,还有一些控制程序像KEY1,LED1和LED2的控制就是按图表7主程序设计图那样编译在调控。 void Timer0_IntExt(void) {

T0TC = 0; T0PR = 0; T0MCR = 0x03; T0MR0 = Fpclk/400; T0TCR = 0x01; }

void __irq IRQ_Timer0(void) {

T0Flag = 1;

count++; //这里是当车门开后用来计20S时间的 T0IR = 0x01; VICVectAddr = 0; }

void IRQ_Init(void) {

VICIntSelect = 0x00; VICVectCntl0 = 0x20|4;

VICVectAddr0 = (uint32)IRQ_Timer0; VICIntEnable = 1<<4; }

第5章 总结

CAN自诞生以来,以其独特的设计思想、优良的性能和极高的可靠性越来越受到工业界的青睐。随着企业对CAN总线技术要求的不断提高,CAN总线技术将不断完善,各种更先进的通讯技术方案将被提出,在现有技术条件下从可靠性、经济性、可扩展性等方面尽量做出了最优化设计,希望以后有时间我继续研究探讨。

11

基于CAN总线的车门锁控制

参考文献

1,周立功《ARM嵌入式系统基础教程》 北京航空大学出版社 2,铃木雅臣《晶体管电路设计》 科学出版社 3,周立功《嵌入式接口技术》

4,石磊《基于CAN总线的车门控制系统研制》 吉林大学

12

搜索更多关于: 基于CAN总线的车门控制 的文档
基于CAN总线的车门控制.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4tdaa2ge869d31q9oed2_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top