如何使用  UART1  作为上位机控制串口 
                                
 
(  Pual Lin  ) 
NXP  提供的  Coordinator  例程中都是以  UART0  作为串口接收,即上位机  GUI  软
件通过  UART0  来对  Dongle  进行命令控制。如果我们想使用  UART1  来作为串口接收,
就需要在程序中做出如下改动,下面以 JN-AN-1216-Zigbee-3-0-IoT-ControlBridge  例
程为例。 
 
1、 编辑文档  irq_JN516x.S, 
 
PIC_ChannelPriorities: 
    .byte 0                 # pwm1 priority 
    .byte 0                 # pwm2 priority 
    .byte 0                 # system controller priority 
    .byte 7                 # MAC priority 
    .byte 0                 # AES priority 
    .byte 0                 # PHY priority 
    .byte 5                 # uart0 priority 
    .byte 5                 # uart1 priority 
    .byte 0                 # timer0 priority 
    .byte 0                 # spi slave priority 
    .byte 0                 # i2c maste/slave priority 
    .byte 0                 # spi master priority 
    .byte 0                 # pwm4 priority 
    .byte 0                 # analog peripherals priority 
    .byte 0                 # pwm3 priority 
.byte 15                # tick timer priority 
 
2、 编辑文档  Makefile, 
 
添加  CFLAGS += -DUART=1 
 
3、 编辑  uart.c, 
 
PUBLIC void UART_vInit(void) 
{ 
……………………… 
#if (UART == E_AHI_UART_0) 
vAHI_UartSetRTSCTS(UART, TRUE); 
#endif 
……………………… 
} 
PUBLIC void UART_vRtsStopFlow(void) 
{ 
#if (UART == E_AHI_UART_0) 
vAHI_UartSetControl(UART,  FALSE,  FALSE,  E_AHI_UART_WORD_LEN_8, 
TRUE, 
E_AHI_UART_RTS_HIGH); 
#endif 
} 
PUBLIC void UART_vRtsStartFlow(void) 
{ 
#if (UART == E_AHI_UART_0) 
vAHI_UartSetControl(UART,  FALSE,  FALSE,  E_AHI_UART_WORD_LEN_8, 
TRUE, 
E_AHI_UART_RTS_LOW); 
#endif 
} 
PUBLIC void UART_vTxChar(uint8 u8Char) 
{ 
    while ( !UART_bTxReady () && !( u8AHI_UartReadLineStatus ( UART 
) & E_AHI_UART_LS_TEMT ) ); 
    vAHI_UartWriteData(UART, u8Char); 
    while ( !UART_bTxReady() && !( u8AHI_UartReadLineStatus ( UART 
) & E_AHI_UART_LS_TEMT ) ); 
}