微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI蓝牙设计交流 > CC2650 SensorTag的UART串口打印log如何通过CC-DEVPACK-DEBUG输出到PC上?

CC2650 SensorTag的UART串口打印log如何通过CC-DEVPACK-DEBUG输出到PC上?

时间:10-02 整理:3721RD 点击:

RT

硬件SensorTag CC26XXST_0120,BLE协议栈版本ble_cc26xx_2_00_00_42893。

参考过这样两个帖子

http://www.deyisupport.com/question_answer/wireless_connectivity/bluetooth/f/103/t/83975.aspx

http://e2e.ti.com/support/wireless_connectivity/f/158/t/419000

并且都照上面的方法试过了

第一个帖子我理解,楼主应该是直接通过SensorTag的skin接口上的3根线飞出来接到串口的

第二个帖子看上去貌似可行,但是我在SimpleBLEPeripheral和SensorTag两个工程里面都改过pin尝试了,但是PC上的两个UART口仍然没有输出。

我单步跟过了,似乎UART_open和UART_write执行的都没有问题,就是PC上看不见串口输出。

我的问题:1.CC-DEVPACK-DEBUG到底是否支持UART转USB,并能通过PC上的2个模拟的COM口(Application/User UART, Auxiliary Data Port)输出?

如果可以,在SimpleBLEPeripheral或SensorTag工程里,我要怎么做?谁能给一个详细步骤说明?

2.当我在调试SensorTag的时候,我发现PC上的这两个COM口都无法打开。那么是不是就意味着,一旦我开始调试,我就没办法看到这两个COM口的串口输出了?

3.如果不能通过DEVPACK将串口log通过USB输出到电脑上,那么一般使用CC2650 SensorTag + CC-DEVPACK-DEBUG开发固件的时候,都是怎么打印log调试的呢?有个System_printf接口是怎么用的?(原谅我是一个BLE和TI蓝牙平台的新手)

CC-DEVPACK-DEBUG 到底是否支持UART输出到PC:

有没有了解的TI工程师说一下哈,CC-DEVPACK-DEBUG几乎没有使用说明和资料,而现有的2640的文档都是基于SmartRF06EB和CC2650EM的。

SmartRF06EB是支持UART back-channel over USB输出到PC的,那么CC-DEVPACK-DEBUG呢?

我觉得如果没有串口打印调试信息的话,那这个CC-DEVPACK-DEBUG几乎就没太大的意义了哇,

还是要买一套CC2650DK包括SmartRF06EB来进行开发的嘛

问题已解决,说明下步骤:

1.硬件上的pin脚有bug,跟原理图好像不符,根据e2e论坛的帖子,28跟29颠倒了,需要修改sensortag 2650对应的硬件版本的Board.h,我的是1.20

/* UART (when connected to SRF06EB) */
//#define Board_EB_UART_TX IOID_16
//#define Board_EB_UART_RX IOID_17
#define Board_EB_UART_TX IOID_28
#define Board_EB_UART_RX IOID_29

或者你不改这里也行,改

/* DevPack */

... ...

//#define Board_DP4_UARTRX IOID_28
//#define Board_DP5_UARTTX IOID_29

#define Board_EB_UART_TX IOID_28
#define Board_EB_UART_RX IOID_29

这样就要把Board.c里的uart pin配置也改了,我没验证过这种改法

2.要在static void SensorTag_init(void)函数中的下面代码之前

// Handling of buttons, relay and MPU interrupt
hGpioPin = PIN_open(&pinGpioState, BoardGpioInitTable);

调用

  handle = UART_open(CC2650_UART0, &params);

因为PIN_open打开的BoardGpioInitTable里有我们用到的2个uart pin,

如果先PIN_open这2个pin,再用UART_open去初始化这2个pin,就会打开失败,pin has used,handle返回null。

真正开发程序的时候要把这2个pin处理好,我测试时暂时在前面调,能open成功而已。

3. 串口在PC上输出的是COM3,也就是Application/User UART

4. 我用的CCS,不是IAR,所以2650的驱动是直接在工程里引用driver代码原文件的方式将uart驱动引入sensortag工程的。

主要是UART.h UART.c UARTCC26XX.h UARTCC26XX.c 4个文件,就能编译通过了。swru393里就提了一句,我也不是很懂。

5. debug期间是不能打开串口的,得debug前先打开串口,再debug。有的时候串口打开了就不能释放,后面就打不开了,应该是bug,我也很郁闷。

另外,之前我不小心用了小米的usb充电线,好像少个引脚,坑死我了...大家不要重蹈我的覆辙

总结就是:cc-devpack-debug是有PC上的usb虚拟串口输出的功能,只不过用起来非常麻烦,而且有bug,不好用,另外BLE2.0的工程都是基于SmartRF06EB的,要改不少地方才能跑。想要好好开发还是用cc2650dk吧。

你好 我用的contiki 通过修改28和29没有解决问题 请问还有其他解决方法嘛

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top