当前位置: 首页 > news >正文

网络技术与网站建设株洲网站设计

网络技术与网站建设,株洲网站设计,浙江省住房和城乡建设厅网站 文件,全国油价今日价格目录 一、轮询模式 1.1 配置USART2为异步模式 1.2 500ms发送一次消息 1.3 通信结果 1.4 串口控制LED 二、中断收发 2.1 开启中断 2.2 中断发送接收 2.2.1 中断发送只需要调用接口 2.2.2 中断接收 2.3 实验结果 三、DMA模式与收发不定长数据 3.1 DMA通道配置 3.2 DMA…

目录

一、轮询模式

1.1 配置USART2为异步模式

 1.2 500ms发送一次消息

 1.3 通信结果

 1.4 串口控制LED

二、中断收发

2.1 开启中断

2.2 中断发送接收

2.2.1 中断发送只需要调用接口

2.2.2 中断接收

2.3 实验结果

三、DMA模式与收发不定长数据

3.1 DMA通道配置

3.2  DMA发送接收函数

3.3 使用空闲中断接收不定长数据


一、轮询模式

1.1 配置USART2为异步模式

 1.2 500ms发送一次消息

 1.3 通信结果

 1.4 串口控制LED

  uint8_t reciveDate[2];while (1){HAL_UART_Receive(&huart1, reciveDate, 2, HAL_MAX_DELAY);HAL_UART_Transmit(&huart1, reciveDate, 2, 100);GPIO_PinState state=GPIO_PIN_SET;if(reciveDate[1]=='1'){state=GPIO_PIN_RESET;}if(reciveDate[0]=='R'){HAL_GPIO_WritePin(GPIOA, GPIO_PIN_8, state);}else if(reciveDate[0]=='G'){HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2, state);}}
}

二、中断收发

2.1 开启中断

2.2 中断发送接收

2.2.1 中断发送只需要调用接口

HAL_UART_Transmit_IT(&huart1, reciveDate, 2);

2.2.2 中断接收

①在程序起始开启中断

 ②重新定义stm32f1xx_hal_uart.c中的函数

__weak void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{/* Prevent unused argument(s) compilation warning */UNUSED(huart);/* NOTE: This function should not be modified, when the callback is needed,the HAL_UART_RxCpltCallback could be implemented in the user file*/
}
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{HAL_UART_Transmit_IT(&huart1, reciveDate, 2);GPIO_PinState state = GPIO_PIN_SET;if (reciveDate[1] == '1'){state = GPIO_PIN_RESET;}if (reciveDate[0] == 'G'){HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2, state);}HAL_UART_Receive_IT(&huart1, reciveDate, 2);//再次启动中断接收
}

2.3 实验结果

三、DMA模式与收发不定长数据

3.1 DMA通道配置

3.2  DMA发送接收函数

只需要将_IT修改为_DMA即可,DMA模式还是有中断参与其中

void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{HAL_UART_Transmit_DMA(&huart1, reciveDate, 2);//dma发送GPIO_PinState state = GPIO_PIN_SET;if (reciveDate[1] == '1'){state = GPIO_PIN_RESET;}if (reciveDate[0] == 'G'){HAL_GPIO_WritePin(GPIOD, GPIO_PIN_2, state);}HAL_UART_Receive_DMA(&huart1, reciveDate, 2);//DMA接收
}

3.3 使用空闲中断接收不定长数据

只有当接收端不再有数据输入时才会触发空闲中断,重新定义

__weak void HAL_UARTEx_RxEventCallback(UART_HandleTypeDef *huart, uint16_t Size)
{/* Prevent unused argument(s) compilation warning */UNUSED(huart);UNUSED(Size);/* NOTE : This function should not be modified, when the callback is needed,the HAL_UARTEx_RxEventCallback can be implemented in the user file.*/
}
void HAL_UARTEx_RxEventCallback(UART_HandleTypeDef *huart, uint16_t Size)
{if(huart==&huart1){HAL_UART_Transmit_DMA(&huart1, reciveDate, Size);//发�?�与接收相同的Size长度的字节数HAL_UARTEx_ReceiveToIdle_DMA(&huart1, reciveDate, sizeof(reciveDate));//接收不定长数�?}
}
http://www.dt0577.cn/news/12913.html

相关文章:

  • GTA5房产网站建设中自建网站平台有哪些
  • 破解软件库合集资料网址大全优化网络培训
  • 淘宝客网站主题下载深圳关键词排名优化系统
  • 做网站盈利靠谱的广告联盟
  • 有什么好的网站做数学题吗青岛网站优化公司
  • 网站模版怎么做百度识图查图片
  • 企业门户网站功能列表aso推广
  • 做网站的标性网站做优化好还是推广好
  • 江西城乡建设培训中心网站代做百度首页排名价格
  • 杭州电商直播培训班怎么做网站优化
  • 简述网站开发的基本流程图百度商店应用市场
  • php 企业网站 后台图片上传外贸网站大全
  • 江门官网建站公司网络推广理实一体化软件
  • 网站开发合同书百度信息流推广技巧
  • 电商网站运营团队建设方案模板广州seo公司哪个比较好
  • 做设计外包的网站长沙百度推广运营公司
  • 建站工具 开源试分析网站推广和优化的原因
  • 三语网站建设google优化推广
  • chn域名注册网站百度资源搜索平台官网
  • 沈阳搜索排名公司优化大师win10能用吗
  • 嘉定区整站seo十大排名广东宣布即时优化调整
  • 百度网站如何做外贸企业网站设计公司
  • 企业网站建设技术班级优化大师电脑版
  • wordpress 分页东莞seo托管
  • 动态Js文件 做网站标题泉州seo技术
  • 金融网站建设谷歌推广怎么样
  • 日本室内设计网站大全吴中seo页面优化推广
  • 自己搭建公司网站长春百度推广电话
  • 广东揭阳疫情最新消息西安优化外包
  • 美食网站的建设开题报告个人推广平台