From db3f7d5f95110508a45609824ded72b27dfc55c9 Mon Sep 17 00:00:00 2001 From: "DESKTOP-PUHFO60\\dsx2016" Date: Fri, 23 Oct 2026 15:05:15 +0800 Subject: [PATCH] Document verified SR505/mini PIR wiring on GPIO22 at 3.3V. README/meta/pins note small module + 3.3V works; refresh firmware package. Co-authored-by: Cursor --- README.md | 15 +++++++++------ firmware/README.md | 2 +- firmware/cyd/VERSION.txt | 6 +++--- firmware/cyd/firmware.bin | Bin 584672 -> 584672 bytes firmware/cyd/meta.json | 6 +++--- firmware/export_from_build.ps1 | 2 +- include/pins.h | 2 +- src/pir.cpp | 2 +- 8 files changed, 19 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index aebe2b6..bc97d94 100644 --- a/README.md +++ b/README.md @@ -7,14 +7,17 @@ GPIO22 读人体红外(PIR)模块 OUT:每次检测到运动开始,屏幕 | 项目 | 说明 | |------|------| | 板子 | CYD ESP32-2432S028R | -| 模块 | 三脚人体红外感应(VCC / GND / OUT),如 HC-SR501 / HC-SR505 / AM312 等 | +| 模块 | 三脚小型人体红外(卖家常写 mini SR501,实际多为 **HC-SR505**) | +| 供电 | **3.3V**(本工程已实测可用) | | 输出 | **GPIO22** | +> 大圆头带电位器的是 HC-SR501,接线相同;大模块更稳妥用 5V。本仓库默认按小模块 + 3.3V 写。 + ### 接线 | 模块 | CYD | |------|-----| -| VCC | 优先 **5V**(HC-SR501 等大模块);仅明确标 3.3V 的小模块用 **3.3V** | +| VCC | **3.3V** | | GND | **GND** | | OUT / S / DO | **GPIO22** | @@ -24,13 +27,13 @@ GPIO22 读人体红外(PIR)模块 OUT:每次检测到运动开始,屏幕 - `MOTION` / `IDLE`:当前是否感应到人 - `hold` + 进度条:本次连续有人时长(约 0~5s 满格) -- `OUT HIGH/LOW` 与 `act=`:原始电平与有效电平 —— **挥手时 OUT 应变,不变就是供电/接线问题** +- `OUT HIGH/LOW` 与 `act=`:原始电平与有效电平 —— 挥手时 OUT 应变 HIGH 注意: -- 多数 PIR 上电后需 **约 30~60 秒** 预热才稳定 -- 确认 OUT 接到 **GPIO22**(不是 21 背光),共地 -- 模块有灵敏度/延时电位器时,灵敏度先拧到最大 +- 上电后约 **30~60 秒** 预热,此前可能无反应或乱跳 +- OUT 接 **GPIO22**(勿接 21 背光),必须共地 +- 小模块一般无灵敏度旋钮;检测距离大约 3m 量级 ## 操作 diff --git a/firmware/README.md b/firmware/README.md index 2b90767..133c4c0 100644 --- a/firmware/README.md +++ b/firmware/README.md @@ -3,7 +3,7 @@ 目录:[`cyd/`](cyd/) 板子:**CYD ESP32-2432S028R**(ILI9341) -功能:人体红外 PIR(GPIO22)计数 + SoftSPI 触控 + LVGL(同 tftest / btntest) +功能:小型人体红外 SR505/mini SR501(GPIO22、3.3V)计数 + SoftSPI 触控 + LVGL ## 刷写 diff --git a/firmware/cyd/VERSION.txt b/firmware/cyd/VERSION.txt index 2076979..1d02c4c 100644 --- a/firmware/cyd/VERSION.txt +++ b/firmware/cyd/VERSION.txt @@ -1,8 +1,8 @@ name: CYD Human IR / PIR (cyd) -git: a7854de +git: 6226f0d date: 2026-10-23 board: ESP32-2432S028R (ILI9341) -features: SoftSPI touch, LVGL, PIR OUT on GPIO22 motion count+1 +features: SoftSPI touch, LVGL, SR505/mini PIR OUT GPIO22 @3.3V motion count+1 flash_size: 4MB offsets: 0x1000 bootloader.bin @@ -12,5 +12,5 @@ offsets: sha256: bootloader.bin 3D234A7471F67B013686DABD4DEE7C1FA915C9928463616A94BC9297ACF1ABF8 boot_app0.bin F94C5D786A7A8FAB06AC5D10E33BF37711A6697636DC037559EA19CC410A17F0 - firmware.bin CA8FBB88050BC2284EFDDBF3ECC711A6539D4F3829994017812A30C0E2E6B057 + firmware.bin A870E56D4391E361A9FF6F73AA522D6ED2826937AE2565B50A9F5AA9D36D37CA partitions.bin 148B959CBFF1C38AA8E1D5C0BA9D612C54997B945E56A63F41223EEF650653A1 diff --git a/firmware/cyd/firmware.bin b/firmware/cyd/firmware.bin index 7a625e1afcac770b3f8fb8f3d745f11688cda0d3..d47cf601e887f6b083ec0dc4611f741d31c39057 100644 GIT binary patch delta 8874 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 delta 8887 zcmb7}3tSat-hgM$9AHqu!$kqbI0PsPCCCBMt>_Z@$a&wu{!W$y3HywqHX zuDKAs_Mr3Np;qmE+ovDj?yR`-bMZItC<8v*>p!R4%g4GLYW05Y(rK2NZ_8fqROfb? zk~j59=agyrbBYRPIj0sBk;KZ($^s&q=4%mhzQ-e(KkzWX=6nsoR9nd$TY~ zUlPU^^0HMK{`Ey+j4a>2CfMJ0;-&Rn92?39Y(BI?O|aBxH8@L&Hvhe~s<)zy&6}wt zq?*RnqySOXK0w&h0)*U|IO^F|Me!#VK1yAk!}VpdT>i#bdC_W0ciG&pM}W9Y@nO@` ze0F{Fr>XXgT~QXZyc9~{^k~yqgI|C%*4bz^y5-k|m*89Y4lcvr;0H*s0%O!*^+zi< zMqQQMH^wv`f#EP3#=!(Af*CL$o`z>(JtSD)$<|vcZpNq|*%IZp=45)dv2Gvu@8#B} zk*_FDx7%HJXvR&m|2OiboQ(poT0sSt&JLI)wEHIU9#JT-8Jk+Hoe!?VY+Hd*9l~6~z_O9tN4c%; zCp_CL_fKwftY!totF0_&ylS^nzp%nIrmbWX>055iBjl=V!pO$+ zM{#{DVK-ThdEHDg#?rX`T+iWslnMn@kd2Q0zjk2=EgwlSjX!hY*1`wF>4^hyk@)OE z)2PPp^}oLhN9g?ux!%+{dBim4$*nkM8hML2LtIu*rEzO=aXh#S!&pxR2X*jC(-=Yg zcpI~?F`mXhXZ-hF_}|V#DJwoP{r5LRj`cyJ8d`TxpKvi8%nA_apYl|xWjo|OQg@#) zbQBfjdxnJ-p7JeAJ-%ZFwo^mvZkVtVPb$6MF;@3>3`1XAdF|BTj@j*gf8%AdJ@;

YSu5sNbN#%p}js29y`dH_$6Yrmd z4eLEe<~z>(y`!UW=H+hr)t4>Y=&AD$E3tzbS~tKZY$gS@dp$*>!~Nza&1V%A<`>MA z`#Ph88k|_vptw&Xil-M&9XoBlvW)vEtlZN@>f0WdT5qzJrgpBB+(Vw!y$w5VeRFRE z$|%|bH5HyJ*H}X;^&SE{r)75D*rEdB1S=|q4TxYx@)$|v!;0d$g$48Kb~E7++K86|y%;NzD z3D6S;Lmo_og|G~shj$ZjE*Gw!l?R!sd!O+EGw-c z-T<3n2ke7`PyruSEE%W15u{$XlINI>n__c#s{BIENf!-sZgO%} z4Rg8`HIFU=d0fff8x}Q}Ic}ncxoDXS@vMT|ukP2jV#Yl6)kxR=V#@eE&7)2ph(j#f z@F!Tq7qJ{J8(A~ zh#$v6fi6XvOAt)r1ssC+ZFoQ`!o0Q=%m zxDhVGjqzgahc{qnzF#3^_a zPR09iM|=$D;|sU|U%}(Cwvvwn+zd~|3AhjoJPD6n=`xMU1T#n!;pN!ErMMKA;TQ2S ztO!M^#wz{?w&6y+nQGXH?KmBK;X&9NPsBcW3D$8b_QeNqBmAk0pfSNE?1yh+f9%gI zuzXg;VmaFP#18xf4#e|t5MGai@c|ryKfz7$W!wz^Cl1B_ydH<)NF0vSaC7YHN1$YL z6=N08$2R;T*6?9$$KPNtY+u8k;dtzWdt)6>z`po7+z6N9#`rAu!#`nv9LW2-lB+14 zu$s&L-=DxnVhq;sd~C;?uor#@d*kz1na+KURs0*a;jrgvhZC_K_rYFx4EDy0u@Bya zb^IDuiWTJ~=95WLz9q1c@Lo$tI3C;aaO{N_V{g0@``}Npj%%<3yKx|XXdR~n_rk$= zG7iC;a8vvVZicVmP#p3Cr^H3jksuro!_DzixCP#dBk(btjIZDhICwpG0q%)Y@nqZ) zug9J6VVs69;&l8ktgK~x*uWm+4p`ZyDB0Mh5{xCV;l;AxAR{4G@ot&NN3n*##ddrP zd*R@X92wje`{15f$B$#Bl7S4Xcp0|go!E|#V=r90(d=O;Ra~8$sE8lNHry9$xDea% zI_!lHVQ*ZGeel03PQI+B*(>Zj)S9WW^21nuT>hU__y*cG56s9(;IfQ2jU#P%e~DvG zfaQiL^}jph%cz&rmJx)ya=9Vv&W0QsZL8_+-(&zEYtRQqSU+yJ%}b6NWEx*&^PPgL zpfz!Bi@Qcn^SiuivI3s!bIE-Siu1a$*4ntk7VUcCQ9d0>4Oyg!ZPmApZjT0u=7Xui zqa*HsLv-sZ2LeUuL9QQl3vuQNMkkqdFi5hTMt&Eonh0xHt^xH91C4)HI`ec`Fa>o&b@9>U00Z)dfpaf2G&NIe2M746wsDZF=ZX27( z*T8A3V7G0-$V=lnP7}HRCUE-PYURVYFN~;L_7zJgJN@l#L*bQBzA0t1tSG;HG?8*g zT`ZJ6#F4}`_&4Z8{G-)*k1gJJ-eS{O0h6pLdu*YJ%XnA1_2=70*h6=X5a7GQ9mFs3 z6=t}g0Omsm?6cn7V@vUO6ZY7~+`(3+w5;oUY?IZziqWsyR;lU@>+gGQR+h!1Y8oAX zjVE5aSvQEfx5}=SV*XRVCw~=+D68^O6h97NTk2v2!~5nf3B?}^Xglqo!niHq=l zyd1B<<#+*ZO}`VMBk`}ajm3issat5aHQpoG28A=&A6NxDpb}Dp-g|xiu>J4dq(S?N zs5fkBgVo%PBenK{=Tu?TLStry+CrC&FKS)8=Mv3;`Os^+TiLSeDJ3bUxiW~Fxg~65 zb$6w9#2sT1x^X zoGRQ64ihI>cWqiqOF1mcOC^K!vOg%o9mO=2lWUpfbSq2K;?)z@lbV(mB|m4gQy6-2 zNDOf_BS<^bxB&@JYMs@z7On)+vpdKeMN^y*Lz9R&K7tgRqJk4{QC>{h<<_#Ew-Ukf z2I@=)Cm$*DL;f^5`K@oG{4%RMOx?0XU{(200&z*~PkZ(YYQUakb~26-l)~C%8d0GL z$3O;Dv#j84bY4y8he4sE3~RfcY4{rtvs-$AIN=i@u31OzS_>~Z*>}YHj?g8;TWpy; zWasxcloW?voFhIy@*JAuO7NEy+)n)~VC)w(3T*d4%7l2D=4+ZoF+0VjDw~bxk zn87SLIXUwuCq3o-qMV?UQ=_LaGkwGUJ-;g_Y~{RfHH9^h#B`h!&J$mS%OEFgs$ku$ zt)ugK6}_=KK*)`CtO^jb*93^_wE^N5N8)Ykte4iS?lQP~GC;^V-`O0LhnUV|u0;JKC=c(=)Gl-=&i zWt7fA#nq5U`AaNk;`e|jk{N8A#8yYpG|E0r%p zco)VWycb@C<&Z*d7S6!*dwn`y2S=fbm0!p5aJ)-=i+C@VufBgZOk)fyD1aesK-_#L zZ+b9qPJR;p0%u!8+rsjdMlzF^$B0`C-8gwOAJi`cg#vB3=$d ziD%()@EDlT9>T!}f2aLv>U@cR#@&|a;u!HEh%$KxfP1H87nW9$x*(A8?!SZfrxfqJ#%BXKc2V)bvV8LngOUt&MgxQRD#jGer! zRrSzCC^=2il=ocx2o%BPFkSSfj$d1c*u-*K26rU>E97&bUB`bQCqL-Z@G`Ks(Z#Jm zU0nU#OZ>p{4TyZ^%HX*EW^-dwf5wGQx>y*li)=bBWBCaD&5H8VLR~v}zbu3AAz>iT zXxI(%ne#PPlz)EYc6Z>is^rdPF_SkPm;)r$m!x@1JdZC!(=2(>>*CH6x`-xT3!`Bw z%!46p!U&Kb5Ld3atqMQQ-~Uw#-h^+!+dAu~MRspAmJilJ+`f;P#xS@86W~i&=+wpK zC|!I=TokE`J$N4`cd9&tO9>6GCAcjPRu1qAUF0ybEacVl z4!Q21|Fau=EBB^YAIixipKiV5uf-1*EWQMV@Y_G!ZaGa;I>aHCQKbaB59eB-tZW#^ zn3H=7wZcP{wao3nIe*E}!-fwe=o#eVhe~@Er79I}?yz`D|!M7vv5b8ZA%b~1X7a1Sx zB9|wRWF=*PBEOQh@o=!_Uv+<{>PRgAZq*C(5nyAik9BDMT-#XAEOdyq$-4NOz7A&V zLasL=Nf*aCVta{mxqSYJ_fqeU+x^iO#H(0`{G;Drh<}4d#9`143>XgiFcT`raEDWW z5wYz1ZTuUod4l)2GJ<#E1Y7{Uk1pg!)pET#b6K9`5OQ+*gw-@qdtNQEb_eock$=>z z9LI>2&&LJqVz>7~X+Ev7W4kWm$ajDfELTBq;*QYU@(R+%xM~Sk7Vy-7#V`xPU6(mm`Yj;r%(q3taL8=q8n8i1(;N>H@3dDevKG zt+nQq_k?iyav{&Ma*c6-@l1aG#uc#Lmj7w*Y3k{UMW?;5*b=XB5U;^a@EaE-8uMLY zz`gGb`F$e4HA=WgdRQAj_l|5jy@AwID@>1mh diff --git a/firmware/cyd/meta.json b/firmware/cyd/meta.json index b0db7e1..c150a34 100644 --- a/firmware/cyd/meta.json +++ b/firmware/cyd/meta.json @@ -1,7 +1,7 @@ { "boardId": "esp32-2432s028", "name": "CYD Human IR", - "summary": "PIR human infrared module on GPIO22: each motion start increments count", - "description": "SoftSPI touch + LVGL. VCC/GND/OUT->GPIO22. Auto polarity. Motion edge +1, hold bar, touch Reset clears.", - "tags": ["pir", "human-infrared", "gpio22", "touch", "lvgl", "counter"] + "summary": "Small PIR (SR505/mini SR501) on GPIO22 @ 3.3V: motion-start count +1", + "description": "SoftSPI touch + LVGL. VCC 3.3V / GND / OUT->GPIO22. Float INPUT, idle LOW active HIGH. Motion edge +1, hold bar, Reset clears.", + "tags": ["pir", "sr505", "human-infrared", "gpio22", "3.3v", "touch", "lvgl", "counter"] } diff --git a/firmware/export_from_build.ps1 b/firmware/export_from_build.ps1 index 69bad5f..5604550 100644 --- a/firmware/export_from_build.ps1 +++ b/firmware/export_from_build.ps1 @@ -41,7 +41,7 @@ $lines = @( "git: $git", "date: $date", "board: ESP32-2432S028R (ILI9341)", - "features: SoftSPI touch, LVGL, PIR OUT on GPIO22 motion count+1", + "features: SoftSPI touch, LVGL, SR505/mini PIR OUT GPIO22 @3.3V motion count+1", "flash_size: 4MB", "offsets:", " 0x1000 bootloader.bin", diff --git a/include/pins.h b/include/pins.h index a052674..d1e6cf9 100644 --- a/include/pins.h +++ b/include/pins.h @@ -10,7 +10,7 @@ #define CYD_TOUCH_CLK 25 #define CYD_TOUCH_CS 33 -// 人体红外感应模块 OUT → GPIO22(VCC→3.3V 或 5V 视模块,GND→GND) +// 小型人体红外(SR505 / mini SR501)OUT → GPIO22;VCC→3.3V,GND→GND #define PIR_PIN 22 #define SCREEN_WIDTH 240 diff --git a/src/pir.cpp b/src/pir.cpp index 2f8c4ec..2b27fa5 100644 --- a/src/pir.cpp +++ b/src/pir.cpp @@ -71,7 +71,7 @@ void pir_init() { g_idle_level == HIGH ? "HIGH" : "LOW", g_active_level == HIGH ? "HIGH" : "LOW", high_n); Serial.println( - "PIR tip: many modules need 5V VCC; warm-up ~30s; watch OUT on screen"); + "PIR tip: SR505/mini@3.3V OK; warm-up ~30s; OUT HIGH on motion"); } bool pir_poll_detect() {