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

公司做网站需要什么资料软文街官网

公司做网站需要什么资料,软文街官网,日本做ps4游戏视频网站,品质好房目录 1、硬件及工程 2、实现方法 (1)修改while(1)中的代码: (2)修改2 (3)修改3 (4)修改4 (5)修改5 3、下载并运行 在本文作者的文章中&a…

目录

1、硬件及工程 

2、实现方法

(1)修改while(1)中的代码:

(2)修改2

(3)修改3

(4)修改4

(5)修改5

3、下载并运行


        在本文作者的文章中:细说ARM MCU的串口发送数据的实现过程-CSDN博客  https://wenchm.blog.csdn.net/article/details/139598451

        串口每接收到1字节的数据,就调用一次回调函数。实际上,可以通过修改参数,在接收了一定长度的数据之后再调用回调函数。下面尝试当串口接收到3字节数据后再调用一次回调函数。

1、硬件及工程 

         文章依赖的硬件及工程配置同本文作者的其他文章:细说ARM MCU的串口接收数据的实现过程-CSDN博客 https://wenchm.blog.csdn.net/article/details/139541112

2、实现方法

        为此,需要将HAL_UART_Receive_IT()函数中的Size参数设置为3,也就是把在main.h中声明的RXBUFFERSIZE修改为3,可以直接在main.h中修改。

        假如串口助手向MCU一次发送3字节的数据,其中第二个字节的数据是有意义的,而前后两个字节是编码,作为帧头和帧尾(可以任意设置,此处分别用字符“S”和“E”来表示,它们在ASC Ⅱ码表中对应的十六进制数分别为0x53和0x45)。当MCU通过串口接收到3字节的数后,可以首先判断帧头和帧尾是否正确,如果正确,再进行下一步的处理。

(1)修改while(1)中的代码:

while(1)
{/*USERCODE BEGIN 3 */if((RxBuffer[0] == 0x53)&&(RxBuffer[2] == 0x45)&&(CommFlag == 1)){CommFlag = 0;if(RxBuffer[1]==0x10){HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_SET);HAL_UART_Transmit_IT(&huart2,CommOkMessage,19);}else{HAL_GPIO_WritePin(LED_GPIO_Port,LED_Pin,GPIO_PIN_RESET);HAL_UART_Transmit_IT(&huart2,CommErrMessage,22);}}
}
/*USER CODE END 3 */

        例子中,实现了用中断方式接收串口数据,并通过回调函数一次性处理串口接收的多字节数据;此外,还使用中断和非中断方式实现了串口数据发送。

(2)修改2

/* USER CODE BEGIN PV */
uint8_t CommOkMessage[]="Everything is OK\r\n";
uint8_t CommErrMessage[]="Received ErrorData\r\n";
uint8_t CommFlag =0;
uint8_t RxBuffer[RXBUFFERSIZE]={0};
/* USER CODE END PV */

(3)修改3

/* USER CODE BEGIN 4 */
void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart)
{CommFlag =1;HAL_UART_Receive_IT(&huart2,(uint8_t *)RxBuffer,RXBUFFERSIZE);
}
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{HAL_GPIO_WritePin(BUZ_GPIO_Port,BUZ_Pin,GPIO_PIN_RESET);HAL_Delay(100);	//延时HAL_GPIO_WritePin(BUZ_GPIO_Port,BUZ_Pin,GPIO_PIN_SET);
}
/* USER CODE END 4 */

(4)修改4

/* Private defines -----------------------------------------------------------*/
#define KEY_Pin GPIO_PIN_13
#define KEY_GPIO_Port GPIOC
#define KEY_EXTI_IRQn EXTI15_10_IRQn
#define BUZ_Pin GPIO_PIN_4
#define BUZ_GPIO_Port GPIOA
#define LEDF_Pin GPIO_PIN_5
#define LEDF_GPIO_Port GPIOA
#define RXBUFFERSIZE 3	//接收缓冲区的长度

(5)修改5

  /* USER CODE BEGIN 2 */HAL_UART_Receive_IT(&huart2,(uint8_t*)RxBuffer,RXBUFFERSIZE);/* USER CODE END 2 */

3、下载并运行

        通过串口助手,先发送3次53 10 45,应该收到3次数据正确的提示;再发送3次53 20 45,应该收到3次数据错误的提示。

http://www.shuangfujiaoyu.com/news/53621.html

相关文章:

  • 宝鸡网站建设方案免费的网站推广在线推广
  • 自己做提卡网站千锋教育学费一览表
  • django做的网站模板医院营销策略的具体方法
  • 网站建设调研搜狗网站收录提交入口
  • 苹果cms如何做网站有广告位怎么找广告商
  • 手机怎样做刷赞网站aso优化排名违法吗
  • 天津网站建设排名徐州百度seo排名优化
  • 专业做网站建免费职业技能培训网
  • 口碑营销推广企业网站建设优化
  • 如何把网站建设好百度收录提交
  • php做数据网站淘宝seo排名优化
  • 企业没有做网站有的坏处今日头条十大新闻
  • 腾冲网站建设做网站的软件
  • 重庆比较好的软件开发培训学校什么叫优化关键词
  • 宝安网站建设 名匠鞍山seo外包
  • 口碑营销的本质是什么关键词优化简易
  • 潍坊网站建设最新报价seo技术培训沈阳
  • surface go 网站开发买外链有用吗
  • 百度搜索网站提交免费域名解析网站
  • 邢台市的做网站制作公司乐事薯片软文推广
  • 外卖网站建设文档seo教学免费课程霸屏
  • html网站两边的浮窗怎么做网络营销推广工具有哪些?
  • 鄂尔多斯市城乡建设委员会网站搜索优化引擎
  • 教育视频培训网站建设汽车网站建设方案
  • 小白如何搭建个人网站技能培训
  • iis7 添加php网站短视频推广app
  • 毕业设计做网站有哪些需求seo网站建设是什么意思
  • 重庆企业网站建设报价百度seo推广软件
  • 商城网站建设网站开发北京公司
  • dedecms导入网站模板企业培训课程视频