﻿================================================================================
                                样例使用说明
================================================================================
Date            Author      IAR       MDK       GCC
2022-03-31      CDT         7.70      5.36      gcc-arm-none-eabi-10.3-2021.10-win32

================================================================================
平台说明
================================================================================
GCC工程，由Eclipse IDE外挂GNU-ARM Toolchain，再结合pyOCD GDB Server实现工程的编译、
链接和调试。在用Eclipse导入工程后，请将xxxx_PyOCDDebug中pyocd-gdbserver和SVD文件
设置为正确的路径；请将xxxx_PyOCDDownload中pyocd设置为正确的路径。注意，这些路径不
能包含非英文字符。

================================================================================
功能描述
================================================================================
本例程实现了经典CAN的数据发送和接收，并将接收到的数据通过串口输出，可在上位机用串口调试
助手软件查看。

说明：
1. 波特率设置：
   1）系统时钟240MHz；
   2）CAN的通信时钟选用系统时钟的6分频，频率40MHz；
   3）CAN位时间分频为通信时钟的2分频，即20MHz；
   4）CAN通信波特率为1Mbps，位时间为20TQ，采样点为75%。
2. 接收筛选器设置：
   1）标准ID 0x701，ID掩码为0，只接收标准ID为0x701的帧；
   2）扩展ID 0x12131415，ID掩码为0x000000F0，可接收扩展ID为0x121314x5的帧；
   3）标准和扩展ID 0x1A1B1C1D，ID掩码为0x0000000F，可接收扩展ID为0x1A1B1C1x的帧和标准
      ID为0x41x的帧。
3. 发送设置：
   CAN控制器会发送收到的帧。

================================================================================
测试环境
================================================================================
测试用板:
---------------------
EV_A4A0_LQ176_Rev1.0

辅助工具:
---------------------
支持CAN通信的设备（简称CAN设备）

辅助软件:
---------------------
串口调试助手软件（115200bps，8N1）

================================================================================
使用步骤
================================================================================
1）用 DAP 接口调试，可以直接通过串口调试助手查看程序运行情况；
2）例程中 CAN 通信波特率为 1Mbps，采样点为75%。将 CAN 设备做同样设置（见波特率设置）后，
   将 CANH 和 CANL 分别与开发板上 CAN1 的 CANH 和 CANL 连接（以太网接口旁）；
3）打开工程，重新编译，启动调试或直接下载程序运行；
4）CAN 设备向开发板发送数据帧，ID 为标准 ID 0x701，串口调试助手会打印收到的数据帧；
   CAN 设备向开发板发送数据帧，ID 为扩展 ID 0x12131415，串口调试助手会打印收到的数据帧；
   CAN 设备向开发板发送数据帧，ID 为扩展 ID 0x1A1B1C1D，串口调试助手会打印收到的数据帧；
   CAN 设备向开发板发送数据帧，ID 为标准 ID 0x41D，串口调试助手会打印收到的数据帧；
   以上，CAN 控制器会发送收到的帧，而被CAN 设备收到。

================================================================================
注意
================================================================================
CAN控制逻辑时钟（PCLK1）频率不能低于CAN通信时钟频率。

================================================================================
