This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CC1350:器件在尝试接收数据后断开连接

Guru**** 2586555 points
Other Parts Discussed in Thread: CC1350

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/595288/cc1350-device-disconnects-after-trying-to-recieve-data

器件型号:CC1350

免责声明:我对 BLE 堆栈还是很陌生、所以这可能比我想象的要容易

因此我的问题如下:我真的很想知道我使用哪个函数来接收我通过 BLE 扫描仪随手机发送的 cc1350数据。
我使用"simpleBLEperipheral"作为起点。 让我解释一下我认为它是如何工作的、这样、如果我已经出错了、您就可以纠正我的问题。

-器件广播它可以执行的任务、如"simple_gatt_profile.c"中所述
-如果任务已启用"写入"选项、我可以使用手机将数据发送到设备
-如果我通过电话输入数据、我可以使用"SimpleProfile_GetParameter"读取器件上的传入数据

因此、我尝试从手机接收数据、以便能够在 UART 中打印出来。 (现在只需检查所有功能的工作原理)

下面是我尝试这样做的示例代码:

静态空 SimpleBLEPeripheral_performPeriodicTask (空){
//todo

const char echoPrompt[]="test...\r\n";
UART_WRITE (UART、echoPrompt、sizeof (echoPrompt));


#ifndef feature_OAD_ONCHIP
uint8_t incomming;

if (SimpleProfile_GetParameter (SIMPLEPROFILE_CHAR1、incommming)==成功){
uint8_t v[1];
V[1]=输入;
UART_WRITE (UART、v、sizeof (v));
}

uint8_t valueToCopy;

//调用以检索配置文件中第三个特征的值
if (SimpleProfile_GetParameter (SIMPLEPROFILE_CHAR3、&valueToCopy)=成功){
//调用以设置配置文件中第四个特征的值。
//请注意,如果已收到第四个特征的通知
// GATT 客户端设备启用,然后将发送通知
//每次调用此函数。
SimpleProfile_SetParameter (SIMPLEPROFILE_CHAR4、sizeof (uint8_t)、
&valueToCopy);
}
#endif //!feature_OAD_ONCHIP
} 


问题是、我的手机在遇到部件"if (SimpleProfile_GetParameter (SIMPLEPROFILE_CHAR1、&incommming)= Success)"时会断开连接。
此外、我从未收到任何数据、即使我在 BLE 扫描仪中通告的服务中键入数据也是如此。

我哪里出错了? 我的基础知识是否有问题或代码是否完全有问题?
为了测试是否由于我使用 UART 而发生、我添加了"test..."输出。 它总是打印在终端上、但之后、它就像整个东西关闭一样。

我想将 cc26xx 的 project0用作参考指南、但源代码似乎缺少。
我使用以下链接查找 project0、但该站点上的链接似乎已断开。
dev.ti.com/.../index.html


如果有人能告诉我我如何接收数据、那就太棒了。感谢您的帮助!

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Julien、

    这看起来像是一个编码错误:
    uint8_t v[1];
    V[1]=输入;

    因为您溢出了1字节缓冲区'v'。

    祝你一切顺利
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢! 现在它起作用了。 我不知道为什么我开始计数一个。 有时、人们只是对自己的代码视而不见
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    没问题。 很高兴它能正常工作、有时它会让我们中的大多数人都感到满意。

    祝你一切顺利