问答

汇集网友智慧,解决技术难题

21ic问答首页 - TAG - lpuart
  • HC32L130DMA+LPUART发送,用block模式,只能传送一个block

    [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]请教各位一个问题:[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]使用LPUART0+DMA,发送4个字节,结果查看寄存器,SRCADR只前进了一位,就卡住了,貌似LPUART没给DMA触发信号[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]代码如下:[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]uint8_t u8TxData[8] = {'A','T','\r','\n'}; //addr: 0x20000000[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]int32_t main(void)[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]{ [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] uint32_t i;[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] //uart端口配置[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] App_UartPortInit();[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] //UART模块配置[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] App_UartCfg();[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] //DMA参数配置[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] App_DmaCfg();[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] while(1)[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] {[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] if(5 == Dma_GetStat(DmaCh1))[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] {[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] //清除通道0状态值 [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] Dma_DisableChannel(DmaCh1);[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] break;[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] }[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] }[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] while(1){[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] }[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]}[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]//UART模块配置[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]void App_UartCfg(void)[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]{[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] stc_lpuart_cfg_t stcCfg;[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] DDL_ZERO_STRUCT(stcCfg);[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] ///<外设模块时钟使能[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] Sysctrl_SetPeripheralGate(SysctrlPeripheralLpUart0,TRUE); [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] ///CH1)[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] Dma_Enable(); //DMA模块使能[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] Dma_InitChannel(DmaCh1, &stcDmaCfg); //DMA通道1初始化[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] Dma_EnableChannel(DmaCh1); //使能通道1[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]}[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]//uart端口配置[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]void App_UartPortInit(void)[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px]{[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] stc_gpio_cfg_t stcGpioCfg;[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] DDL_ZERO_STRUCT(stcGpioCfg);[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] Sysctrl_SetPeripheralGate(SysctrlPeripheralGpio,TRUE);[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(242, 249, 253)][font=Tahoma, "][size=16px] ///

    HC ck lpuart DMA ST tc

    2307浏览量 1回复量 关注量
  • HC32L136K8TA的LpUart通信不上

    [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]把官方历程lpuart_int里面的LpUart1修改为我实际使用的LpUart0(PC04-TXD PC05-RXD),一直通信不上,发送接收都没反应,硬件排查没什么问题。用另外1个非低功耗的串口Uart0是正常的。[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/******************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]* Include files[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]#include "ddl.h"[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]#include "lpuart.h"[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]#include "lpm.h"[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]#include "gpio.h"[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]#include "sysctrl.h"[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/******************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]* Local pre-processor symbols/macros ('#define') [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/******************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]* Global variable definitions (declared in header file with 'extern')[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/******************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]* Local type definitions ('typedef') [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/******************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]* Local function prototypes ('static')[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/******************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]* Local variable definitions ('static') *[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]uint8_t u8TxData[2] = {0x00,0x55};[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]uint8_t u8RxData = 00;[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/*****************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]* Function implementation - global ('extern') and local ('static')[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]void App_LpUartPortCfg(void);[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]void App_LpUartCfg(void);[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]/**[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]** \brief Main function of project[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]**[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]** \return uint32_t return value, if needed[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]**[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]** This sample[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]**[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]******************************************************************************/[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]int32_t main(void)[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]{ [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] ///< 端口配置[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] App_LpUartPortCfg();[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] ///< LPUART配置[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] App_LpUartCfg();[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] //发送数据[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] LPUart_SendDataIt(M0P_LPUART0, 0x55); [/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] while(1)[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] {[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] ;[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px] }[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]}[/size][/font][/backcolor][/color] [color=#444444][backcolor=rgb(255, 255, 255)][font=Tahoma, "][size=16px]///

    hc32l136 UART通信 lpuart TI IO include

    2682浏览量 2回复量 关注量
  • HC32L136K8TA的LpUart通信不上 sos

    把官方历程lpuart_int里面的LpUart1修改为我实际使用的LpUart0(PC04-TXD PC05-RXD),一直通信不上,发送接收都没反应,硬件排查没什么问题。用另外1个非低功耗的串口Uart0是正常的。 /****************************************************************************** * Include files ******************************************************************************/ #include "ddl.h" #include "lpuart.h" #include "lpm.h" #include "gpio.h" #include "sysctrl.h" /****************************************************************************** * Local pre-processor symbols/macros ('#define') ******************************************************************************/ /****************************************************************************** * Global variable definitions (declared in header file with 'extern') ******************************************************************************/ /****************************************************************************** * Local type definitions ('typedef') ******************************************************************************/ /****************************************************************************** * Local function prototypes ('static') ******************************************************************************/ /****************************************************************************** * Local variable definitions ('static') * ******************************************************************************/ uint8_t u8TxData[2] = {0x00,0x55}; uint8_t u8RxData = 00; /***************************************************************************** * Function implementation - global ('extern') and local ('static') ******************************************************************************/ void App_LpUartPortCfg(void); void App_LpUartCfg(void); /** ****************************************************************************** ** \brief Main function of project ** ** \return uint32_t return value, if needed ** ** This sample ** ******************************************************************************/ int32_t main(void) { ///< 端口配置 App_LpUartPortCfg(); ///< LPUART配置 App_LpUartCfg(); //发送数据 LPUart_SendDataIt(M0P_LPUART0, 0x55); while(1) { ; } } ///

    hc32l136 UART通信 lpuart TI IO include

    1979浏览量 0回复量 关注量
  • 华大HC32L136 LPUART0异常

    采用hc32l13x_ddl_Rev1.9.1 Lite 里面example目录下的lpuart示例,将串口IO适配成自己硬件板子,板子TX\RX接线到PC端;1. 发送时钟引用PCLK,与PC端通信正常; 2. 发送时钟用内部RCL(38.4K),数据发送不出来,并且PC端给硬件发送数据,也无中断触发; stcCfg.enStopBit = LPUart1bit; ///<1停止位 stcCfg.enMmdorCk = LPUartDataOrAddr; ///<偶校验 stcCfg.stcBaud.enSclkSel = LPUartMskRcl; ///<传输时钟源 stcCfg.stcBaud.u32Sclk = 38400; ///

    UART0 hc32l136 lpuart pc

    1677浏览量 8回复量 关注量