OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 4286|回复: 2

单片机从蓝牙接收到数据怎么赋值给一个int型变量

[复制链接]

7

主题

31

帖子

0

精华

初级会员

Rank: 2

积分
79
金钱
79
注册时间
2014-7-12
在线时间
0 小时
发表于 2014-8-23 23:19:57 | 显示全部楼层 |阅读模式
5金钱
我在学习蓝牙模块的功能,遇到一个问题,希望大神们帮帮我,我想从蓝牙模块接收一个数据并赋给一个之前定义好的int型变量,该怎么做?数据接收的缓冲区UASRT_RX_BUF是个数组呀,一时不知道怎么办了。
还有个问题,我想做一个功能,比如我通过蓝牙给单片机发数字“1~9”中的一个,单片机有个判断语句,判断接收的是数字几,进入相应的if语句,之后再把一个接收到的数据赋值给一个变量。我的困难在进入if语句后,程序不等我再发一个数据就把之前缓冲区里的数据,即1~9赋给那个变量了,想问问大神们该怎么解决才好?
求助,求助!

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

19

主题

248

帖子

2

精华

高级会员

Rank: 4

积分
842
金钱
842
注册时间
2012-2-8
在线时间
19 小时
发表于 2014-8-24 22:26:34 | 显示全部楼层
是蓝牙收到的数据通过串口发送给单片机吗?
试试看这样子 temp = (int)USART_RX_BUF[x],x代表你要的那个数据在数组中的位置。
后面那个问题没看懂,
试试看这样

switch(蓝牙发个单片机的数字)
case '1':……
……
case '9':……
default:break;

想象不出你的串口是怎么接收数据的
回复

使用道具 举报

5

主题

55

帖子

0

精华

初级会员

Rank: 2

积分
95
金钱
95
注册时间
2015-7-14
在线时间
0 小时
发表于 2015-7-26 10:43:24 | 显示全部楼层
int a;
a= USART_ReceiveData(USART3); 

这个也许可以
回复

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-22 22:27

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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