RT-Thread社区上有哪些优秀的软件包?

上一周我们开通了「软件包大赏」栏目,第一期推荐的——libmodbus软件包(ps:点击即可跳转查看第一期)获得了很多开发者的好评,还有很多人留言表示libmodbus的代码非常易懂,软件包也非常好用他们很喜欢。在此,我们为广大开发者感谢一下libmodbus软件包贡献者——南京工程学院学生马龙伟。也希望有余力者也可以积极的参与到软件包贡献中来。
本周,我们为大家精选的sx12xx lora芯片软件包出自rt-thread社区的老伙伴——樊晓杰之手,不久之后他还会推出下一版的软件包哦~ 下面,就进入正文吧:
rt-thread新增の软件包 / 2
0130
软件包贡献者:樊晓杰
资深嵌入式工程师,rt-thread 死忠粉
樊晓杰,rt-thread 忠实粉丝,也是我们留言区的老面孔。搞嵌入式相关产品已有5年,目前从事iot嵌入式设备信息安全相关开发工作。
在2014年时候,第一次听说了rt-thread,当时想利用业余时间diy一个联网的收音机,在网络上搜索相关信息,就加到了魔笛的那个网络收音机的群里,尝试着熟悉代码,在stm32103上跑,但由于水平有限,当时觉得入门的确有困难,然后就没有下文了。
再一次听说rt-thread是2017年,在北航的嵌入式专家何小庆老师举办的嵌入式联谊会上。那年的联谊会邀请到了庆科mico ,华为liteos,还有rt-thread的大咖,共同探讨iot os 的相关话题,我也是在那时候见到熊大真人,最后还向他咨询了嵌入式ai相关の问题。也因为那次的机缘,开始持续关注rt-thread 进展,参见线下活动、线上学习营、做分享等,到现在成为忠实粉丝,成为开发者,积极贡献代码,想想也是缘分啊,挺有意思的。
在我眼里,rt-thread 开源技术社区,是一个真正可以提高开发者的水平的社区,无论是源码 ,还是开发文档,都是绝好参考资料,都可以在反复的阅读实践中,有所收获,有所提高。尤其是,这里聚集了国内乐于分享的牛人,可以一起沟通交流。看到这么多厉害的榜样,便也立志要和他们一样,在技术领域深耕并成为在嵌入式系统研发领域的高手。(★论坛地址:https://www.rt-thread.org/qa/forum.php)与此同时,也愈发感觉学好、用好rt-thread为它投入时间,值得!最后,再次感谢rt-thread 团队为营造这么好的开源技术社区所有的付出!你们就是我的榜样!接下来,就从应用场景入手聊一聊这个软件包吧
sx12xx lora
图片来源网络
1、软件包简介:
sx12xx 软件包是基于 semtech 官网firmware drivers v2.1.0代码库的移植实现,目前只支持 sx1278 lora设备。该软件包在原代码库功能的基础上,对接 rt-thread spi 设备驱动框架,实现参数的配置和数据的读取。
项目地址:http://packages.rt-thread.org/itemdetail.html?package=sx12xx(请复制至外部浏览器打开)
使用背景:
使用低功耗广域网 lora 技术的场景越来越多,是物联网时代不可或缺的无线传输技术,功耗低,传输距离远,组网方便,是它的显著特点。使用这个软件包,可以通过rt-thread spi设备驱动框架将semtech sx12xx 系列的 lora 芯片快速驱动起来,后续可方便的验证两个lora 模块的远通信距离及与lora 网关之间的通信,也是这个软件包下一个版本的目标。
1.1 目录结构:
sx12xx 软件包目录结构如下所示:
1.2许可证:
sx12xx 软件包遵循 apache-2.0 许可,详见 license 文件。
1.3依赖:
rt-thread 3.1.1+
spi 驱动:sx12xx 设备使用 spi 进行数据通讯,需要系统 spi 驱动框架支持;
pin 驱动:用于处理设备复位和中断引脚;
2、获取软件包
使用 sx12xx 软件包需要在 rt-thread 的包管理中选中它,具体路径如下:
1rt-threadonlinepackages2peripherallibrariesanddrivers--->3sx12xx:semtechlorarfchipdriverlibrary--->
进入 sx12xx 软件包的配置菜单按自己的需求进行具体的配置
1sx12xx:semtechlorarfchipdriverlibrary---> 2sx12xxdevicetype(sx1278lsd4rf-2f717n30)---> 3sx12xxdeviceconfigure---> 4(spi10)spidevicename 5(10)resetpinnumber 6(103)do0pinnumber 7(104)do1pinnumber 8(105)do2pinnumber 9(106)do3pinnumber10(107)do4pinnumber11(108)do5pinnumber12[]enablesx12xxsample13version(latest)--->
sx12xx device type:配置支持的设备类型(目前只支持 sx1278 利尔达 lsd4rf-2f717n30 lora 模块 )
sx12xx device configure:配置使用设备的参数
spi device name:配置使用 spi 的设备名称(注意需设置为非 spi 总线设备)
reset pin number:配置设备连接的复位引脚号(根据实际使用引脚号修改)
do0~5 pin number:配置设备连接的中断引脚号(同上)
enable sx12xx sample: 配置使用示例代码
version:软件包版本选择
3、使用 软件包:
3.1 sx12xx 软件包初始化函数如下所示:
1intsx12xx_init(void);
该函数不支持组件初始化,函数主要完成功能有,
设置 lora 调制模式 ;
设备配置和引脚初始化(配置 spi 设备,配置复位和中断引脚);
lora 参数配置和初始化(rffrequency , power, signalbw, spreadingfactor,errorcoding 等);
3.2 msh 测试命令
如果开启 sx12xx 软件包示例程序,就会导出 sx12xx_test 命令到控制台。设备上电初始化完成,在控制台调用测试命令,将会打印如下所示:
1msh/>sx12xx_test2sx12xxinitsucceed##获取设备句柄,初始化lora成功3versioncodeofthechipis12##chipcode信息4sx1278loraparametersare:##如下为主要lora设置参数信息5rffrequencyis870000000##频率6rfpoweris14##发射功率7signalbwis9##信号带宽8spreadingfactoris7##扩频因子9sx12xxspicheckok!##spi测试完成
4、常见问题
spi 设备初始化时找不到设备问题
1spisamplerunfailed!cant'tfindspi12device!
出现上述问题,可能原因是 env 中配置 sx12xx 使用的 spi 设备类型不正确,可以在添加 sx12xx 软件包之前在 finsh 中使用list_device查看当前可用 spi 设备名称,如果 bsp 工程中没有 spi 设备或者只有 spi 总线设备,需要手动在驱动中添加 spi 设备,并正确配置 sx12xx 软件包中使用的 spi 设备名称。
5、注意事项
获取软件包时,需要注意正确配置使用的 spi 设备名称、复位引脚号和中断引脚号;
软件包目前处于beta测试阶段, 推荐在 menuconfig 选项中选择latest版本

TI开发出完整型蓝牙低功耗(BLE)单模式芯片CC2540
Novena主板功能说明
网红“快手”烹饪机器人,难以炒出妈妈的味道
KUKA系统变量:$IOSIM_OPT模拟的激活或停用
机器人在电动化未来中的角色
RT-Thread社区上有哪些优秀的软件包?
软件验证的必要和使用测试工具的好处
4K HDMI KVM网线延长器完美解决方案的介绍
苹果更新M1 Mac mini的功耗和热输出信息
新的更新已开始在YouTube电视上推出
15A电源模块可以有多小?
成功案例|KEZMO牛只RFID自动称重管理
贴片绕线电感规格相同就能互相替代吗
市场监管总局依法对阿里巴巴集团实施“二选一”等涉嫌垄断行为立案调查
磁选机的磁性划分种类有哪些
(飞测生物)真菌毒素快速检测仪
AUR6602电感式降压转换器的中文资料(特性_引脚功能_驱动电路)
三星可穿戴设备专利曝光 拥有两个显示器
物联网设备上怎样去保护数据
三星宣布第二代10nm制程已完成开发