安卓通过蓝牙发送数据给蓝牙,单片机C语言中要怎么转换

qq_33480802 2016-10-15 11:39:35
在做一个蓝牙小车,在安卓上发送了一个String的"1",表示前进,但是在C语言中是怎么识别的
...全文
892 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
of123 2016-10-25
  • 打赏
  • 举报
回复
目前使用得最为广泛的蓝牙模块,是蓝牙转串口模式。单片机段按照 UART 通讯来写 COS 即可。
阿基米东 2016-10-24
  • 打赏
  • 举报
回复
蓝牙模块连接到单片机的串口(RX和TX)上,接下来就是串口的操作,在C程序中可以用switch...case...来对接收到的字符(自定义的命令)进行判断,从而控制电机的正转、反转、调速等控制。 Android端的话,有很多现成的蓝牙收发小程序,或者自己写一个简单的APP也可以,看看蓝牙适配器的DEMO就可以了。
侦探蜡笔小新 2016-10-15
  • 打赏
  • 举报
回复
到单片机里面照样字符串处理啊,我的中断接收字符,如下
//串口接收中断函数
void serial () interrupt 4 using 3
{
	if (RI)
	{
		RI = 0 ;
		//ch=SBUF;
		if(rec_counter > RECLENGTH-1)
		{
			rec_counter = 0;//清除接收缓冲区
			memset(rec_buffer, 'z', RECLENGTH);
		}
		rec_buffer[rec_counter] = SBUF;
		rec_counter	++;
		//read_flag= 1 ; //就置位取数标志

	}
}
判断的时候strstr 判断字符串 如下

unsigned char mystrstr(const char *s1, const char *s2)
{
	const char *p = s1;
	const unsigned char len = strlen (s2);
	for (; (p = strchr (p, *s2)) != 0; p++)
	{
		if (strncmp (p, s2, len) == 0)
			return (p - s1);
	}
	return (0xFF);
}
用的时候就
 mystrstr(rec_buffer, "1");
玉怀一捧雪 2016-10-15
  • 打赏
  • 举报
回复
你问错地方了?到下载区下载个android蓝牙的工程就可以了
lbing7 2016-10-15
  • 打赏
  • 举报
回复
不了解蓝牙的协议,要是能做个主从控制那最好。
lbing7 2016-10-15
  • 打赏
  • 举报
回复
char型ASCII码对应里查。

27,373

社区成员

发帖
与我相关
我的任务
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
  • 单片机/工控社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧