简介/ f: x! d0 Q+ Y ; U$ x% S8 A K# r7 O 本项目的目标是用stm8eforth、STM8L和低成本“nRF24L01+兼容”收发模块构建低成本传感器网络,PCBs主要是用KiCad设计成得。+ k8 Z: e) [) {0 o+ ^3 y 详解 ; t; _( i& N& r( C r3 s 你可以问问richard,这一切都是因为负鼠,无论如何,它让我有机会在地下室找到那个装满了nRF24L01+模块的盒子,并开始和Richard在stm8eforth的nRF24L01库中对黑客展开攻击。我还重新开始制造多氯联苯,虽然我已经25年没做过了。但是,我向我的妻子保证这次我不需要Fe(III)Cl3,oshpark & Co使遵守这一承诺变得容易,学习KiCad只需两个周末即可完成。, b- ?/ l7 R" u% f% `; @- k- @; [ 8 ]2 f, A, _6 f0 D STM8L与STM8S中断 STM8S外部中断配置非常有限(每个端口A到E都有一个中断向量)。当使用多个输入时就不那么容易了。 STM8L仅将该方案应用于端口B和d。第二组中断向量捕获端口A到E的端口输入Px0到Px7触发的中断(在PF0的情况下加上端口F)。因此可以得到两个相同的端口B或端口D变化中断,或(更有用的)有两个不同的中断,说,PB2 PC2。 2 w* V4 A/ w/ W2 e+ q& l% N STM8L系列比STM8S系列有更多的选择,但是在设计电路时仍然需要非常小心。' c. C4 x" X" U% O4 o% _* @ p - e0 i5 Y! @9 M, U OSHPark PCBs看起来棒极了 在传输了KiCad gerber文件大约3周后,3个pcb从美国运抵。令我惊讶的是,它的尾端是ENIG(黄金)而不是HASL或类似的,看起来很不错。s使得我的小样机批量的价格更加惊人!/ L- }3 Q4 k) X- ~, p# O8 o # Y, u" b2 J' o; h 的焊接面罩KiCad TSSOP足迹,非常准确的渲染,使焊接µC比想象中的容易,当然更容易比廉价“TSSOP20迪勒适配器PCB”到目前为止我焊接。# C* t+ o) v8 X4 h- Y. p ) r: x0 E# I$ G1 P 我在PCB上犯了一个错误,但这是一个小错误:CR2032电池夹持器的钻子太小了一点。用指甲锉锉了半分钟,钉好了。没问题,但我会更新pcb的。否则,所有组件都位于正确的位置。5 `/ _* E& b# N' m; l+ X5 e 9 \8 _( Y8 }$ ?. N, | 同时,nRF24代码已被重构并准备使用STM8L051而不是STM8S103(或用于任何其他stm8eforth目标)。希望我很快就能实现Ping应用程序:-) 步骤1:用nRF24L01 + STM8L051F3P6突破 i$ `0 C6 N6 w8 B: B- w& Z+ w " W3 t2 N0 F5 m. e9 R& S, ^0 e! l 这个项目始于我最新STM8 eForth日志。 Rihard为stm8eforth提供的nRF24L01库是一个非常好的实验起点,它是所有收发机设备中最多产的一个(同时,我了解到真正的nRF24L01+芯片非常罕见,最好的希望是“相当不错”的SI24R1。简单起见,我将其称为nRF24L01,并且我还尝试获得一组带有真正芯片的无线电模块以测试兼容性。 最酷的地方使用STM8 eForth是远远超过一个编程语言灵活µC:这也是一个操作系统和编程环境。我想探讨一下如何在空中安装“软件应用程序”。 8 J+ Y3 _: O. Y. l- ^ 原因很明显,无线传感器应该消耗很少的能量,并选择一个µC RTC和非常低的能源需求在停止状态下是一个重要的要求。我从廉价的CR2032投币电池开始,但是会考虑其他的电源供应(例如“太阳能花园灯”式的电源,只有一个镍氢电池)。我设计了一个STM8L051F3P6断接板,这将是我第一次实验的基础。作为一个PCB设计工具,我使用KiCad 5.0.0。rc2和我从@oshpark订购的第一套PCBs。' t" t. l% z8 k: H* u! U1 I 我在等待PCB送达的这段时间里,我先制作的STM8L051F3P6 breakout软件,我将尝试设计带有湿度/温度传感器的第一个传感器PCB。1 v4 P! P D7 h: ?* W: A 5 v' [3 y) ^' W n6 F6 B8 D; K% @+ F7 [' U 在Wassim的家庭智能网格项目中使用了BME280芯片。网页湿度传感器枪战提供了一个伟大的概览,博世芯片似乎是最好的之一。它还提供了一个气压传感器,让我们看看可以用它做什么。$ U' {; G' @0 c1 p( c1 v |