请问sx1278发送失败是为什么?如何解决?

2019-07-18 14:01发布

下面是SPI 发送函数
uint8_t SpiInOut( uint8_t outData )
{
        uint8_t lmGET_data;
        HAL_SPI_TransmitReceive(&hspi1, &outData, &lmGET_data, 1, SPI_tiMEOUT);
        return lmGET_data;
}   
下面检测DIO引脚,一直不能置位,各位大神有遇到么?
    case RFLR_STATE_TX_RUNNING:
        if( DIO0 == 1 ) // TxDone
        {
            // Clear Irq
            SX1276Write( REG_LR_IRQFLAGS, RFLR_IRQFLAGS_TXDONE  );
            RFLRState = RFLR_STATE_TX_DONE;   
        }
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
48K栓
1楼-- · 2019-07-18 14:08
 精彩回答 2  元偷偷看……
gan5482
2楼-- · 2019-07-18 18:52
帮顶
freedom0zh
3楼-- · 2019-07-18 21:02
楼主你这里的SPI用的是硬件还是软件,我之前调试sx1276,SPI的数据一直不正常,后来发现是因为SPI的片选拉低后没有拉高,导致SPI被我锁死了,但是使用软件的SPI根据手册模拟波形,芯片才正常工作,发送端发送完以后DIO0引脚就会产生一个上升沿中断,可惜我的接收端一直收不到数据,很郁闷不知道是什么情况,你这个没有中断会不会就是因为SPI的片选信号没有释放导致的呢?
LGmark
4楼-- · 2019-07-19 02:38
我这边已经调通了sx1276,建议你不要用硬件SPI了,使用软件SPI吧,发送时序要严格按照手册来,我前面遇到的问题基本上都是时序和手册上不太一样导致的,祝好运
你是我的菠菜21
5楼-- · 2019-07-19 04:05
能否共享一下代码吗?多谢。。

一周热门 更多>