这个驱动一共包含5个文件,3个头文件,2个C文件,其中只有sx1278_port.c这个文件是与硬件相关的,在这个文件里面涉及了SPI的初始化、通过SPI读写SX1278寄存器的操作、DIO0中断的初始化(配置为上升沿触发)、复位操作的引脚配置。
该驱动是基于STM8L151C8T6开发的,用这款MCU的朋友可以直接使用这个驱动不加更改。还有两个需要改动的地方,一个是hal_lora.c的三处Hal_DelayMs函数调用,这个毫秒延时函数需要你们自己实现;第二就是,sx1278 的DIO0中断发生时应该调用hal_lora.c 最下面的void IRQ_LoRa_DIO0(void)函数,同时不要忘记清除中断标志。
遇到任何问题的朋友可以联系我,我敢担保这个驱动比官方提供的好用的多,是我根据芯片手册自己编写的,本着开源的精神共享给大家。
注:该驱动不支持FSK、不支持SF6及隐式head、不支持跳频、CRC校验打开。该驱动还实现了计算packet 的 time of air
具体使用方法是,调用了Hal_LoRa_Init函数后,就可以调用其他函数了
1