⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 程序说明.txt

📁 单片机C51环境下的CAN通讯程序
💻 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 + -