参照renesas官方网站rcj05b0026_cm16canap.pdf资料中CAN应用说明。现有一处不明白的地方。
CAN消息的接受和发送分为3个步骤其中CAN的配置给出了源程序,程序如下:
void config_can0(void);
void config_can0(){
c0ctlr_addr.b.reset=1; /*进入配置模式*/
c0ctlr_addr.b.sleep=0; /*解除CAN睡眠模式*/
while(!c0str_addr.b.state_reset){} /*确认复位状态*/
c0ctlr_addr.b.porten=1; /*CAN断口允许*/
c0ctlr_addr.b.loopback=0;
c0ctlr_addr.b.msgorder=1;
c0ctlr_addr.b.basiccan=1;
c0ctlr_addr.b.buserren=0;
c0ctlr_addr.b.tsprescale=0;
set_bitrate_can0(); /*波特率的设定*/
set_mask_can0(); /*屏蔽寄存器设定*/
c0ctlr_addr.b.reset=0; /*进入工作模式*/
while(c0str_addr.b.state_reset){} /*工作模式确认*/
}
不明白之处是:set_mask_can0();/*屏蔽寄存器设定*/
不知道具体是怎么设置的。找遍该资料,也没发现有这个子程序。硬件手册介绍的不是很详细。请RENESAS工程师给予帮助。谢谢!本人邮箱 zebond_08@163.com