• 大小: 4KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-01-07
  • 语言: 其他
  • 标签: STM32  USART  DMA  

资源简介

该代码同时支持stm32 f1 系列 的 三路USART 通道, 全部采用 DMA 自动收发数据, 通过中断返回判断数据是否收发完成。 代码已经测试通过可以,可以直接使用。在移植使用时需要注意,IO口 / 波特率 等信息

资源截图

代码片段和文件信息

#include “Hal_Dma_Usart/hal_usart_dma.h“
#include “liiot_net_device.h“
#include “sys_timer.h“
#include 

static uint32_t (*hal_usart_dma_get_sys_tick)(void);

typedef struct
{
    USART_TypeDef           *usart_port;
    DMA_Channel_TypeDef     *usart_send_dma_chnl;
    DMA_Channel_TypeDef     *usart_recv_dma_chnl;   
}_usart_dma_chnl;


static _usart_dma_chnl usart_dma_chnl[UART_PORT_INDEX] = {
    USART1 DMA1_Channel4 DMA1_Channel5
    USART2 DMA1_Channel7 DMA1_Channel6
    USART3 DMA1_Channel2 DMA1_Channel2
};


/* UART 数据结构 */
typedef struct
{
#if LIIOT_CONV_HOST_MAX
    liiot_convergence_host_t    usart_host_net;
#endif    
    _usart_dma_chnl             *usart_chnl;
    bool                        usart_tx_flg;
    bool               

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件       21128  2019-04-18 14:43  hal_usart_dma.c
     文件        1632  2019-04-22 09:49  hal_usart_dma.h

评论

共有 条评论