我是靠谱客的博主 畅快火车,最近开发中收集的这篇文章主要介绍[zigbee]-瞎搞-(一),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

拿到一大堆资料,从某供应商中x通拿到8个样品,从国外客户拿到两个cc2530的固件,但是不知道怎么烧录(要用工具CCDebugger),之后,去中X通还发了一个下午时间+加班到9点,才帮忙烧录了这几个模块,但是通过rxtx发送抓数据,跟客户的一直对不上。回来直接在某宝上买了个几十块的CCDebugger工具,准备自己烧录测试。

烧录方法

        烧录软件-flash-programmer-1.12.8.zip

       CCDebugger工具需要接的5个引脚:1(GND)2(VDD)3(Debug Clock)4(Debug Data)7(reset),模块需要外接电源。

 烧录成功的图片

   

测试方法:

Please, try to flash the firmware and send 0xFE, 0x0, 0x21, 0x02, 0x23. As a response you should get exactly 10 bytes and first 4 should be 0xfe, 0x05, 0x61, 0x02.

            系统软件的修改:配置成ttyS2通信,115200 8n1n(波特率-传输数据位数-是否有奇偶校验-停止位-是否流控)

            这里涉及到怎么设置波特率:通过drivers/tty/serial/serial_core.c     uart_set_options()函数实现。

从控制台查看,会有/dev/ttyS2生成。

我用示波器,抓取到的数据不对,还没弄明白:

    我用示波器测试不到模块的反馈信息,另外,我反复测试了模块的rx引脚,似乎接收到的数据也不正常,明天早上上班时,我要请硬件工程师帮我看看,比如,我发送“echo 0x1 > dev/ttyS2”,得到如下波形:

    

 可能是示波器设置不对,或者这个示波器功能限制,于是换成了LOGIC Analyzer工具

只抓到模块的接收数据,模块没有反馈数据,后面,客户又换了一个固件给我,终于抓到数据了:


之后,我回头想了想,为什么串口SecureCRT抓不到呢,于是,我准备下一个调试助手试试,发现它的发送和接收还有ASCII及HEX的区别,于是大概明白了:

我用了两个串口,一个接android console (如图中secureCRT-com2),另一个串口(如图片中的调试助手)rxtx接模块的txrx

 1) 在console输入" echo -en 'xfex00x21x02x23' > /dev/ttyS2",另外一个串口可以获取到模块有发出 Hex value:FE 05 61 02 02 00 02 07 00 61

2)在console先输入" cat /dev/ttyS2",准备接收模块Tx回馈的数据,在另外一个串口先给模块发送"FE 00 21 02 23",串口会收到反馈,见下图中第二行打印(第一行打印是显示的发送数据),但是,此时在console端并未打印出任何数据,之后,我通过串口主动对ttyS2发送一个”04“数据(把串的TX接到模块的TX,即主板的RX; 04为ASCii的结束符的Hex 值),才有下图中的打印:

,之所以显示的如乱码,是因为只能打印出字符(0x61对应的ASCii字符为a).所以,我怀疑,在反馈数据时,固件中是否没有加结束符呢?


          ( 在开始,两个串口,我都是用secureCRT抓数据,但是它默认显示是ASCII字符,不能以hex格式显示,所以后面我用了调试助手抓数据 )这里还要提一下,在控制台的操作中,如果要以hex格式抓节点中的数据,可以用下面命令:

130|G16:/ # od -x < dev/ttyS2 
0000000 05fe 0261 0002 0702 6100

从上可知,能读到(FE 05 61 02 02 00 02 07 00 61),但是,要通过串口主动对ttyS2发送一个”0x04“数据(把串的TX接到模块的TX,即主板的RX; 0x04为ASCii的结束符的Hex 值),才有以上打印。

问题:我用示波器怎么没抓取到HEX数据。

最后

以上就是畅快火车为你收集整理的[zigbee]-瞎搞-(一)的全部内容,希望文章能够帮你解决[zigbee]-瞎搞-(一)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(44)

评论列表共有 0 条评论

立即
投稿
返回
顶部