你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

【我要为STM32站台】基于STM32L432家用无线报警系统  

[复制链接]
Paderboy 发布时间:2016-11-18 23:35
本帖最后由 Paderboy 于 2016-11-18 23:40 编辑 # i4 `& U/ A$ {: }9 D& T

& Z5 G: \2 @3 N! M2 U这个是基于NUCLEO STM32L432KC作为主控的 小范围家用无线报警系统项目
% o) h( J8 `3 P9 p& t
; n7 g% L7 i$ f( w6 }
9 ?( q8 u: p: r0 m Screenshot_2016-11-18-08-31-02.png   {9 R0 ?" S" X* z+ ^5 p
' `4 T2 ~) R6 p$ {- i

$ s( m% u, ?' S整体的使用成本,还是很低的。。。用的模块都是市场上常见的产品。。
8 m8 k% K3 F8 m/ t( f4 P8 G  `) f
0 C2 c; ?) K# s" [$ S8 ~1.NUCLEO STM32L432KC作为主控 也就是接收端(接收无线数据),这里用到了市场广泛使用的NRF24L01模块作为发射和接收无线数据
$ H+ B7 S  Z6 l
* C1 p! p5 }8 H: l" S* t7 ]1 X- w2.因为手头有NUCLEO STM32F031的开发板,(也可以使用其他STM32F0系列的或者STM8等等。。。)
9 I% _5 i7 s' T* Y8 l' P( M3 r所以这个项目就用了这个板子作为无线发射端
& u, N7 Z- v; l$ m9 U# W" X2 n4 ^$ x5 ~9 W* ?% z
3.使用HC-SR501人体红外传感器模块(有进口和台产的,这个小项目用的是进口的,测试后效果不错,灵敏度很高),
! n. P% Q! a0 I! E5 R   使用HC-SR501的输出高电平去开启单片机供电回路,这样检测到有人的时间,模块默认发送报警信息。。' U& [# G+ j. s' O! w% z3 y" E
2 Q- n& k2 J, ~1 w$ Z1 m
4.当STM32L432KC主控接收到无线报警信息后,自己判断是那个发射端的报警信息。。处理后,启动报警设备的同时,
$ i1 @$ _3 T. t; {0 R( O# ^( a通过串口发送给蓝牙设备报警信息。。
- y+ ^5 h* V  p4 ^# n0 x3 D; F6 {5 S/ j* f
5.如果手机APP端默认开启报警功能,这时就会通过震动和声音提示,有外人闯入设定的报警范围。。 同时可以通过手机APP查询报警区域
+ I7 X2 }. D8 O% H! ~# K; `; a  (例如.车库..)非常方便,可配置多发射端,只需要修改下不同发送端的识别ID就可以了。。4 |5 [0 C# X& f

0 L& E% X- D- Y6.可以通过APP解除报警(可关闭报警系统)和一个在主控的手动按键来解除报警状态。。3 _7 d0 G$ i! O

4 ]4 [! C8 F, ~  h2 G
* m- @$ R, C. O6 _' D/ \# t好的先介绍下主要的设备:
3 A  q: X+ \+ X3 q2 Z. F0 d$ d/ h" m
1.STM32L432KC 开发板6 O6 b1 z; l, N% Y/ n9 F3 F5 ^
2.STM32F031K6 开发板% O: ?- C' j0 f- W7 A( @. V. t+ h
3.2xNRF24L01 无线模块
! I% }! t6 }+ _4 C" ~8 F8 a4 q  ^4.人体红外传感器HC-SR501! F6 |. D" A" {7 _& ]
5.有源蜂鸣器
1 X2 _4 D5 t! e6.少许杜邦线( _9 ?7 _% q2 ?( [! ~5 H  l5 t
7.蓝牙模块2.16 Z& a8 F8 Q: ?! X& y
8.发射端电源和触发电路! F$ _' T- u' M, Z4 s: _
$ G# k* s) O, r! n4 W
以下就是这个项目的流程图
6 q. M  S- Z" r+ Q, q* z: H
0 w; v- T6 b# }1 h6 P, T8 O L432WirelessAlarm.jpg
) M3 d, p$ T8 d9 s" a# i! w开发平台:- w* h  o& g3 P, u
CubeMx+Keil5 不得不说,CubeMx用了以后会依赖啊。。变懒了。。。本项目都是使用Cube+HAL库实现的。。: Z" F3 }6 c( }$ x# {

; ?' z9 A1 m6 i测试工具:3 @4 L1 ]6 {0 b, C# n) {
串口助手(主要用于测试程序和调试的反馈)/ p8 r& \' ~* b0 Q
安卓手机一台(用于APP功能测试)
' O, J+ t; n* J  l9 ]4 Z6 \
- J) `, E! v2 b& _" \接下来就上图吧!!1 P' D$ [; i& b  l9 I. X
4 @: v' \& A" ?
这是发射端STM32F031K6 配置SPI和串口输出,方便调试% b, O% o1 G- H. j# l+ I- c( d6 }
fwireless-01.png + T. G' w7 z: S+ ~% i( U$ n2 y
5 R2 `" f2 n% v( Y* d7 L
使用内部晶振
( M* P- L6 ]5 E5 C8 S( G9 q) D fwireless-02.png 9 l9 A' \3 b& K: ?% v6 {3 x

  V  o9 E6 j! K* n; pSPI配置( v9 w! |5 W! G
fwireless-03.png 1 b: v/ b$ F, V* _
! M9 ~6 g, c7 Y, N* t5 C) H
串口配置
( d! p3 b+ G& G- E0 m1 f fwireless-04.png   r- t, Y. ^) E) S4 f" [" \: k
4 E' h; {" g# \5 u5 r
发射端实物图片
( ?6 B* N/ `' j' e9 \ IMG_20161118_103731.jpg
+ _3 f. b) z& e5 \. A
  }3 j& |) q8 h7 M- Q- U4 e人体红外+2片串联的铁锂电池作为发射端的供电测试电源+一个LDO稳压电路(丑陋的转接板请忽悠了
2 X  g3 J, u& s* @ IMG_20161118_103743.jpg
; g' V  r2 |) |; C9 y5 X! l, `$ a- M+ |4 k. _+ f
IMG_20161118_103801.jpg
, ~% A5 u% n) R) l4 X+ j7 M
5 u, o1 s# m$ F+ s* `3 b使用HC-SR501的输出端去开关发射端的供电,可以提高电池使用时间。如果人体红外传感器没被触发,发射机是断电状态。。。非常省电。。
: A* c$ l& T  t3 \0 Z wirelessHW.png % g6 F* U  L. C

3 V: W. r3 e  i$ B7 J# f( v) I; l好了接下来是主角STM32L432KC 接收端的配置截图如下:
1 y2 j1 z1 u) A, U! |; K
1 Y4 |# a0 [1 y$ V5 ~1 ^" N用到了SPI3+串口1+串口2 还有输出GPIO开关蜂鸣器
% D% V, s1 r3 f" M wireless-01.png
) M3 d! x2 ~4 @. T/ @0 ]% l
' l5 r' R% S+ Z! `9 Y: s% j# b使用内部晶振" @1 g% i3 M! U6 {& f
wireless-02.png
6 v+ `3 }3 Z/ T+ K! f) A& R. h2 F; f9 ~& K
SPI3 配置9 o$ }7 P2 O1 ^6 g. g  `6 l
wireless-03.png
8 k9 u2 n3 F4 [+ Z, I$ X% V! M2 X1 B4 Q, d% F! I; `# U; i! b( K8 y
串口1配置 DMA IDLE 接收和发送数据给蓝牙模块3 V" z: C% {- Q8 b1 E! L1 n7 T
wireless-04.png 8 R; ^! b! e2 I  O1 ]4 t
$ c: j. z& }: ?
wireless-05.png
  X- }1 M' ^. F3 D* C$ J6 p+ u& \4 s- R, F2 ^) e  v/ h
串口2用于调试直接输出测试数据到电脑上
* |" S  T: ?2 \6 G8 Z7 a wireless-06.png ' x0 Y3 q! w) |" M: B  d

5 [0 f- P* t1 | wireless-08.png 7 L" B  T) a* L. F# }& I
8 [7 }7 l- T6 F1 }+ n* w
好了,工程建好了,就开始调试程序。。。 NRF24L01 是非常普通的无线模块了。。这里就不再多介绍了。。。
% U" {2 z- D$ w( u0 }  \4 Z以下是调试过程的截图片段* v" r1 s2 J- j/ J
wirelesssoft-01.png - Q2 u' F* a, n/ V" N

9 T) p/ B  l, ~- Q2 g1 }/ H wirelesssoft-02.png
/ d! [; G7 W. t9 }( q
* i4 Y% X( f. K- A* i wirelesssoft-03.png 8 ^9 K( X) e* c) A/ Z4 V! ^
; _: r3 X7 R& v+ U& h& @, \8 w2 U
wirelesssoft-04.png ! W' N& T2 \3 j7 v- G

6 j$ X# c# }4 w4 n: c' ^程序都编译通过后,直接下载到发射端和接收端来验证吧。。
& N/ q( `( @# B& B4 H7 b  z! A: ]7 r! A/ K3 ?6 L
实体图片是必须要有的。。。。' Q* Z3 J' P" q/ `* ]
IMG_20161118_103839.jpg 8 r# W' ^; T# b; j
$ k. `' ]. C/ b/ S0 z, E# U
IMG_20161118_162516.jpg . }1 ]1 B! v+ m$ h4 u

% D0 ^* C' \. v7 y: S& r1 J IMG_20161118_162536.jpg 3 |/ q+ [5 C4 y1 B. Z9 p
* [" Y: E, X( l6 Q3 a( H6 i
IMG_20161118_162544.jpg 3 `" l& W0 \2 T

4 J7 p0 a* }$ |. `+ [+ g9 x wirelessyz-01.png
4 g- k/ J5 m8 C- m1 u. k6 t
& V  g' u* W: r* m wirelessyz-02.png 8 M& i/ W. ]6 B6 d0 Q" B% \  S

' [4 I7 T2 I6 g  | wirelessyz-03.png
+ o9 Z0 Z# J3 ^0 Z) x9 g$ [# U  ^+ |" m7 n9 R% P4 X
wirelessyz-04.png
  q2 i/ d9 }  u# T6 U0 W: L/ c. F' B: }" y
6 O1 ]% v* P$ v$ R9 M, p+ s, {$ q
好了。。。。亮点在这。、。# `8 W$ Q. e+ s$ I

6 X. N2 w. p+ g: G0 r! A, w0 X! \; x# X0 ]$ P
* A1 {: s4 o# X% y. I+ O7 w
; d- k% L) \, v9 L0 \! S% L3 S4 e4 C
Screenshot_2016-11-18-08-30-49.png
( i! ^" E. j" A  a" A3 q9 l. W4 h; n" D- _' k
Screenshot_2016-11-18-08-31-49.png 7 d& H9 P6 ?  f8 y4 q; |" _) j
) a6 _7 @3 A  n4 d2 k( N
Screenshot_2016-11-18-21-40-29.png ( {& `8 |# h9 i7 f% X# I  Q
6 c0 k/ o: c8 N1 d
好了这个项目就差不多完成了。。。
1 b) I5 k$ ]# c3 M6 w
) z2 I* M! j0 ]" [1 u9 l总结下:6 b& D" L8 L0 z# a$ A7 K
这个项目功能比较简单,不过还是比较实用的。。。可改进的地方(例如:添加TFT显示提升主机的体验,有条件的可以给主控再添加PM2.5,温湿度等1 F3 _( C/ ^  P
外设更丰富这个项目的功能整合。)也可以添加Wifi 实现远程IOT控制等等。。。
5 ]  B8 W: W. w/ j9 U6 v; b因为工作比较忙,这个项目弄的比较零散,不过整体框架基本完成。。软件调试也完成的大部分。。APP基本可以用了。等有时间继续优化。。。
7 {' H! Z1 N' ]" u$ e: |* U! ]* F2 R/ L0 ~
8 x- `; r& a9 \: ^
希望大伙会喜欢。。。。。。3 n+ Y1 f" @5 H; y
* ?+ L9 Z# T$ t. F
: }) A, C0 w: O% Y- C

评分

参与人数 1 ST金币 +30 收起 理由
zero99 + 30

查看全部评分

收藏 4 评论38 发布时间:2016-11-18 23:35

举报

38个回答
黑皮男 回答时间:2016-11-24 18:43:40
cuyebiren 发表于 2016-11-19 11:50
7 ?$ q- p' H: n& n. F) N楼主厉害!1 l/ [1 z3 t6 @. A2 m! {/ L
手机APP不会是用 Java 写的吧?
: M& I. ~% y/ F' @有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

; T! i1 C$ e3 @5 S; K# Y安卓手机APP就是用Java语言,这个其实也不难,做一些简单的,我现在就是会点皮毛
黑皮男 回答时间:2016-11-24 18:44:35
cuyebiren 发表于 2016-11-19 11:500 J3 _+ V  K  }" t. t
楼主厉害!
; s0 n+ ]2 X+ Y- A& x5 [5 \, O8 U手机APP不会是用 Java 写的吧?
2 R) M. \$ p& K/ N有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...
5 H+ }5 F7 `* F2 w
而且IDE里面还可以通过图形界面来进行控件布局,也是挺方便的
! F/ b& \* ^( C' i& f6 U1 `9 D
Paderboy 回答时间:2016-11-19 13:26:20
cuyebiren 发表于 2016-11-19 11:50
' _9 Q. c6 a- x楼主厉害!: N# y* L* o% y; Y* u. y( V
手机APP不会是用 Java 写的吧?
* @" H, f+ x. O1 r5 L+ _- U2 |有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

4 w8 K* Z! O5 P1 x& t) z纯 C 语言 + 控件 编写估计是没有。。。
zero99 回答时间:2016-11-19 00:05:49
赞一个
Paderboy 回答时间:2016-11-19 07:56:05
zero99 发表于 2016-11-19 00:05) Y3 I! }$ j) ]/ @
赞一个
! t$ u1 f1 a' S. s8 G3 c( ?
yanhaijian 回答时间:2016-11-19 08:19:29
全能通吃,厉害。
Paderboy 回答时间:2016-11-19 08:21:14
yanhaijian 发表于 2016-11-19 08:197 u: y) a! P; x7 n
全能通吃,厉害。
# X- R7 l; W" a9 J0 C
多谢多谢
wamcncn 回答时间:2016-11-19 09:19:19
赞一个,手机APP,软硬通吃
Paderboy 回答时间:2016-11-19 09:47:17
wambob 发表于 2016-11-19 09:19! N. X9 S, o! a/ a0 _
赞一个,手机APP,软硬通吃

- |# N5 l$ ], H+ @& Z* Z2 V$ E
cuyebiren 回答时间:2016-11-19 11:50:59
楼主厉害!, Y1 d8 \1 x9 Z  i
手机APP不会是用 Java 写的吧?
" n9 f- b9 W# r: q有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 + 控件 编写,不需要在学习新的 语言 的 语法
cuyebiren 回答时间:2016-11-19 14:53:54
Paderboy 发表于 2016-11-19 13:26! F& i9 g) y3 N2 W) V& e
纯 C 语言 + 控件 编写估计是没有。。。
$ [" r- [9 W& c. g2 T2 F; w
LabWindows CVI 就是的,不过只能在 Windows 系统上运行,很期待 像他这样的能在 安卓 上运行的
Paderboy 回答时间:2016-11-19 15:02:16
嗯期待吧。。。
zbber 回答时间:2016-11-19 21:37:53
楼主厉害,真是难得给力的帖子啊5 e: h4 C2 ~! w& {( |- z5 L8 s
Paderboy 回答时间:2016-11-19 21:45:37
zbber 发表于 2016-11-19 21:37
5 d) s, e/ T5 Z, `楼主厉害,真是难得给力的帖子啊
1 C; x- N: a! J1 ?# \: [4 w( u
那都有你啊。。。
五哥1 回答时间:2016-11-20 22:25:13
做的很好
Paderboy 回答时间:2016-11-20 22:59:37
五哥1 发表于 2016-11-20 22:25
' n9 o" u, I/ y, u9 N; |, _做的很好

5 F+ e4 J8 b, P  ythx
123下一页

所属标签

相似分享

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
st-img 微信公众号
st-img 手机版