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

英文网站推广方法找人代做网站需要注意什么

英文网站推广方法,找人代做网站需要注意什么,邢台做网站建设公司哪家好?,做房产经纪的那些网站可以进客STM32——串口实践 1.蓝牙控制点灯 项目需求 通过蓝牙模块#xff0c;实现手机控制蓝牙插座/风扇/灯。 本质#xff1a; 采用蓝牙的透传功能#xff1b; 控制 IO 口的输出。 硬件清单 HC01蓝牙模块 CH340 杜邦线 项目设计 HC01_TX – RX1 HC01_RX – TX1 项目…STM32——串口实践 1.蓝牙控制点灯 项目需求 通过蓝牙模块实现手机控制蓝牙插座/风扇/灯。 本质 采用蓝牙的透传功能 控制 IO 口的输出。 硬件清单 HC01蓝牙模块 CH340 杜邦线 项目设计 HC01_TX – RX1 HC01_RX – TX1 项目实现 串口非中断法 HAL_UART_Receive(huart1, ch, 19, 100); //HAL_UART_Transmit(huart1, ch, strlen(ch), 100); //printf((char *)ch); printf(%s, ch); if (!strcmp((const char *)ch, open)) {HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_RESET);if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_8) GPIO_PIN_RESET)printf(LED1已打开\n); }else if(!strcmp((const char *)ch, close)) {HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_SET);if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_8) GPIO_PIN_SET)printf(LED1已关闭\n); } else {if(ch[0] ! \0)printf(指令发送错误%s, ch); }串口中断法 printf(收到数据); if (!strcmp((const char *)UART1_RX_Buffer, open)) {HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_RESET);if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_8) GPIO_PIN_RESET)printf(LED1已打开\n); }else if(!strcmp((const char *)UART1_RX_Buffer, close)) {HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_SET);if(HAL_GPIO_ReadPin(GPIOB, GPIO_PIN_8) GPIO_PIN_SET)printf(LED1已关闭\n); } else {if(UART1_RX_Buffer[0] ! \0)printf(指令发送错误%s, UART1_RX_Buffer); }2.WI_FI点灯 项目需求 通过ESP8266模块实现手机控制wifi插座/风扇/灯。 硬件清单 ESP8266模块 CH340 杜邦线 项目实现 注意 工作中一般不直接在中断服务函数里处理数据而是在收到数据后直接丢给队列再处理数据 在中断服务函数里尽量减少使用延时函数及打印函数。 AP模式 #define SIZE 12char buffer[SIZE]; char LJWL[] ATCWJAP\TP-LINK_3E30\,\18650711783\\r\n; //入网指令 char LJFWQ[] ATCIPSTART\TCP\,\192.168.0.130\,8880\r\n; //连接服务器指令 char TCMS[] ATCIPMODE1\r\n; //透传指令 char SJCS[] ATCIPSEND\r\n; //数据传输开始指令 char CQMK[] ATRST\r\n; //重启模块指令 char AT_OK_Flag 0; //OK返回值的标志位 char AT_Connect_Net_Flag 0; //WIFI GOT IP返回值的标志位 // 接收完成回调函数收到一个数据后在这里处理 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) {// 判断中断是由哪个串口触发的if(huart-Instance USART1){// 判断接收是否完成UART1_RX_STA bit15 位是否为1if((UART1_RX_STA 0x8000) 0){// 如果已经收到了 0x0d 回车if(UART1_RX_STA 0x4000){// 则接着判断是否收到 0x0a 换行if(buf 0x0a){// 如果 0x0a 和 0x0d 都收到则将 bit15 位置为1UART1_RX_STA | 0x8000;// 查看是否收到 WIFI GOT IPif(!strcmp((uint8_t *)UART1_RX_Buffer, WIFI GOT IP))AT_Connect_Net_Flag 1;// 查看是否收到 OKif(!strcmp((uint8_t *)UART1_RX_Buffer, OK))AT_OK_Flag 1;// 查看是否收到 FAILif(!strcmp((uint8_t *)UART1_RX_Buffer, FAIL)){int i 0;for(i 0; i 5; i){HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_8);HAL_Delay(1000);}HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, GPIO_PIN_RESET);printf(CQMK);}// 灯控指令if(!strcmp((uint8_t *)UART1_RX_Buffer, L-1))HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_RESET);if(!strcmp((uint8_t *)UART1_RX_Buffer, L-0))HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_SET);memset(UART1_RX_Buffer, 0, UART1_REC_LEN);UART1_RX_STA 0;}else// 否则认为接收错误重新开始UART1_RX_STA 0;}else // 如果没有收到了 0x0d 回车{//则先判断收到的这个字符是否是 0x0d 回车if(buf 0x0d){// 是的话则将 bit14 位置为1UART1_RX_STA | 0x4000;}else{// 否则将接收到的数据保存在缓存数组里UART1_RX_Buffer[UART1_RX_STA 0X3FFF] buf;UART1_RX_STA;// 如果接收数据大于UART1_REC_LEN200字节则重新开始接收if(UART1_RX_STA UART1_REC_LEN - 1)UART1_RX_STA 0;}}}// 重新开启中断HAL_UART_Receive_IT(huart1, buf, 1);} } int main(void) {/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_USART1_UART_Init();MX_USART2_UART_Init();/* USER CODE BEGIN 2 */HAL_NVIC_SetPriority(SysTick_IRQn,0,0);// 开启接收中断HAL_UART_Receive_IT(huart1, buf, 1);HAL_UART_Transmit(huart2, lets go!!\r\n, strlen(lets go!!\r\n), 100);//发送联网AT指令并等待成功printf(LJWL);//while(!AT_Connect_Net_Flag);while(!AT_OK_Flag) HAL_Delay(50);AT_OK_Flag 0;//发送连服务器指令并等待成功printf(LJFWQ);while(!AT_OK_Flag) HAL_Delay(50);AT_OK_Flag 0;//发送透传模式指令并等待成功printf(TCMS);while(!AT_OK_Flag) HAL_Delay(50);AT_OK_Flag 0;//发送数据传输指令并等待成功printf(SJCS);while(!AT_OK_Flag) HAL_Delay(50);/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */printf(liangxu shuai\r\n);HAL_UART_Transmit(huart2, hello liangxu\r\n, strlen(hello liangxu\r\n),100);HAL_Delay(3000);}/* USER CODE END 3 */ }STA模式 #include stdio.h #include string.h char buffer[SIZE]; //1 工作在路由模式 char LYMO[] ATCWMODE2\r\n; //2 使能多链接 char DLJ[] ATCIPMUX1\r\n; //3 建立TCPServer char JLFW[] ATCIPSERVER1\r\n; // default port 333 //发送数据 char FSSJ[] ATCIPSEND0,5\r\n; char AT_OK_Flag 0; //OK返回值的标志位 char AT_Connect_Net_Flag 0; //WIFI GOT IP返回值的标志位 char Client_Connect_Flag 0; // 接收完成回调函数收到一个数据后在这里处理 void HAL_UART_RxCpltCallback(UART_HandleTypeDef *huart) {// 判断中断是由哪个串口触发的if(huart-Instance USART1){// 判断接收是否完成UART1_RX_STA bit15 位是否为1if((UART1_RX_STA 0x8000) 0){// 如果已经收到了 0x0d 回车if(UART1_RX_STA 0x4000){// 则接着判断是否收到 0x0a 换行if(buf 0x0a){// 如果 0x0a 和 0x0d 都收到则将 bit15 位置为1UART1_RX_STA | 0x8000;// 查看是否收到 WIFI GOT IPif(!strcmp(UART1_RX_Buffer, WIFI GOT IP))AT_Connect_Net_Flag 1;// 查看是否收到 OKif(!strcmp(UART1_RX_Buffer, OK))AT_OK_Flag 1;// 查看是否收到 FAILif(!strcmp(UART1_RX_Buffer, 0,CONNECT))Client_Connect_Flag 1;// 灯控指令if(!strcmp(UART1_RX_Buffer, L-1))HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_RESET);if(!strcmp(UART1_RX_Buffer, L-0))HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_SET);memset(UART1_RX_Buffer, 0, UART1_REC_LEN);UART1_RX_STA 0;}else// 否则认为接收错误重新开始UART1_RX_STA 0;}else // 如果没有收到了 0x0d 回车{//则先判断收到的这个字符是否是 0x0d 回车if(buf 0x0d){// 是的话则将 bit14 位置为1UART1_RX_STA | 0x4000;}else{// 否则将接收到的数据保存在缓存数组里UART1_RX_Buffer[UART1_RX_STA 0X3FFF] buf;UART1_RX_STA;// 如果接收数据大于UART1_REC_LEN200字节则重新开始接收if(UART1_RX_STA UART1_REC_LEN - 1)UART1_RX_STA 0;}}}// 重新开启中断HAL_UART_Receive_IT(huart1, buf, 1);} } int main(void) {/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();MX_USART1_UART_Init();MX_USART2_UART_Init();/* USER CODE BEGIN 2 */HAL_NVIC_SetPriority(SysTick_IRQn,0,0);// 开启接收中断HAL_UART_Receive_IT(huart1, buf, 1);HAL_UART_Transmit(huart2, lets go\r\n, strlen(lets go\r\n), 100);printf(LYMO);while(!AT_OK_Flag) HAL_Delay(50);AT_OK_Flag 0;printf(DLJ);while(!AT_OK_Flag) HAL_Delay(50);AT_OK_Flag 0;printf(JLFW);while(!Client_Connect_Flag) HAL_Delay(50);AT_OK_Flag 0;if(Client_Connect_Flag){HAL_GPIO_WritePin(GPIOB, GPIO_PIN_8, GPIO_PIN_RESET);HAL_GPIO_WritePin(GPIOB, GPIO_PIN_9, GPIO_PIN_RESET);}/* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 *///4 发送数据printf(FSSJ);HAL_Delay(2000);printf(Hello);HAL_Delay(2000);}/* USER CODE END 3 */ }
http://www.zqtcl.cn/news/219846/

相关文章:

  • 亿级流量网站架构自己制作一个网站
  • 企业网站seo成功案例天津网站建设制作品牌公司
  • 衡水做网站电话郏县建设局网站
  • 美工做网站尺寸多少钱怎么做网站免费的
  • 会计信息系统网站建设流程图手机网站图片宽度
  • 已备案网站增加域名wordpress 百度熊掌号
  • 网站建设维护课件ppt百度搜索一下百度
  • 重庆企业网站开发方案wordpress菜单插件
  • 江苏网站seo设计什么学习网站建设
  • 青海网站建设系统电商出口营销要多少钱
  • 上海的网站设计公司百度上做优化
  • 连云港权威网站优化服务如何自己做解析网站
  • 学校网站建设调研报告wordpress update_post_meta
  • 法人变更在哪个网站做公示做企业平台的网站有哪些
  • 制作网站过程有免费的网站域名吗
  • 简单做网站用什么软件价格优惠
  • 在线自助下单网站建设银行上海分行招聘网站
  • 网站备案期间停止解析网站改版后 存在大量404页面
  • 朝阳网站建设 国展东莞常平邮政编码多少
  • 深圳网站建设微赢天下做视频网站服务器多少钱
  • 中小企业网站建设与管理课后答案wordpress主题 亚马逊
  • 网站制作关键技术上海网站建设收费
  • 深圳做互联网教网站公司集团管理软件
  • 华宁网站建设网站建设与维护新的体会
  • 网站后台清空北京网站建设厂家
  • 济南建设银行网站应用制作app软件
  • 网站开发实习个人小结关于做展厅的网站
  • 网站设计三把火如何制作动漫网站模板
  • 重庆做网站 哪个好些嘛开通qq空间申请网址
  • 制作网站 太原买的电脑没有wordpress