大家好,我用的是CC2530的开发板,最近想用Z-Tool工具查看网络的拓扑结构,协调器加入的编译选项是
ZTOOL_P1
MT_TASK
MT_SYS_FUNC
MT_ZDO_FUNC
MT_ZDO_CB_FUNC
在Z-Tool软件也进行了一些设置,如附件,可是还是提示“No devices found”的错误。请问怎么解决?
VV:
在setting里面把流控使能下,然后再去找设备
tingpan li:
回复 VV:
你好!VV大神。还是不行,我的串口接收回调函数是采用网蜂的代码,如下,请问这个代码能配合Z-Tool使用吗?如果不行,那么正规的回调函数是什么?谢谢!
void MT_UartProcessZToolData ( uint8 port, uint8 event )
{
uint8 flag=0,i,j=0; //flag是判断有没有收到数据,j记录数
uint8 buf[128]; //串口buffer最大缓冲默认是128,我们
(void)event; // Intentionally unreferenced parameter
while (Hal_UART_RxBufLen(port)) //检测串口数据是否接收完
{
HalUARTRead (port,&buf[j], 1); //把数据接收放到buf中
j++; //记录字符数
flag=1; //已经从串口接收到信息
}
if(flag==1) //已经从串口接收到信息
{ //Allocate memory for the data
//分配内存空间,为机构体内容+数据内容+1个记录长度的数据
pMsg = (mtOSALSerialData_t *)osal_msg_allocate( sizeof
( mtOSALSerialData_t )+j+1);
//事件号用原来的CMD_SERIAL_MSG
pMsg->hdr.event = CMD_SERIAL_MSG;
pMsg->msg = (uint8*)(pMsg+1); // 把数据定位到结构体数据部分
pMsg->msg [0]= j; //给上层的数据第一个是长度
for(i=0;i<j;i++) //从第二个开始记录数据
pMsg->msg [i+1]= buf[i];
osal_msg_send( App_TaskID, (byte *)pMsg ); //登记任务,发往上层
// deallocate the msg
osal_msg_deallocate ( (uint8 *)pMsg ); //释放内存
}
VV:
回复 tingpan li:
所以你的CC2530开发板也是网蜂的开发板对吧,开发板用的是哪个串口?
或者你下载官网的协议栈试一下
Johnson Mo:
回复 VV:
CC2530 使用C:\Texas Instruments\Z-Stack Home 1.2.1\Projects\zstack\ZAP\ZNP-HexFiles\CC2530ZNP-Pro-Secure_LinkKeyJoin.hex
這個hex 可以連上Z-Tool 嗎? 我用了也是無法找到device
yang haopeng:
网蜂的程序改了些内容,首先是波特率,流控等,而最重要的是他这个程序没有使用MT层的串口数据的格式,而ztools使用的就是MT的串口格式,所以,即使连上,我觉得,也得不到正确的信息
raikking kimi:
回复 VV:
您好
TI工程师,我在使用z-tool时,程序能够检查到com口,但是始终显示no devices found,流控、预编译选项已添加,不知道哪里有问题,我烧写的是基于GenericAPP的coord程序,是否程序有问题呢?麻烦您了,谢谢。
VV:
回复 raikking kimi:
你用ZTool连接CC2530的UART口是不是协议栈配置的UART口呢?
你用的是TI的开发板吗?
raikking kimi:
回复 VV:
我用的是网峰的开发板,UART口用的是默认的,平常应用中是可以正常使用的,如调用HALUARTWRITE等,用的是port 0
zhgang yuan:
如果你用的是网蜂的开发版,你注意了,板子上是没有流控的!编译时加入 MT_UART_DEFAULT_OVERFLOW=0 编译选项。
one Man:
回复 zhgang yuan:
你好,我的开发板是没有流控的,按照前面评论说设置还是显示No devices found