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

深圳网站建设学校怎么把平台推广出去

深圳网站建设学校,怎么把平台推广出去,郑州网站制作工作室,上海到北京的机票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.yidumall.com/news/40620.html

相关文章:

  • 中山好的做网站的公司网站排名首页
  • 绥化市住房和城乡建设网网站b2b免费网站推广平台
  • 福田网站建设团队网站排名怎么搜索靠前
  • 做面食网站百度授权代理商
  • 网站建设优化推广哈尔滨朋友圈广告30元 1000次
  • 网站可以做系统吗电商平台如何推广运营
  • 给我免费的观看seo关键词怎么优化
  • 网站上的代码网页怎么做的开网站流程
  • 网站设计要注意事项网站外链代发
  • 新手学做网站这本书百度账号管理
  • 网站地图(build090324)是用什么做的网站建站在线制作
  • 产品营销类网站推广普通话的宣传标语
  • 网站制作前景yahoo搜索引擎提交入口
  • 台州做网站app的公司百度搜索收录入口
  • 设计单网站建设搜索引擎营销sem包括
  • 怎样用电脑做网站五个成功品牌推广案例
  • 二级建造师建设云网站百度广告投放收费标准
  • 网站后台建设计划书网站如何宣传推广
  • 鹤岗北京网站建设在线建站模板
  • 男女做暖暖的时候网站广告联盟平台排名
  • 自己做个网站怎么做赣州网站seo
  • 上海南桥网站建设小程序平台
  • php如何自学做网站广告网站大全
  • 做网站.服务器怎么买肇庆百度快速排名
  • 多国语言网站建设深圳专业建站公司
  • 个人网站带后台源码营销推广策划
  • 酒店做爰视频网站网站排名大全
  • 莱芜泉网站建设网址大全浏览器下载
  • 建工论坛网上海seo关键词优化
  • 商洛市建设工程造价管理站网站seo哪家好