1、功能说明
    此例程展示了TTCAN Level2严格时间触发模式的运行。

2、使用环境
    软件开发环境：KEIL MDK-ARM V5.34
                 IAR EWARM 8.50.1

    芯片支持：
        N32H730  
        N32H735   
        N32H735EC
        N32H760
        N32H762
        N32H765
        N32H765EC
        N32H785
        N32H785EC
        N32H787
    开发板支持：
        N32H787XKB7_EVB V1.1
        N32H787_EVB_PRO V1.1
    
3、使用说明

    系统配置
        1、时钟源：HSI+PLL
        2、系统时钟频率：600MHz
        3、打印：PA9 - baud rate 115200
        4、节点1:
            FDCAN:
                N32H787XKB7_EVB V1.1:
                    M7 Core：FDCAN7，TX-PJ6,RX-PJ7;
                N32H787_EVB_PRO V1.1:
                    M7 Core: FDCAN7，TX-PD13,RX-PD12;
            时钟源：HSE:25MHz
            时钟源：80MHz
            波特率：500Kbps（仲裁域），1Mbps（数据域）
            工作模式：TTCAN Level2 + 正常模式
            标称位时序：预分频=4，TSEG1=29，TSEG2=10，同步跳转=10
            数据位时序：预分频=2，TSEG1=29，TSEG2=10，同步跳转=10
            帧格式：FDCAN，BRS ON，8字节数据
            标准接收过滤器：禁用
            扩展接收过滤器：1个，ID掩码过滤（ID=0x0AAAAAAA,掩码=0x00000000），存储在RX FIFO0
            接收FIFO：FIFO0禁用，FIFO1禁用
            接收缓冲：禁用
            发送缓冲：5个
            发送FIFO：0个
            发送事件FIFO：禁用
            时间戳：内部时间戳，16分频
            其他：拒绝远程帧与非匹配帧
        5、节点2:
            FDCAN:
                N32H787XKB7_EVB V1.1:
                    M7 Core：FDCAN8，TX-PJ0,RX-PJ1;
                N32H787_EVB_PRO V1.1:
                    M7 Core: FDCAN8，TX-PI12,RX-PI13;
            时钟源：HSE:25MHz
            时钟源：80MHz
            波特率：500Kbps（标称），1Mbps（数据）
            工作模式：TTCAN Level2 + 普通模式
            标称位时序：预分频=4，TSEG1=29，TSEG2=10，同步跳转=10
            数据位时序：预分频=2，TSEG1=29，TSEG2=10，同步跳转=10
            帧格式：FDCAN，BRS ON，8字节数据
            标准接收过滤器：禁用
            扩展接收过滤器：2个，ID掩码过滤（ID=0x1AAAA754,掩码=0x1FFFFFFF），存储在RX FIFO0
                                 ID掩码过滤（ID=0x1AAAA755,掩码=0x1FFFFFFF），存储在RX FIFO1
            接收FIFO：启用FIFO0，大小为32，FIFO0启用，大小为32
            接收缓冲：禁用
            发送缓冲：禁用
            发送FIFO：禁用
            发送事件FIFO：禁用
            时间戳：内部时间戳，16分频
            其他：拒绝远程帧与非匹配帧
            
        6. TTCAN矩阵
            /*****************---------------------------------***************/
            周期 |                             FDCAN1时间标记
                 |     5000       10000       20000       20200        50000        60000      65000
              0  |   Node1_TX1                                       Node1_TXRef   TX_Watch   End_List
              1  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
              2  |                           Node1_TX3   Node1_TX4   Node1_TXRef   TX_Watch   End_List
              3  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
              4  |   Node1_TX1                                       Node1_TXRef   TX_Watch   End_List
              5  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
              6  |                           Node1_TX3   Node1_TX4   Node1_TXRef   TX_Watch   End_List
              7  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
        
        Node1_TX1 : TimeMark:5000     ID:0x1AAAA754
        Node1_TX2 : TimeMark:10000    ID:0x1AAAA755
        Node1_TX3 : TimeMark:20000    ID:0x1AAAA786
        Node1_TX4 : TimeMark:20200    ID:0x1AAAA787
        
            /*****************---------------------------------***************/
            周期 |                             FDCAN2时间标记
                 |     6000       11000       20000       20200        50000        60000      65000
              0  |   Node1_RX1                                                     TX_Watch   
              1  |               Node1_RX2                                         TX_Watch   
              2  |                                                                 TX_Watch   
              3  |               Node1_RX2                                         TX_Watch   
              4  |   Node1_RX1                                                     TX_Watch   
              5  |               Node1_RX2                                         TX_Watch   
              6  |                                                                 TX_Watch   
              7  |               Node1_RX2                                         TX_Watch   
        Node1_TX1 : TimeMark:5000     ID:0x1AAAA754
        Node1_TX2 : TimeMark:10000    ID:0x1AAAA755


    使用方法：
        1、编译后将程序下载到开发板并复位运行。
        2、查看串口打印，串口未打印错误则表示运行正常。

4、注意事项
    N32H787XKB7_EVB V1.1: 连接跳帽J18，不连接跳帽J21
    N32H787_EVB_PRO V1.1：连接跳帽J14，不连接跳帽J21
    
1. Function description

     This routine demonstrates the operation of TTCAN Level 2 in strict time triggered mode.

2. Development environment

    Software development environment: KEIL MDK-ARM V5.34
                                      IAR EWARM 8.50.1

    Supported chips:
        N32H730  
        N32H735   
        N32H735EC
        N32H760
        N32H762
        N32H765
        N32H765EC
        N32H785
        N32H785EC
        N32H787
    Development board support:
        N32H787XKB7_EVB V1.1
        N32H787_EVB_PRO V1.1

3. How to use

    System Configuration:
        1. Clock source: HSI+PLL
        2. System Clock frequency: 
            600MHz
        3. printf: PA9 - baud rate 115200
        4. node1:
            FDCAN:
                N32H787XKB7_EVB V1.1:
                    M7 Core: FDCAN7，TX-PJ6,RX-PJ7;
                N32H787_EVB_PRO V1.1:
                    M7 Core: FDCAN7，TX-PD13,RX-PD12;
            Clock source: HSE:25MHz
            Clock source: 80MHz
            Baudrate: 500Kbps(nominal), 1Mbps(data)
            Working mode: TTCAN Level2 + normal mode
            Nominal bit timing: prescaler=4, TSEG1=29, TSEG2=10, sync jump=10
            Data bit timing: prescaler=2, TSEG1=29, TSEG2=10, synchronous jump=10
            Frame format: FDCAN, BRS ON, 8 bytes data
            Standard filter: disable
            Extended filter: 1, ID mask filter (ID=0x0AAAAAAA,mask=0x00000000), stored in RX FIFO0
            Receive FIFO: FIFO0 disabled, FIFO1 disabled
            Receive buffer: disable
            Send buffer: disable
            Send FIFO: size 5
            Send event FIFO: disable
            Timestamp: internal timestamp, divided by 16
            Others: Reject remote frames and non-matching frames
        5. node2:
            FDCAN:
                N32H787XKB7_EVB V1.1:
                    M7 Core：FDCAN8，TX-PJ0,RX-PJ1;
                N32H787_EVB_PRO V1.1:
                    M7 Core: FDCAN8，TX-PI12,RX-PI13;
            Clock source: HSE:25MHz
            Clock source: 80MHz
            Baudrate: 500Kbps(nominal), 1Mbps(data)
            Working mode: TTCAN Level2 + normal mode
            Nominal bit timing: prescaler=4, TSEG1=29, TSEG2=10, sync jump=10
            Data bit timing: prescaler=2, TSEG1=29, TSEG2=10, synchronous jump=10
            Frame format: FDCAN, BRS ON, 8 bytes data
            Standard filter: disable
            Extended filter: 2, ID mask filter (ID=0x1AAAA754,mask=0x1FFFFFFF), stored in RX FIFO0
                                ID mask filter (ID=0x1AAAA755,mask=0x1FFFFFFF), stored in RX FIFO1
            Receive FIFO: FIFO0 enabled, size 32; FIFO1 enabled, size 32
            Receive buffer: disable
            Send buffer: disable
            Send FIFO: disable
            Send event FIFO: disable
            Timestamp: internal timestamp, divided by 16
            Others: Reject remote frames and non-matching frames

         6. TTCAN matrix
            /*****************---------------------------------***************/
           cycle |                             FDCAN1 time mark
                 |     5000       10000       20000       20200        50000        60000      65000
              0  |   Node1_TX1                                       Node1_TXRef   TX_Watch   End_List
              1  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
              2  |                           Node1_TX3   Node1_TX4   Node1_TXRef   TX_Watch   End_List
              3  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
              4  |   Node1_TX1                                       Node1_TXRef   TX_Watch   End_List
              5  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
              6  |                           Node1_TX3   Node1_TX4   Node1_TXRef   TX_Watch   End_List
              7  |               Node1_TX2                           Node1_TXRef   TX_Watch   End_List
        
        Node1_TX1 : TimeMark:5000     ID:0x1AAAA754
        Node1_TX2 : TimeMark:10000    ID:0x1AAAA755
        Node1_TX3 : TimeMark:20000    ID:0x1AAAA786
        Node1_TX4 : TimeMark:20200    ID:0x1AAAA787
        
            /*****************---------------------------------***************/
           cycle |                             FDCAN2 time mark
                 |     6000       11000       20000       20200        50000        60000      65000
              0  |   Node1_RX1                                                     TX_Watch   
              1  |               Node1_RX2                                         TX_Watch   
              2  |                                                                 TX_Watch   
              3  |               Node1_RX2                                         TX_Watch   
              4  |   Node1_RX1                                                     TX_Watch   
              5  |               Node1_RX2                                         TX_Watch   
              6  |                                                                 TX_Watch   
              7  |               Node1_RX2                                         TX_Watch   
        Node1_TX1 : TimeMark:5000     ID:0x1AAAA754
        Node1_TX2 : TimeMark:10000    ID:0x1AAAA755
        
     Instructions:
        1. After compilation, download the program to the development board and reset it to run.
        2. Check the serial port printing. If the serial port is not printed and there is an error, 
           it indicates that it is running normally.

4. Attention
    N32H787XKB7-EVB V1.1: Connect jump cap J18, do not connect jump cap J21
    N32H787_EVB_PRO V1.1: Connect jump cap J14, do not connect jump cap J21

