找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6911|回复: 3
打印 上一主题 下一主题
收起左侧

STM32串口发送指令+接收指令配置完后要怎么写?

[复制链接]
跳转到指定楼层
楼主
ID:267081 发表于 2018-7-4 09:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想用单片机发送指令到模块,模块会返回一个数据,这个要怎么写?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:194604 发表于 2018-8-9 18:18 | 只看该作者
void USART1_Send_Byte(unsigned char byte)   //串口发送一个字节 {         USART_SendData(USART1, byte);        //通过库函数  发送数据         while( USART_GetFlagStatus(USART1,USART_FLAG_TC)!= SET);           //等待发送完成。   检测 USART_FLAG_TC 是否置1;    //见库函数 P359 介绍          }   //发送字符串 函数   应用指针 方法 void UART1_Send_Str(unsigned char *s)//发送字符串 函数   应用指针 方法 {         unsigned char i=0;  //定义一个局部变量  用来 发送字符串 ++运算          while(s[i]!='\0')  // 每个字符串结尾 都是以  \0 结尾的         {                 USART_SendData(USART1,s[i]);        //通过库函数  发送数据                 while( USART_GetFlagStatus(USART1,USART_FLAG_TC)!= SET);                   //等待发送完成。   检测 USART_FLAG_TC 是否置1;    //见库函数 P359 介绍                  i++;                 //i++一次         }  }   void UART1_Send_Array(unsigned char send_array[],unsigned char num) //两个参数 一是数组(的数据) 二是数组长度1-255  {         //串口发送         unsigned char i=0;  //定义一个局部变量  用来 发送字符串 ++运算           while(i         {                                  USART_SendData(USART1,send_array[i]);        //通过库函数  发送数据                 while( USART_GetFlagStatus(USART1,USART_FLAG_TC)!= SET);                   //等待发送完成。   检测 USART_FLAG_TC 是否置1;    //见库函数 P359 介绍                  i++;  //值 加一                  }          } 分享:
回复

使用道具 举报

板凳
ID:377852 发表于 2018-8-9 20:32 | 只看该作者
配置端口,配置串口工作模式,写入发送和接收函数,建议先看寄存器再看库函数
回复

使用道具 举报

地板
ID:384901 发表于 2018-8-10 11:00 | 只看该作者
可以先将STM32的串口连接到电脑端,利用串口调试助手,调试一下STM32的串口程序是否正确;然后参考模块资料,用串口讲命令送往模块就ok了。   一步一步来,加油
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表