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 = ;
g_Uart2CheckTick = ; 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//

测试:

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[] = {0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38};
mdrv_uart_write(uart2_debug, u8TXDList, 8);
printf("<Debug>222\r\n");
}
break;
}
}

CHAKRA3 UART2的更多相关文章

  1. STM8S 串口应用 UART2 STM8S105

    //少说话.多做事,下面是我验证过没有问题的串口发送接受数据 //使用MCU stm8s105c6 UART2 //初始化时调用: GPIO_DeInit(GPIOD); /* Configure P ...

  2. DM8127 更改调试串口为UART2

    1.uboot修改 1)修改宏定义 /*include/config/ti8148_evm.h*/ #define CONFIG_SYS_NS16550_COM2 0x48024000 #define ...

  3. 灵动微电子ARM Cortex M0 MM32F0010 UART1和UART2中断接收数据

    灵动微电子ARM Cortex M0 MM32F0010 UART1和UART2中断接收数据 目录: 1.MM32F0010UART简介 2.MM32F0010UART特性 3.MM32F0010使用 ...

  4. [转] STM32各种时钟的区别

    [原创]:http://m.oschina.net/blog/129357 我在原创的基础又从另一位博主处引用了一些内容. 时钟系统是处理器的核心,所以在学习STM32所有外设之前,认真学习时钟系统是 ...

  5. 移植mbed到目标板

    上一篇我们导出了mbed基本环境到mdk,根据实际目标还需要做些修改.手头的硬件是ebox平台,芯片STM32F103C8T6,调试器jlink,默认使用UART1. 导出时所选择的NUCLEO-F1 ...

  6. 什么是UART中的FIFO

    FIFO是先进先出缓冲区的意思,即串口接收到的数据可以先进入FIFO,不必马上进入中断服务程序接收,这样可以节省CPU时间.对于发送数据也一样可以把要发送的数据一起写入FIFO,串口控制器按照写入的顺 ...

  7. STC12C5A60S2 双串口通信

    STC12C5A60S2单片机是一款功能比较强大的单片机,它拥有两个全双工串行通信接口,串口1的功能及操作与传统51单片机串行口相同:特殊的是STC12C5A60S2单片机内部有一个独立波特率发生器, ...

  8. stm8s103串口

    #include "uart.h" #define UART2#define uart_115200 1 void Init_UART2(void){#ifdef UART2    ...

  9. STM32时钟数

    在STM32中,有五个时钟源,为HSI.HSE.LSI.LSE.PLL. 其实是四个时钟源,如下图所示(灰蓝色),PLL是由锁相环电路倍频得到PLL时钟. ①.HSI是高速内部时钟,RC振荡器,频率为 ...

随机推荐

  1. _DataStructure_C_Impl:Floyd算法求有向网N的各顶点v和w之间的最短路径

    #include<stdio.h> #include<stdlib.h> #include<string.h> typedef char VertexType[4] ...

  2. 简述Java异常处理机制及其应用

    异常处理机制可以从两个方面来描述,当一个Java程序违反了Java语义规范时,JVM虚拟机就会抛出一个异常,比如说当遇到null时,会抛出一个NullPointerException,当遇到下标越界的 ...

  3. Erlang的系统限制

    Erlang本身对进程数,原子长度等没有限制,但为了提高性能和节省内存,总会在实际实现中和运行环境中作出一些限制. 1.进程数量 缺省情况下同时存在的最大Erlang进程数量不超过2^18=26214 ...

  4. 11 linux nginx上安装ecshop 案例

    一: nginx上安装ecshop 案例 (1)解压到 nginx/html下 浏览器访问:127.0.0.1/ecshop/index.php 出现错误:not funod file 原因:ngin ...

  5. 【BZOJ4453】cys就是要拿英魂! 后缀数组+单调栈+set

    [BZOJ4453]cys就是要拿英魂! Description pps又开始dota视频直播了!一群每天被pps虐的蒟蒻决定学习pps的操作技术,他们把pps在这局放的技能记录了下来,每个技能用一个 ...

  6. springcloud微服务实战--笔记--1、基础知识

    微服务的问题: 分布式事务和数据一致性. 由于分布式事务本身第实现难度就非常大,所以在微服务架构中,我们更强调在各服务之间进行无事务第调用,而对于数据一致性,只要求数据在最后第处理状态是一致第即可:若 ...

  7. Vue知识随记

    数据绑定内支持JavaScript表达式:string字符串反转用.隔开 js: msg:'Hello ' html: {{ msg.split('').reverse().join('.') }} ...

  8. SQL中的四种连接方式

    转自:http://www.cnblogs.com/afirefly/archive/2010/10/08/1845906.html 联接条件可在FROM或WHERE子句中指定,建议在FROM子句中指 ...

  9. TCP/UDP server

    Simple: Sample TCP/UDP server https://msdn.microsoft.com/en-us/library/aa231754(v=vs.60).aspx Simple ...

  10. 【题解】CF359B Permutation

    [题解]CF359B Permutation 求一个长度为\(2n\)的序列,满足\(\Sigma |a_{2i}-a_{2i-1}|-|\Sigma a_{2i}-a_{2i-1}|=2k\) 这种 ...