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