qiuri2008

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

 

APP下:

配置BD文件:

#define PADS_TCON_CONFIG            Unknown_pad_mux
#define PADS_UART2_MODE             Unknown_pad_mux
#define PADS_UART3_MODE             Unknown_pad_mux
#define PADS_UART4_MODE             UART4_MODE(1)
#define PADS_FAST_UART_MODE         Unknown_pad_mux
#define PADS_3DLR_MODE              Unknown_pad_mux
#define PADS_TTL_MODE            Unknown_pad_mux
#define PADS_USBDRVVBUS            Unknown_pad_mux

SW_Config.h 文件 ENABLE_UART2

#ifndef ENABLE_FAVORITE_NETWORK
  #if ENABLE_RIKS_TV
    #define ENABLE_FAVORITE_NETWORK                 ENABLE
#else
    #define ENABLE_FAVORITE_NETWORK                 DISABLE
  #endif
#endif

#ifndef ENABLE_UART2
    #define ENABLE_UART2                            ENABLE
#endif

#ifndef ENABLE_ARC_CHANGE_SPDIF
#define ENABLE_ARC_CHANGE_SPDIF                     DISABLE
#endif

#ifndef ENABLE_SUPPORT_MM_PHOTO_4K_2K
    #define ENABLE_SUPPORT_MM_PHOTO_4K_2K           DISABLE
#endif

drvUartDebug.c

void MDrv_UART2_DebugInit(void)
{
    PrintfUart2(printf("MDrv_UART2_DebugInit()\n"));
    // reset Uart variables
    MS_U16 u16Res = 0x00;
    g_Uart2Command.Index = 0;
    g_Uart2CheckTick = 0;

    uart2_debug = mdrv_uart_open(E_UART_PIU_UART0);
    PrintfUart2(printf("[UART2Init]mdrv_uart_open()>>%u\n", uart2_debug));
    u16Res = mdrv_uart_connect(E_UART_PORT3, E_UART_PIU_UART0);
    PrintfUart2(printf("[UART2Init]mdrv_uart_connect()>>%u\n", u16Res));
...
}

 

测试:

drvUartDebug.c

void MDrv_UART_ExecTestCommand(void)
{
    switch( g_UartCommand.Buffer[_UART_CMD_INDEX1_] )
    {
        case 0x60:
            MDrv_UART_ExecUserDefinedCommand();
            break;

    #if(ENABLE_UART2)
      #if(ENABLE_UART2_TEST)
        case 0x4B:
            printf("[4B]UART2_TXD >> 12345678\n");
            MDrv_UART2_TestTXD();
            break;
      #endif
    #endif
}

 UART1发送测试命令:

 

UART2接收如下:

  

 

 

PM下:

 drvGlobal.h

#define UART_SRC_NONE           0
#define UART_SRC_AEONR2       1
#define UART_SRC_PIUUART0    2
#define UART_SRC_PIUUART1    3

#define USE_1ST_UART                  UART_SRC_AEONR2//UART_SRC_PIUUART0//UART_SRC_PIUUART1
#define USE_2ND_UART                 UART_SRC_PIUUART0 //the 2nd uart
#define USE_3RD_UART                  UART_SRC_NONE //the 3rd uart

#define USE_1ST_UART_PORT        E_UART_PORT0
#define USE_2ND_UART_PORT       E_UART_PORT2
#define USE_3RD_UART_PORT       E_UART_PORT_INVALID

#define USE_UART_BAUDRATE       115200//38400

 

 测试:

uartdebug.c

void MDrv_UART_ExecTestCommand(void)
{
    U8 ucPara1;
    U8 ucPara2;
    U8 ucPara3;

    ucPara1 = g_UartCommand.Buffer[_UART_CMD_INDEX2_];
    ucPara2 = g_UartCommand.Buffer[_UART_CMD_INDEX3_];
    ucPara3 = g_UartCommand.Buffer[_UART_CMD_INDEX4_];

//    printf(">> MDrv_UART_DecodeExtCommand(%x) \r\n", g_UartCommand.Buffer[_UART_CMD_INDEX1_]);

    switch ( g_UartCommand.Buffer[_UART_CMD_INDEX1_] )
    {
        case 0x4B:
            {
                MS_U8 u8TXDList[8] = {0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38};
                mdrv_uart_write(uart2_debug, u8TXDList, 8);
                printf("<Debug>222\r\n");
            }
            break;
    }
}

 

posted on 2018-01-31 19:04  江召伟  阅读(826)  评论(0编辑  收藏  举报