日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

rtthread 串口dma接收_rtthread 添加串口 (uart3)

發布時間:2024/3/26 编程问答 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 rtthread 串口dma接收_rtthread 添加串口 (uart3) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1.查詢uart配置過程

文件路徑: /drivers/board.h

使能RTT uart驅動

2.使能usart3總線

打開 /drivers/board.h

#define BSP_UART3_RX_USING_DMA

#define BSP_USING_UART3

#define BSP_UART1_TX_PIN "PB10"

#define BSP_UART1_RX_PIN "PB11"

3.使能HAL庫相應模塊

打開 /drivers/ stm32f7xx_hal_conf.h

使能 #define HAL_UART_MODULE_ENABLED

4.添加硬件初始化代碼

通過 stm32cubemx工具使能uart2硬件,在一下路徑

\Core\Src\stm32f7xx_hal_msp.c中將HAL_UART_MspInit拷貝到 /drivers/board.c中

void HAL_UART_MspInit(UART_HandleTypeDef*uartHandle)

{

GPIO_InitTypeDef GPIO_InitStruct= {0};if(uartHandle->Instance==USART3)

{/*USART3 clock enable*/__HAL_RCC_USART3_CLK_ENABLE();

__HAL_RCC_GPIOB_CLK_ENABLE();/**USART3 GPIO Configuration

PB10 ------> USART3_TX

PB11 ------> USART3_RX*/GPIO_InitStruct.Pin=GPIO_PIN_10;

GPIO_InitStruct.Mode=GPIO_MODE_AF_PP;

GPIO_InitStruct.Speed=GPIO_SPEED_FREQ_HIGH;

HAL_GPIO_Init(GPIOB,&GPIO_InitStruct);

GPIO_InitStruct.Pin=GPIO_PIN_11;

GPIO_InitStruct.Mode=GPIO_MODE_INPUT;

GPIO_InitStruct.Pull=GPIO_NOPULL;

HAL_GPIO_Init(GPIOB,&GPIO_InitStruct);

}

}

5.驗證

6.測試代碼

#include

#define SAMPLE_UART_NAME "uart3"

/*用于接收消息的信號量*/

static structrt_semaphore rx_sem;staticrt_device_t serial;/*接收數據回調函數*/

staticrt_err_t uart_input(rt_device_t dev, rt_size_t size)

{/*串口接收到數據后產生中斷,調用此回調函數,然后發送接收信號量*/rt_sem_release(&rx_sem);returnRT_EOK;

}/**

* 串口接受線程

* @param parameter*/

static void serial_thread_entry(void *parameter)

{charch;while (1)

{/*從串口讀取一個字節的數據,沒有讀取到則等待接收信號量*/

while (rt_device_read(serial, -1, &ch, 1) != 1)

{/*阻塞等待接收信號量,等到信號量后再次讀取數據*/rt_sem_take(&rx_sem, RT_WAITING_FOREVER);

}/*讀取到的數據通過串口錯位輸出*/ch= ch + 1;

rt_device_write(serial,0, &ch, 1);

}

}static int uart_sample(int argc, char *argv[])

{

rt_err_t ret=RT_EOK;charuart_name[RT_NAME_MAX];char str[] = "hello RT-Thread!\r\n";if (argc == 2)

{

rt_strncpy(uart_name, argv[1], RT_NAME_MAX);

}else{

rt_strncpy(uart_name, SAMPLE_UART_NAME, RT_NAME_MAX);

}/*查找系統中的串口設備*/serial=rt_device_find(uart_name);if (!serial)

{

rt_kprintf("find %s failed!\n", uart_name);returnRT_ERROR;

}/*初始化信號量*/rt_sem_init(&rx_sem, "rx_sem", 0, RT_IPC_FLAG_FIFO);/*以中斷接收及輪詢發送模式打開串口設備*/rt_device_open(serial, RT_DEVICE_FLAG_INT_RX);/*設置接收回調函數*/rt_device_set_rx_indicate(serial, uart_input);/*發送字符串*/rt_device_write(serial,0, str, (sizeof(str) - 1));/*創建 serial 線程*/rt_thread_t thread= rt_thread_create("serial", serial_thread_entry, RT_NULL, 1024, 25, 10);/*創建成功則啟動線程*/

if (thread !=RT_NULL)

{

rt_thread_startup(thread);

}else{

ret=RT_ERROR;

}returnret;

}/*導出到 msh 命令列表中*/MSH_CMD_EXPORT(uart_sample, uart device sample);

總結

以上是生活随笔為你收集整理的rtthread 串口dma接收_rtthread 添加串口 (uart3)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 国产一级高清视频 | 国产日韩一区二区三区在线观看 | 亚洲一区网站 | 青青青国产在线 | 啪啪免费视频网站 | 色姑娘综合 | 日韩精品一区二区三区视频在线观看 | 伊人91视频 | 久久大尺度 | 亚洲伦理自拍 | 国产成人在线网站 | 亚洲在线免费 | 色婷婷av一区二区三 | 丝袜ol美脚秘书在线播放 | 国产精品 日韩 | 亚洲AV无码成人精品区明星换面 | 国产永久在线 | 麻豆久久久9性大片 | 麻豆视频在线 | 暴力调教一区二区三区 | 亚洲日本中文字幕在线 | 有码在线视频 | 夜色在线影院 | 日韩欧美国产一区二区三区在线观看 | 久久精品国产亚洲av高清色欲 | 国产一区二区视频网站 | hd丰满圆润的女人hd | 国产av无码专区亚洲av麻豆 | 日韩久久精品视频 | 久久99精品久久久久久琪琪 | 国产91亚洲 | 免费在线日本 | 一级国产视频 | 男生尿隔着内裤呲出来视频 | 天天躁日日躁aaaaxxxx | 日本孕妇孕交 | 99精品乱码国产在线观看 | 伊人精品一区二区三区 | 手机版av | 草草地址线路①屁屁影院成人 | 日韩网站在线播放 | 老司机免费精品视频 | 日本福利一区二区三区 | 亚洲第一字幕 | 男女激情av | 色欲av无码一区二区三区 | 秋霞在线一区 | 蜜桃在线一区二区三区 | 久久精品av | 中文字幕人妻一区二区三区 | 亚洲成人一区在线 | 91天天干| 久操视频在线观看 | 一色av| 激情视频亚洲 | 亚洲av无码一区二区三区在线播放 | 久久久免费网站 | 久久成人亚洲 | 午夜免费播放观看在线视频 | 伊伊成人 | 污的视频在线观看 | 国产精品无码久久久久高潮 | 一区二区美女 | 国产真人无遮挡作爱免费视频 | 日韩性网 | 亚洲品质自拍视频 | 夜色综合| 精品亚洲乱码一区二区 | 97欧美视频 | 亚洲成人麻豆 | 国产成人在线视频观看 | 影音先锋国产资源 | 羞羞漫画在线播放 | 日本欧美视频 | a级一级片| 91啪在线观看 | 国产手机在线视频 | 国产中文字字幕乱码无限 | 欧美精品一区三区 | 六月婷婷在线 | 毛片网站在线 | 色爱av综合 | 欧美成性色 | 越南a级片 | 美女久久视频 | 色哟哟一区二区三区 | 午夜偷拍福利 | 午夜性福利 | 在线看污视频 | 伊人啪啪| 成年人视频在线免费观看 | 久久久精品电影 | 国产一区二区三区在线免费观看 | 国语对白一区二区三区 | 浪漫樱花动漫在线观看免费 | 成人教育av在线 | 99久久精品一区 | 亚洲成熟毛多妇女av毛片 | 日韩欧美一区二区一幕 |