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

枣庄网站开发公司竞价推广运营

枣庄网站开发公司,竞价推广运营,开发网站app公司,如何选择编程培训机构1.发送函数 HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout); 参数1: UART 处理结构体的指针,该结构体包含了 UART 的所有配置参数。 参数2:要发送的数据指针 参数3&…

1.发送函数

HAL_StatusTypeDef HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout);

参数1: UART 处理结构体的指针,该结构体包含了 UART 的所有配置参数。

参数2:要发送的数据指针

参数3:要发送的数据长度(单位:字节)

参数4:超时时间 (单位ms,如果在该时间内没有完成,则直接执行下一条语句,并且返回HAL_timeout)

返回值:

  • HAL_OK: 操作成功。
  • HAL_ERROR: 发生错误

2.接收函数

HAL_StatusTypeDef HAL_UART_Receive(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout);

参数:

参数1: UART 处理结构体的指针,该结构体包含了 UART 的所有配置参数。

参数2:要接收数据的变量指针

参数3:要接收的数据长度(单位:字节)

参数4:超时时间 (单位ms,如果在该时间内没有完成,则直接执行下一条语句)

返回值:

  • HAL_OK: 操作成功。
  • HAL_ERROR: 发生错误

以上是HAL库进行数据收发的函数,不过一般使用printf和scanf。因为printf和scanf会调用fputc和fgetc,因此重写fputc和fgetc执行数据收发。在重写之后就可以直接使用printf和scanf函数进行数据的收发。

fgetc重写1:int fputc(int ch,FILE *f){HAL_UART_Transmit(&huart1,(uint8_t*)&ch,1,10);return ch;
}fputc重写2:int fputc(int ch,FILE *f){while(!(USART1->ISR&(1<<7)));USART1->TDR=ch;return ch;}fgetc的重写:int fgetc(FILE *f){uint8_t ch;while(!(USART1->ISR&(1<<5)));ch=USART1->RDR;return ch;
}

因为scanf会自动在字符串末尾加上\0(win为\r),因此相较于Hal原生函数,scanf不需要对其他进行关心。

1.当STM32接收到串口助手的命令后,控制马达震动,表示有数据接收

	scanf("%s",buffer);if(!strcmp(buffer,"motor")){HAL_GPIO_WritePin(GPIOC,GPIO_PIN_7,1);//			HAL_GPIO_WritePin(GPIOC,GPIO_PIN_6,1);}else{printf("not motor code");}

2.当STM32收到LED1_ON时,打开LED1收到LED1_OFF时,关闭LED1

scanf("%s",buffer);if(!strcmp(buffer,"LED1_ON")){HAL_GPIO_WritePin(GPIOC,GPIO_PIN_4,1);}else if(!strcmp(buffer,"LED1_OFF")){HAL_GPIO_WritePin(GPIOC,GPIO_PIN_4,0);}else{printf("not led1 code");}

3.当STM32收到LED3_ON时,打开LED3 收到LED3_OFF时,打开LED3

scanf("%s",buffer);if(!strcmp(buffer,"LED3_ON")){HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,1);}else if(!strcmp(buffer,"LED3_OFF")){HAL_GPIO_WritePin(GPIOC,GPIO_PIN_13,0);}else{printf("not led3 code");}


4.当STM32收到STATUS时:将LED1 LED3光电开关的状态,推送到串口助手中
 

	if(!strcmp("STATUS",buffer)){int a=HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_4);int b=HAL_GPIO_ReadPin(GPIOC,GPIO_PIN_13);printf("led1 status :%d",a);printf("led3 status :%d",b);}else{printf("not status code");}

http://www.hkea.cn/news/872784/

相关文章:

  • 网站建设国际深圳网络营销课程ppt
  • 网站开发人员需要具备的能力电脑培训班多少费用
  • discuz集成wordpressseo的概念是什么
  • 子网站如何做网站营销方案模板
  • dreamweaver做的网站电商培训班一般多少钱
  • 国外做科研的网站东莞网站设计公司排名
  • 亿唐网不做网站做品牌原因seo网站诊断报告
  • 宝鸡网站建设东东怎么推广软件让别人下载
  • 21dove谁做的的网站百度一下首页设为主页
  • 猪八戒网站建设推广平台排名前十名
  • 广西建设质监站官方网站站长工具seo综合查询可以访问
  • 通用搭建网站教程优化营商环境的意义
  • 网站中加入地图怎样优化网站排名
  • 网站如何被搜索引擎收录地推推广平台
  • 池州做网站公司游戏搜索风云榜
  • 东丽区做网站网站查询平台
  • wordpress什么主题好用seo优化范畴
  • 局域网端口映射做网站西安竞价托管代运营
  • 重庆网站建设设计公司信息ip网站查询服务器
  • 网站积分的作用seo搜索引擎优化就业前景
  • 珠海网站品牌设计公司简介最新国内新闻重大事件
  • 广东专业网站客服软件定制站长统计app下载大全
  • 广东网站建设公司排名磁力帝
  • 胶南网站建设哪家好成都电脑培训班零基础
  • 集团网站建设哪家好网上推广怎么弄?
  • dz网站建设器最近有新病毒出现吗
  • 个人网站制作说明香港旺道旺国际集团
  • 监控做直播网站免费网站seo
  • 网站建设洪塔网站搜索优化排名
  • 专业做设计师品牌网站深圳百度总部