TMS320F2812 CAN通信初始化与例程
需积分: 9 45 浏览量
更新于2024-11-13
收藏 9KB TXT 举报
"TMS320F2812_CAN是一个关于TMS320F2812微控制器的CAN(Controller Area Network)通信例程。该例程包括了500Kbps的传输速率配置和静默模式设置。"
在微控制器应用中,CAN总线是一种广泛应用的串行通信协议,特别适合于车辆和工业自动化中的多节点通信。TMS320F2812是Texas Instruments(TI)公司生产的一款高性能浮点数字信号处理器,它内置了CAN接口,能够方便地实现CAN通信。
在这个例程中,我们首先看到一些包含的头文件,如"DSP28_Device.h",这是TI为TMS320F2812提供的一组系统控制相关的定义和函数。接下来是一些全局变量声明,如`j`, `i`, `temp`, `can_rev1`, `can_rev2`, `can_rev3`,它们可能用于存储数据或作为循环计数器。
在例程的初始化部分,有多个函数被调用:
1. `InitSysCtrl()`:这个函数用于设置系统的时钟和其他基本控制,确保微控制器能正常工作。
2. `DINT`:这个指令用于关闭中断,防止在初始化过程中发生意外的中断事件。
3. `InitPieCtrl()` 和 `InitPieVectTable()`:这两个函数与中断处理有关,`InitPieCtrl()` 初始化外围中断控制器(Peripheral Interrupt Controller, PIE),`InitPieVectTable()` 配置中断向量表,使得处理器知道如何响应特定的中断事件。
4. `InitECan()`:这是CAN模块的初始化函数,它将设置CAN控制器的参数,如波特率、接收和发送邮箱等。
在主函数`main()`中,我们看到对中断处理的配置,例如:
- `PieCtrlRegs.PIEIER9.bit.INTx5=1;` 这行代码启用了ECAN0中断,即中断9.5。
- `IER=IER|0x0100;` 启用CPU的中断9。
- `EINT;` 和 `ERTM;` 分别开启全局中断和实时监控模式。
最后,`InitECan()`函数的调用是关键,它将设置CAN的相关参数,如配置MBOX0和MBOX15作为接收和发送邮箱,以及设置500Kbps的波特率和静默模式。在实际应用中,用户可能会根据具体需求修改这些参数。
这个例程为使用TMS320F2812进行CAN通信提供了基础框架,开发者可以通过它了解如何配置和操作微控制器的CAN接口,以便进行更复杂的通信任务。
2021-10-01 上传
2022-09-20 上传
2022-07-14 上传
2013-03-09 上传
2022-09-19 上传
2022-09-19 上传
2022-09-24 上传
x30402
- 粉丝: 0
- 资源: 2
最新资源
- 高清艺术文字图标资源,PNG和ICO格式免费下载
- mui框架HTML5应用界面组件使用示例教程
- Vue.js开发利器:chrome-vue-devtools插件解析
- 掌握ElectronBrowserJS:打造跨平台电子应用
- 前端导师教程:构建与部署社交证明页面
- Java多线程与线程安全在断点续传中的实现
- 免Root一键卸载安卓预装应用教程
- 易语言实现高级表格滚动条完美控制技巧
- 超声波测距尺的源码实现
- 数据可视化与交互:构建易用的数据界面
- 实现Discourse外聘回复自动标记的简易插件
- 链表的头插法与尾插法实现及长度计算
- Playwright与Typescript及Mocha集成:自动化UI测试实践指南
- 128x128像素线性工具图标下载集合
- 易语言安装包程序增强版:智能导入与重复库过滤
- 利用AJAX与Spotify API在Google地图中探索世界音乐排行榜