关于透传的问题

我是新手,这几天在看透传,有个问题不明白,透传案例的蓝牙模块将手机端发来的数据重新发送到PC用来打印调试信息,那么,蓝牙模块调用了哪个函数将手机端发来的数据重新发回了手机端?谢谢。

我是新手,这几天在看透传,有个问题不明白,透传案例的蓝牙模块将手机端发来的数据通过串口发送到PC用来打印调试信息,那么,蓝牙模块调用了哪个函数将手机端发来的数据重新发回了手机端?谢谢。

安安,你好!刚看到http://www.t-firefly.com/zh/firesmart/fireble/case/2015/1008/10.html
2.UART串口透传,只是不明白为什么要通过串口发送到FS_QN9021模组上,再经过蓝牙透传到手机端。为什么不在QPPS_DAVA_VAL_IND消息处里函数里(app_qpps_data_ind_handler())或在usr_design.c的case QPPS_DAVA_VAL_IND里直接调用app_qpps_data_send()函数将手机端的数据发回手机端?
谢谢!

哦,似乎明白了一点,这个确实是“串口”透传,但我觉得没有说清楚,FS_QN9021模组应该是担任PC机的串口透传。所以,FS_QN9021模组应该是“Network Processor Mode”工作模式。而不是现在程序写的“Wireless SoC Mode”。不知道对不对?

也就是说“Application”应该工作在在PC机里,而不应该写在FS_QN9021模组里。

1.透传的技术案例确实属于串口透传,其功能就是将手机端发送的数据变成PC端接收的串口数据,而将PC端串口的数据发送到手机端。相当于使用无线取代传统的串口线。
2.QN9021依旧工作在Soc模式。因为QN9021的主要责任是透传并且转发串口数据,依旧是一个带有application和profile的一个软件结构,如果是工作在Network Processor Mode模式,确实只需要串口控制也能够进行蓝牙透传,但是这样就需要PC端有一个特定的配套程序,并不能做到“透明串口线”的功能,但是有兴趣的可以去试一下。

安安,非常感谢!还有一个问题,Andriod手机端的透传APP为什么和FS_QN9021的FireBLE\DemoBle\prj_qpps案例连接不上?

因为,透传app就是透传app啊,应该和透传固件结合在一起啊

两者是UUID不一样吗?

不管Profile一样不一样,连接都应该可以啊

只要是遵循蓝牙4.0协议的设备,初始化、广播以及连接过程都是一样的,至于实现的功能可能各有不同。所以,我觉得都应该可以连接。我用qpps的工程已经和几个Andriod的蓝牙APP连接上了,包括“蓝牙测试助手”、“RssTest"以及“BLEDeng”等,但就是和“BLESPP”(透传)连接不上。

看了一下两个工程(串口透传和QPPS)的原代码,发现两者的UUID不一样,是这个原因吗?

你之前的app都是属于通用型的调试助手,当然什么profile都可以连接成功并且通信,BLESPP是一款专门为串口透传设计的APP,所以你除非使用和我们串口透传例程一样的UUID和属性,否则绝对连接不上

哦,谢谢!您能推荐一款Andriod手机的APP能和FS_qn9021模块QPPS例程通信的软件吗?谢谢!

qpps都可以啊,如果是qpps任何一款调试软件都可以和qpps通信,BLEDeng,BLE读写器,BLE调试助手都是可以的。只不过串口透传比较特殊,这是我们的一个技术案例,差不多相当于一款产品了,定制化的东西很多,并不是通用的。

明白了,谢谢安安!:handshake