码迷,mamicode.com
首页 > 其他好文 > 详细

Arduino 与无线模块 CC1101

时间:2015-07-09 18:11:58      阅读:718      评论:0      收藏:0      [点我收藏+]

标签:

    总结一下无线模块调试的体会。Arduino上已经有人做了这个模块的库了,但是自己根据手册写的也有一定的参考意义。

    无线模块是我认为比较难调试的模块之一,因为是双方互动的一种模块,通信失败有两方面的原因,不能从单一代码中找。代码写好了,也将各种信息写进去了,但就是收不到或者接收不到数据。首先想到的是检查设备的连线。因为是SPI通信,所以使用的是mega2560自带的SPI通道口,查看上篇文章介绍。

  除此之外CC1101有个GDO0 我连接在了板子上的48引脚、

   技术分享

 确认连线。技术分享

    其次就是测试SPI是否正常工作,在状态寄存器的0x31地址为0x14,如果你读取结果为0x14那么基本上SPI为静态工作的,查看芯片手册说这个Version状态寄存器的复位值为0x04,可能为手册的一处笔误。因为我们读取了3个模块,用了不同的代码都为这个值。

    另外我们在测试的工程中常常用的是写Addr寄存器来测试读写是否正常,Addr寄存器地址为0x09,先写入后读出,如果前后一致,则你与芯片的通信基本上是没问题了。



   测试这些后如果你还是无法两个无线通信,那么确认信道是否一致。

   手册上建议IO电流不要超过10ma,但是经测试我直接用io口读取,电流为50mA也还正常工作。

   

  

    源码工程地址

Arduino 与无线模块 CC1101

标签:

原文地址:http://my.oschina.net/000quanwei/blog/476712

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!