基于CAN总线的车门控制

loading 分享 2026-7-18 下载文档

基于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总线的车门控制.doc 将本文的Word文档下载到电脑
搜索更多关于: 基于CAN总线的车门控制 的文档
相关推荐
相关阅读