微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 如何检测无线模块的好坏(问题是解决了,不过又有个疑...

如何检测无线模块的好坏(问题是解决了,不过又有个疑...

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

RT,前两天买了两个无线通信模块,芯片是SI24R01。
看了下资料,和nRF24l01是完全兼容的,程序除了输出功率控制寄存器0x06设置有点不同其他都一样。
但是把它装上学习板后试着进行与单片机之间的通信,连读取寄存器数据都读不到(读到的是0xff)。换上另一块也一样。
求解可能是哪方面的问题,程序?模块损坏?要怎么检查呢?
PS:用万用表测晶振引脚发现几乎为0.是这个的问题么?还是要发送接受数据才启动晶振?
读寄存器我是   state=read_SPI(0x07);
uchar rw_SPI(uchar date)
{
        uchar i;
        SCK=0;
        for(i=8;i>0;i--)
        {
                MOSI=date&0x80;
                date=date<<1;
                _nop_();
                SCK=1;
                _nop_();
                date=MISO|date;
                SCK=0;
        }
        return date;
}
uchar read_SPI(uchar addr)
{
        uchar temp;
        CSN=0;
        rw_SPI(addr);
        temp=rw_SPI(0xff);
        CSN=1;
        return temp;
}

补充下硬件电路哈。我学习板上的无线模块是预留好了的。VCC接3.3v,其他6个数据引脚与单片机通过1K的电阻相连。

再顶下,希望懂的大大帮忙解答或给建议

再顶次,目前打算的准备:
1.加电容去纹波
2.找其他程序看看有没有不同

帮顶,但不懂,希望有高手到来。

自己找出原因了,开发板本身设计不怎么合理,在MISO输出低电平时(检测到是0.4V),由于限流电阻,单片机口上是2.0V。由于单片机是TTL电平,这个数还是勉强被算成高电平了。
不过这样算起来还是有个问题,我IO口外接上拉电阻约10K此时连同单片机内部的上拉电阻,总的上拉电阻也还是接近10K,而限流电阻为1K(连接在单片机和模块之间)。模块MISO脚如果是0.4V的话,单片机引脚不是应该分压在0.8V左右么,怎么会是1.9 2.0呢?
本来想大致画下电路图的,不过AD一段时间没用,又要注册了,没时间去弄。就用画图随意画了下,请勿见笑。


海尔集成半导体推出了个芯片型号hw3000,用量巨大,距离有2.5公里双向,与si4463差不多,比si4432 si4438远,比A7108 和A7139好很多,如果是10kpbs,比sx1278 远。LoRa没办法快速率,深圳市硅传科技有限公司可了解详细资料,推荐!http://www.toutiao.com/i6434355065112232450/

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

网站地图

Top