蓝牙开发

Posted gongxianjin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了蓝牙开发相关的知识,希望对你有一定的参考价值。

1 需求:手机给特征值写一个20字节的数据,cc2541收到后将内容存储到flash中,然后重启系统
读出flash的值,看看是否与上次写入的值相同。

2 思路:调用osal_snv_write|osal_snv_read()函数进行操作。

3 步骤 1 SimpleProfile_GetParameter()可以得到主机发送过来的值char1value,
然后将char1value通过osal_snv_write写入flash中保存下来

2 然后通过osal_snv_read()函数将flash中保存的值读出来,然后将读到的值通过
SimpleProfile_SetParameter()函数发送到手机端。

 

 


1 需求:手机给特征值写一个20字节的数据,单片机收到数据后,将值写入flash中,
再次启动时,读取flash的值,并将Flash的值放人到要修改的广播数据包中。

2 思路:主要是先实现静态改名,在静态改名的基础上进行一些修改之后,去实现动态的
那样会有条理。

3 步骤: 1 复制原有数组scanRspData[],将原有数组名中的0x14改为对后面的数据包的个数和。
使用的是类似于crc校验的方式。关键将其转换为16进制。(10进制行不行要试试。)

sum = 0; //计算CRC
for(i=0;i<19;i++)
{
sum += bt_send_back_buf[i];
}
bt_send_back_buf[19] = sum;
2 将数据存入后 可以将数组名复制给 attDeviceName[GAP_DEVICE_NAME_LEN]
其中GAP_DEVICE_NAME_LEN 可以采用刚才Crc算出的数据长度。

3 主要可以先实现步骤二在做步骤一。

 


1 Alt + 97 可以快速查看ascii
2 scanRspData[] 是蓝牙设备用于回复主机扫描请求的信息,或者简单理解为蓝牙设备名;而 advertData[] 就是广播内容。



















以上是关于蓝牙开发的主要内容,如果未能解决你的问题,请参考以下文章

android开发SPP经典蓝牙

iOS蓝牙开发:蓝牙的连接和数据的读写

iOS蓝牙开发:蓝牙连接和数据读写

Android蓝牙开发——实现蓝牙聊天

Android蓝牙开发(二)经典蓝牙消息传输实现

iOS蓝牙开发:蓝牙的连接和数据的读写