void PDMA_Example() { uint8_t unItem; /* Init System, IP clock and multi-function I/O */ SYS_Init(); //In the end of SYS_Init() will issue SYS_LockReg() to lock protected register. If user want to write protected register, please issue SYS_UnlockReg() to unlock protected register. /* Init UART0 for printf */ UART0_Init(); /* Init UART1 for PDMA test */ UART1_Init(); do { /* PDMA Sample Code: UART1 Tx/Rx Loopback */ // printf("\n\n"); printf("+------------------------------------------------------------------------+\n"); printf("| PDMA Driver Sample Code |\n"); printf("| |\n"); printf("+------------------------------------------------------------------------+\n"); printf("| [1] Using TWO PDMA channel to test. < TX1(CH1)-->RX1(CH0) > |\n"); printf("| [2] Using ONE PDMA channel to test. < TX1-->RX1(CH0) > |\n"); printf("+------------------------------------------------------------------------+\n"); unItem = uart_getchar(); IsTestOver =FALSE; if((unItem=='1') || (unItem == '2')) { PDMA_UART(unItem); // printf("\n\n PDMA sample code is complete.\n"); } }while(unItem!=0x27); // return 0; }
/*---------------------------------------------------------------------------------------------------------*/ int32_t main(void) { uint8_t unItem; /* Unlock protected registers */ SYS_UnlockReg(); /* Init System, peripheral clock and multi-function I/O */ SYS_Init(); /* Lock protected registers */ SYS_LockReg(); /* Init UART0 for printf */ UART0_Init(); /* Init UART1 for testing */ UART1_Init(); /*---------------------------------------------------------------------------------------------------------*/ /* SAMPLE CODE */ /*---------------------------------------------------------------------------------------------------------*/ printf("\n\nCPU @ %d Hz\n", SystemCoreClock); printf("\nUART PDMA Sample Program"); /* UART PDMA sample function */ do { printf("\n\n"); printf("+------------------------------------------------------------------------+\n"); printf("| UART PDMA Driver Sample Code |\n"); printf("+------------------------------------------------------------------------+\n"); printf("| [1] Using TWO PDMA channel to test. < TX1(CH1)-->RX1(CH0) > |\n"); printf("| [2] Using ONE PDMA channel to test. < TX1-->RX1(CH0) > |\n"); printf("+------------------------------------------------------------------------+\n"); unItem = getchar(); IsTestOver = FALSE; if((unItem == '1') || (unItem == '2')) { PDMA_UART(unItem); printf("\n\n UART PDMA sample code is complete.\n"); } }while(unItem!=27); while(1); }