关于BLUNO和BLE-LINK数据走向的问题
2014-04-101.4万
AI 快速预览详细
本文讨论了BLUNO和BLE-LINK的数据走向问题,并详细解释了AT+BLUNODEBUG和AT+USBDEBUG两个AT命令的功能。AT+BLUNODEBUG控制蓝牙已连接状态下,BLE芯片串口接收到的数据是否通过USB串口打印出来;而AT+USBDEBUG则控制蓝牙数据是否通过USB口打印出来。通过这些设置,用户可以灵活控制数据流的方向,确保数据正确传输并显示。
|
楼主小学语文是体育老师教的,不懂,请轻喷! ![]() 看过BLUNO的wiki童鞋同会发现这两个AT命令,相信小伙伴们一定有诸多疑惑 12. "AT+BLUNODEBUG" 控制蓝牙已连接状态下,BLE芯片串口接收到的数据是否通过usb串口打印出来。这样就可以通过Arduino的串口监视器得到BLUNO发送的串口数据(BLE firmware 1.6 新功能)
13. "AT+USBDEBUG" 控制蓝牙数据是否通过USB口打印出来 (BLE firmware 1.6 新功能)
如果使用BLE-LINK,当BLE-LINK插在Arduino 板上时,那就很容易理解,当蓝牙收到数据时,总会第一时间传给串口(也就是单片机),然后就可以通过usb查看单片机收到的数据了。也就是说,其实BLE-LINK这样的xbee结构的,或者是apc220 这样的直接连串口的通信模块所接收到的数据是隐形的,是看不见的,是要通过单片机转换后才能从usb口督导数据。这点大家估计能理解。 BLE-LINK直接插在microUSB 应该不会有啥问题,所以不做讨论。 重头戏来了,BLUNO! BLUNO 的芯片CC2540可是同时连接USB和单片机的啊,也就是说你收到的数据会同时有两个数据方向,串口?还是USB? 这是变成了一个问题! 你总要收数据吧,你收到的数据总要显示吧,然后你收到数据有时还要处理吧,处理之后又要显示吧,这就又是一个问题! 好吧,其实还是一个问题:选择,人的一生就是在不停的选择,每一个你所做的决定又会对你的未来产生一定的影响。世间的事情没有绝对的对或错,你只需要做的只不过是你内心的真实想法。情感需要表达,思想也需要迸发,当自己前面所遇到的无论是荆棘或是坦途,你都只需要作出选择而已。走上荆棘的人,人生不一定就总是错,穿过坦途的人,也不见得人生就完美。年轻人要有自己的思想,不要在乎别人对你的指指点点,他人议论的事事非非,做自己就好。 Uhm......思绪有点飘远了,说到哪来着,对,选择! 你怎么去选择你将来的路?我呸,呸,呸。。。 关于数据流的走向,从上面两条AT命令 就知道应该是关于两条路的选择,USBDEBUG就应该是USB方向的了,BLUNODEBUG就应该是BLUNO串口方向的了, 应该是这样的了,对嘛?对嘛? |






usb是直接连到CC2540的,usb用的是差分线,它不会和atmega328直接去连,需要一个中间人在中间处理数据,在普通的UNO上,这个角色是有FTDI,或者Atmeg16u2担任的,但这边就是由CC2540来作为中间人。通过CC2540连接到了atmega328p。
第二个问题我没有注意过,两块板子内部有程序吗?
如果没程序的话,我猜主机会把收到的信息全部广播一遍,但由于现在只有一块从机,所以当你通过从机发数据给主机的时候,主机把收到的数据广播了一遍,这样就又返回给了从机。 所以只有只有从机到主机,有返回的效果。以上仅是猜测,期待大神解释
还有这个数据流向问题不是很明白
首先我在 bluno 的master上开了 usbdebug 关了 blunodebug , slave的设置和master 一样
然后打开串口moniter往master的串口写数据 master的moniter窗口没有显示输入的数据,slave的moniter窗口显示这些数据 ,证明slave收到了
但奇怪的是我通过slave的moniter 窗口写数据,不仅master的mointer有显示(证明收到了),而且slave自己的moniter 也显示刚写的数据
为什么我主从的设置都一样(开了 usbdebug 关了 blunodebug)还会有上述现象呢 ??? 如何用bluno的数据流向来解释??
麻烦能解释我在mointer窗口写入串口数据之后数据一路怎么走吗? (之前没用过usb和串口连一起的。。求指教)
简单解释一下,其实 这是从机的数据流向的问题,从机吧收到的数据给传给串口那边去了,并没有送到USB那端,
只要在AT命令汇总开启USBDEBUG,并且关闭BLUNODEBUG,就可以直接接收数据了。
BLUNODEBUG默认是打开的,因为这样可以在蓝牙连接的情况下看到Serial.print的信息。
USBDEBUG默认是关闭的
打开 BLUNODEBUG cc2540的com接收到的数据,com口接收到的数据除了发送到蓝牙外,还会发送一份到USB,达到监控的目的。
打开 USBDEBUG cc2540的蓝牙接收到的数据(DFB1),除了发送到com口外,还会发送一份到USB口。同样是为了监控。
其实这两个开关就是蓝牙数据来回传输的时候,是否通过USB监控一下。那么做成一个开关不就好了吗?为什么要做成两个呢?
因为如果做成一个开关,那么USB会接收到很多数据,不方便调试,所以做成了两个。
如果程序已经稳定了,不需要监控了,可以将这两个DEBUG都关掉。
在蓝牙未连接状态下,com和usb就是个透传,所以也就不存在数据流向问题了。
我感觉我的语文老师的语文老师一定是个体育专业毕业的。难道我只能写spec吗:dizzy:我怎么就写不出LZ一样高大上的句子
表示思维和逻辑处于混乱中,无法理解中。。。能就着这样一张图片,说明一下?