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. Azure、数据、AI开发工具

    Azure.数据.AI开发工具 在今天召开的 Connect(); 2017 开发者大会上,微软宣布了 Azure.数据.AI 开发工具的内容.这是第一天的 Connect(); 2017 的主题演讲 ...

  2. 【SQLServer2008】之改变主键当为null时也不会报错,可以入数据库。

    在SqlServer红框中设置主键,右键会有添加主键选项,并且设置不能为null. 当我们插入主键数据如果为null时,会插不进去,这时候我们需要修改一下,如下图: “标识规范”中选择“是”,就可以了 ...

  3. Mac Security工具使用总结find-identity

    Security是Mac系统中钥匙串和安全模块的命令行管理工具,(图形化工具为Keychain Access.app).钥匙串(Keychain)实质上就是一个用于存放证书.密钥.密码等安全认证实体的 ...

  4. JavaScript -- JavaScript高级程序设计

    /* 基本类型 Undefined, Null, Boolean, Number, String. 复杂类型 Object 它是所有对象的基础类型. 引用类型 Object 创建:new Ojbect ...

  5. Unix环境高级编程—进程控制(二)

    一.函数wait和waitpid 今天我们继续通过昨天那个死爹死儿子的故事来讲(便于记忆),现在看看wait和waitpid函数. #include<sys/wait.h> pid_t w ...

  6. 【BZOJ1776】[Usaco2010 Hol]cowpol 奶牛政坛 树的直径

    [BZOJ1776][Usaco2010 Hol]cowpol 奶牛政坛 Description 农夫约翰的奶牛住在N (2 <= N <= 200,000)片不同的草地上,标号为1到N. ...

  7. 九度OJ 1073:杨辉三角形 (递归)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:3780 解决:1631 题目描述: 输入n值,使用递归函数,求杨辉三角形中各个位置上的值. 输入: 一个大于等于2的整型数n 输出: 题目可 ...

  8. c++ get the pointer from the reference

    int x = 5; int& y = x; int* xp = &x; int* yp = &y; xp is equal to yp. 也就是说,直接对reference取 ...

  9. iOS视频直播用到的协议

    一 .流媒体 1 - 伪流媒体 1.1 扫盲:边下载边播放1.2 伪流媒体:视频不是实时播放的,先把视频放在数据库,再供客户端访问,比如:优酷,爱奇艺等 1.3 特点: 边下边存,文件会保存.遵守了 ...

  10. Linux系统中的python2.x升级至python3

    python2.x升级至python3 由于需要在公司测试环境搭建的Jenkins上面运行接口自动化脚本,所以需要对Jenkins所处的服务器的python环境进行升级,以便运行python3编写的脚 ...