转载请注明出处:http://blog.csdn.net/Righthek 谢谢!
对于一般的CAN模块,进行初始化时,最关键的是以下两步:
1、 配置CAN的位时序;
2、 配置CAN的消息报文;
下面,我们来详细分析上面提到的关键两步。
一、初始化步骤:
1、 第一步,进入初始化模式,在CAN控制寄存器中,将Init位置1;
2、 第二步,在CAN控制寄存器中,将CCE位置1;
3、 第三步,等待Init位置1,此步聚为了确保已经进入初始化模式;
4、 第四步,将位时序的值写入到位时序寄存器(BTR)中;
5、 第五步,将CCE和Init位置为0;
6、 第六步,等待清除Init位,此步聚为了确保已经退出初始化模式;