首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

请问can的问题

请问can的问题

void MSCAN0Trans(byte * msgout){
  .
  .
  .
if (CAN0TXDSR4 != 0xff){
*ID = 0x11;
*(ID+1) = 0xff;
*(ID+2) = 0xff;
*(ID+3) = 0xFE;
//SCI0_TRAN_MSCAN(ID,msgout,0);
}

CAN0TFLG = cansel; /*clearing TxE to lauch transmission*/

PTM_PTM2 = 1;
time_delay_can();
PTM_PTM2 = 0;
}
请问在这个函数里,if (CAN0TXDSR4 != 0xff)这句是什么意思呢,PTM_PTM2 又是什么呢。为什么要time_delay_can()做延时。如果没有这个延时会怎么样
我不太清楚这段程序用的芯片类型.姑且以我的理解说一下吧,希望有高手指正.
PTM_PTM2应该是一个IO口的管脚,在它高低电平变化中间加上时间延迟函数(time_delay_can())是为了观察到这个变化.
CAN0TXDSR4估计是一个标志位吧,和CAN口的寄存器有关吧?
看程序需要和硬件相结合,这样容易明白,尤其是一些外围设备.
学无止境
芯片mc9s12dt128
谢谢你啊,我看到了,PTM_PTM2是can的端口
返回列表