ZHCABA8 September   2020 TM4C1230D5PM , TM4C1230E6PM , TM4C1230H6PM , TM4C1231C3PM , TM4C1231D5PM , TM4C1231D5PZ , TM4C1231E6PM , TM4C1231E6PZ , TM4C1231H6PGE , TM4C1231H6PM , TM4C1231H6PZ , TM4C1232C3PM , TM4C1232D5PM , TM4C1232E6PM , TM4C1232H6PM , TM4C1233C3PM , TM4C1233D5PM , TM4C1233D5PZ , TM4C1233E6PM , TM4C1233E6PZ , TM4C1233H6PGE , TM4C1233H6PM , TM4C1233H6PZ , TM4C1236D5PM , TM4C1236E6PM , TM4C1236H6PM , TM4C1237D5PM , TM4C1237D5PZ , TM4C1237E6PM , TM4C1237E6PZ , TM4C1237H6PGE , TM4C1237H6PM , TM4C1237H6PZ , TM4C123AE6PM , TM4C123AH6PM , TM4C123BE6PM , TM4C123BE6PZ , TM4C123BH6PGE , TM4C123BH6PM , TM4C123BH6PZ , TM4C123FE6PM , TM4C123FH6PM , TM4C123GE6PM , TM4C123GE6PZ , TM4C123GH6PGE , TM4C123GH6PM , TM4C123GH6PZ

 

  1.   摘要
  2.   商标
  3. 1引言
  4. 2为 TI TIVA C 安装 Edde Flex CAN Booster Pack
  5. 3下载并导入 CAN 主机示例
  6. 4用于中断且经过修改的 CAN.C
  7. 5示例工程
    1. 5.1 带有中断的内部环回 (simple_can_loopback)
    2. 5.2 简单 CAN 传输 (simple_can_tx)
    3. 5.3 简单 CAN 接收 (simple_can_rx)
    4. 5.4 CAN UART 桥接器 (can_uart_bridge)
  8. 6CAN 引导加载程序
    1. 6.1 引导加载程序配置
    2. 6.2 引导演示程序 (boot_demo_can)
    3. 6.3 用于实现 LM Flash Programmer 支持的 UART 转 CAN 桥接器
      1. 6.3.1 CCS 演示程序 (uart_to_can)
      2. 6.3.2 SendCANID PC 程序
    4. 6.4 使用 CAN 引导加载程序

用于中断且经过修改的 CAN.C

TivaWare 2.2.0.295 及更早版本中的驱动程序库文件 can.c 版本以及基于 ROM 的版本,针对大多数功能使用接口一 (IF1) 寄存器,并使用接口二 (IF2) 寄存器接收消息 (CANMessageGet())。在主应用程序代码中以及在中断例程或 RTOS 的多个线程中使用 CAN 功能时,这会产生问题。在中断或任务切换期间,接口寄存器的一致性无法保持。本应用手册中包含的更新版 can.c 在 CPU 未处于异常状态时对所有功能使用 IF1 寄存器,并在 CPU 处于异常状态时使用 IF2 寄存器。这简化了使用中断为 CAN 编写代码的过程。使用 RTOS 时,所有 CAN 功能都应在一个线程或一个中断例程中。

位于最新 TivaWare 安装程序的 driverlib 文件夹中的 can.c 文件可以替换为所提供的 can.c 文件并重建驱动程序库,或者可以将所提供的 can.c 文件直接添加到工程中。