📄 程序说明.txt
字号:
该程序包括P8XC5X2.H、 SJA_BCANCONF.h、 SJA_BCANFUNC.c、 string.h和主程序SCAN.c五个部分。除主程序SCAN.c之外,其它四个程序均为直接调用的模块,无需更改。
主程序SCAN.c包括以下几个部分:
(1)Init_Cpu:单片机初始化,用于打开串口中断;
(2)Init_T2 :定时/计数器2初始化,设置串口工作方式3,定时器2作波特率发生 器,波特率1200bps,晶振11.0592MHz。
(3)Sja_1000_Init:CAN控制器SJA1000初始化,依次设置波特率、ACR、AMR、输出模式、时钟分频,并给控制寄存器赋初值。
(4)ex0_int: 外部中断0服务子程序,处理CAN的发送和接收中断。
(5)Serial_Int:串口中断服务程序,用于处理接收过来的数据。该部分的流程如下:
中断触发-将收到的数据字节赋给某个数组-判断是否帧起始符-判断是否帧结
束符-判断是否为废帧或干扰帧,是则丢掉-计算校验和-校验正确则将接收过
来的数据进行筛选并依次赋给对应临时数组-每分离出一个参数的3个字节即调用
CAN的发送函数-三个参数都发送完后将各参数清零,恢复起始状态。
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -