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

厦门市建设工程安全管理协会网站做网站公司哪家

厦门市建设工程安全管理协会网站,做网站公司哪家,万网如何做网站,上海关键词优化外包前言#xff1a; 在整个蓝桥杯考试中涉及串口的次数还是较多#xff0c;这里写下这篇博客#xff0c;记录一下自己的学习过程。 STM32Cubemx配置#xff1a; 首先#xff0c;我们点击左侧的Connectivity选择USART1进行如下配置。 使能串口中断 在左侧的管脚配置上也要做出…前言 在整个蓝桥杯考试中涉及串口的次数还是较多这里写下这篇博客记录一下自己的学习过程。 STM32Cubemx配置 首先我们点击左侧的Connectivity选择USART1进行如下配置。 使能串口中断 在左侧的管脚配置上也要做出修改 到此为止我们就配置完了点击生成代码即可。 代码部分 发送的代码 我是直接将上一篇博客采集到的电压值直接发送给了串口助手。 首先在main.c中引入头文件string.h并定义一个数组专门用来存储要发送的数据 #include string.h char temp[20]; //定义数组用来发送串口数据 将发送代码放到主循环中 sprintf(temp,ADC_value:%.2f\r\n,adc_value1); HAL_UART_Transmit(huart1,(unsigned char *)temp,strlen(temp),50); 最终效果 接收部分 接收部分最重要的就是串口中断回调函数这个函数的位置在stm32g4xx_hal_uart.h里面在1632行的位置如果记不住就记1600多行的位置 我们新建一个文件叫做myusart.c里面写一下我们的中断服务函数 char rxdata[20]; unsigned char rxdat; unsigned char rx_pointer;char car_type[5]; char car_num[5]; char car_time[13];void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) {rxdata[rx_pointer] rxdat; //在后面是先用在自加HAL_UART_Receive_IT(huart1,rxdat,1); }void uart_rx_proc() {if(rx_pointer 0) //大于0说明接收到数据{if(rx_pointer 22) //判断是否接收成功{ sscanf(rxdata,%4s:%4s:%12s,car_type,car_num,car_time);//对接收的数据进行解析 }else//发生错误输出Error{char temp[10];sprintf(temp,Error\r\n);HAL_UART_Transmit(huart1,(uint8_t *)temp,strlen(temp),50); }rx_pointer 0; //指针归位memset(rxdata,0,sizeof(rxdata)); //初始化为0} } 我们再同样定义一个myusart.h的文件  #ifndef __MYUSART_H #define __MYUSART_H#include main.hvoid HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart); void uart_rx_proc(void);extern char car_type[5]; extern char car_num[5]; extern char car_time[13];#endif我们只需要在main.c的while新婚换里面调用以下代码即可完成串口的接收 if(rx_pointer ! 0) {int media rx_pointer;HAL_Delay(1);if(media rx_pointer) uart_rx_proc(); } 我们简单的显示一下 sprintf(text,car_type:%s,car_type); LCD_DisplayStringLine(Line5,(uint8_t *)text); sprintf(text,car_num:%s,car_num); LCD_DisplayStringLine(Line6,(uint8_t *)text); sprintf(text,tim:%s,car_time); LCD_DisplayStringLine(Line7,(uint8_t *)text); 最终效果实现 补发 这里我曾经出现了一个小BUG在这里记录一下就是无论如何在发送数据的时候不要人为的给数据加上\r\n因为这个串口助手的界面不如原子哥的界面所以我经常使用正点原子提供的串口助手在使用这个串口助手的时候我会不经意间加上“\r\n”所以代码就会出现一些BUG而蓝桥杯官方提供的串口助手就不会出现这个问题因为你没办法加上回车。而且在判断接收字符的代码中我们一般不把\r\n计入字符串的总数这点一定要注意。比如这里 这里我就设定的字符数据是22个。 此外还有一个小BUG就是有时候我发现串口接收到的数据最后一位始终为0这个让我百思不得其解最后在调试的时候我发现了问题所在        用来接收数据的字符设定的少了一些​​​​​​​        所以导致最后一位始终为0。
http://www.hkea.cn/news/14323186/

相关文章:

  • 郑州七七网站建设西安网站建设运维
  • 温州联科网站建设wordpress建站解析
  • 公司的网站建设费用属于什么费网站建设怎么问问题
  • 汽车电子商务网站建设规划书二级域名和一级域名优化难度
  • 苏州网站开发公司招聘信息ui是什么工作
  • 全是广告的网站单页面推广网站模版
  • 张家界住房和城乡建设局网站网站未备案wordpress
  • 国家机构网站建设工商局网站做年报
  • 长春网站制作一般需要多少钱做网站很挣多少钱
  • 哪里有免费的网站模板下载那些网站使用vue做的
  • 东莞网站平台后缀长沙百度
  • 德阳网站设计他达拉非功效与作用主要会有哪些
  • 建站之星多语言个人网站用什么建站程序
  • wordpress百度云网盘seo课程培训班
  • 企业网站策划方案模板在线编辑网页
  • 网站免费建站广告机公司网站域名 优帮云
  • 东海建设局网站上海建设工程造价信息网
  • flash 网站设计买了winhost网站空间在哪里登陆
  • 网站seoapp贵州省建设厅审图网站
  • 网站建设办公纺织品公司网站建设
  • 专业网站建设机构网站的免费空间是什么
  • 网站开发项目税率品牌网站制作公司
  • 给网站做网络安全的报价东莞食品网站建设
  • 深圳网站维护服务的公司广东广州安全教育平台
  • 专门做恐怖电影网站广告设计公司制作
  • 怎样建设门户网站手机wap网页
  • 自己做的网站如何让别人看到网站 前置审批
  • 企业做网站推广南宁东凯做网站的公司
  • 网站前端用的到psjsp做网站教程
  • 12306网站花多少钱做的网页制作公司怎么做