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

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

[复制链接]
Paderboy 发布时间:2016-11-18 23:35
本帖最后由 Paderboy 于 2016-11-18 23:40 编辑
4 I( S! w8 ?& t' j- M0 e# ]
' S- x, K' X: F! r! {8 Q: j这个是基于NUCLEO STM32L432KC作为主控的 小范围家用无线报警系统项目
4 |" `4 I; Q6 M0 x. o7 M$ N: z5 @% c1 \

; N6 L  g' w: c9 p# R Screenshot_2016-11-18-08-31-02.png
* r2 s5 U4 n7 \6 Q9 l* Z0 l" O$ M7 ^2 D$ N* t5 }

$ b, M% j- b2 T4 r5 h2 k整体的使用成本,还是很低的。。。用的模块都是市场上常见的产品。。
  }) }! X7 h5 J
$ ~3 i) P' F+ I5 ]* D) w1.NUCLEO STM32L432KC作为主控 也就是接收端(接收无线数据),这里用到了市场广泛使用的NRF24L01模块作为发射和接收无线数据. }& w8 x1 S) x6 M

$ Y* j' [9 F2 e* \* W4 Y1 N8 ~6 g2.因为手头有NUCLEO STM32F031的开发板,(也可以使用其他STM32F0系列的或者STM8等等。。。)
( P. J/ {$ g1 H) O7 m3 h1 K所以这个项目就用了这个板子作为无线发射端
6 ^) O! d* q; `/ v0 O" }; A- j+ z9 b& c; @  _3 q* Q0 R
3.使用HC-SR501人体红外传感器模块(有进口和台产的,这个小项目用的是进口的,测试后效果不错,灵敏度很高),
2 C' f7 C2 b9 e2 w" G+ |; {   使用HC-SR501的输出高电平去开启单片机供电回路,这样检测到有人的时间,模块默认发送报警信息。。1 |: c  |6 H5 N/ ?
5 p% @- Y7 ~* y
4.当STM32L432KC主控接收到无线报警信息后,自己判断是那个发射端的报警信息。。处理后,启动报警设备的同时,3 `: ]$ x% x+ E0 q* I+ h9 S* l% G3 i
通过串口发送给蓝牙设备报警信息。。
4 Q: i, d! M9 c, o$ ?% _0 c! z+ ]
5.如果手机APP端默认开启报警功能,这时就会通过震动和声音提示,有外人闯入设定的报警范围。。 同时可以通过手机APP查询报警区域& w0 }8 r0 t. {/ U
  (例如.车库..)非常方便,可配置多发射端,只需要修改下不同发送端的识别ID就可以了。。
8 J: R" {/ \5 E6 ]8 k& `7 y
5 ^2 K1 V/ T& f+ k6.可以通过APP解除报警(可关闭报警系统)和一个在主控的手动按键来解除报警状态。。
- P& M; A( T8 C1 o0 E. k. p; ~9 l7 i% b4 L. n- K
1 ]- H+ O. e# H' m- g9 w) s
好的先介绍下主要的设备:
3 n; _0 W8 t. z4 Y  }9 Y/ A1 H# K  C  B: k
1.STM32L432KC 开发板
# Z$ _6 m4 L9 @$ R3 D2.STM32F031K6 开发板
5 \) L' S1 T) U; r3.2xNRF24L01 无线模块* Q' V+ q) J6 c; E7 k7 N
4.人体红外传感器HC-SR501
, X. q! w6 G; ?( `5.有源蜂鸣器
' _/ j8 x* _5 p5 _% l/ t9 A6.少许杜邦线
, w# ^4 O, B8 G2 _5 D. Z) n) D7.蓝牙模块2.1  X3 I' r  m& C" ?, p- S% s
8.发射端电源和触发电路
6 M( h! I7 K( m6 E" j' F2 k% f
以下就是这个项目的流程图  `& ^4 T  i  U# E& B
' g. q9 I/ p: i  g. c! i
L432WirelessAlarm.jpg
* V3 n; l' B  S开发平台:
3 r# Y( v; Q5 A# o# b6 K1 eCubeMx+Keil5 不得不说,CubeMx用了以后会依赖啊。。变懒了。。。本项目都是使用Cube+HAL库实现的。。0 j* p* b  l' G, T7 W( O
, L/ J! J+ ~! q/ A! X8 G; a
测试工具:
9 m: N/ X# X- V6 g  b+ e* y  I) Y* z' F串口助手(主要用于测试程序和调试的反馈)# r+ s. V' N0 a' x! {3 ?
安卓手机一台(用于APP功能测试)
3 ?+ u# }& o* P0 q. e) ]: ?: \  m# Q- W. o% P" h/ W5 b0 F
接下来就上图吧!!1 y" g; N: x" l; C; Z0 }& G3 \0 n

4 `. e! t7 r9 d. G这是发射端STM32F031K6 配置SPI和串口输出,方便调试
# n" X3 F+ T/ G6 @ fwireless-01.png # n- [& F, v8 l/ O2 F/ d) c

, z3 z4 @; r- q( w7 H. N! o! G使用内部晶振# i2 }2 D. _  Z4 e8 r8 l
fwireless-02.png ! x  T9 q# t$ h' p
1 u6 b6 U; V0 A2 o
SPI配置/ ~' {: l$ M8 p, y' m8 l
fwireless-03.png
/ a% I( e0 w6 j( I( |9 u
" L9 ?. R2 ~7 [( y! i串口配置, ~3 k4 Y, M" D8 S/ Z) z7 p/ L
fwireless-04.png
& N7 W  ~% j" _* D( s6 U2 O
) l! G8 s+ s/ t( f发射端实物图片
7 Q9 t6 h" M+ ]9 i! K' ~9 v IMG_20161118_103731.jpg 9 h' a% n# B: k) a% G2 M5 S

$ D+ t, V" ^! m% t, p$ c人体红外+2片串联的铁锂电池作为发射端的供电测试电源+一个LDO稳压电路(丑陋的转接板请忽悠了)
2 q/ m6 j2 a$ z IMG_20161118_103743.jpg
) e8 m7 m% W, ?3 \9 S1 K% O9 m3 H; w& W$ M+ r9 C3 G- n
IMG_20161118_103801.jpg 4 s: b! }- N7 j9 b" {1 u
1 ?  k; ]1 _' q
使用HC-SR501的输出端去开关发射端的供电,可以提高电池使用时间。如果人体红外传感器没被触发,发射机是断电状态。。。非常省电。。
! m, P" A$ v" u  U, a+ B wirelessHW.png : I$ w' A3 p1 v- n; k9 K0 v' Z

( g$ D2 r: j: S; u% J7 H5 o( Y5 k好了接下来是主角STM32L432KC 接收端的配置截图如下:
7 d/ O& |2 [* |) g2 n: _. R; b6 [3 k7 X
用到了SPI3+串口1+串口2 还有输出GPIO开关蜂鸣器
0 U( h* F$ ?* I wireless-01.png
. P" D6 O2 _; V) `. \
0 F, u1 W2 ?' _0 O. v使用内部晶振
5 T' J. |3 H- X4 ?/ j3 |' R wireless-02.png
  B0 G6 `* D9 |
: G, g3 n1 Q8 ~7 M4 C& R7 H( ASPI3 配置( E2 E: y8 [8 ^
wireless-03.png " ^, f" @8 ]0 i2 J8 j& S( F, ~7 |

5 }$ F  @; B; Q$ W4 D: m串口1配置 DMA IDLE 接收和发送数据给蓝牙模块7 F7 Z1 n+ [) `
wireless-04.png ' {1 {: i! z0 ?: j2 [. ?* U

  N. Q8 i8 o" f5 R: S wireless-05.png ; T8 k% \0 Z) @$ L) p
( e4 X, r5 O: d5 q0 ~. e! Y
串口2用于调试直接输出测试数据到电脑上; Q: l) E; A8 M9 [" V: B
wireless-06.png
' b) I3 p5 x0 R9 C9 y7 N! T8 A' |+ V! }- Z$ s, v
wireless-08.png ) X: @. e% @1 {

3 \: D' U7 q8 p4 K2 {) i好了,工程建好了,就开始调试程序。。。 NRF24L01 是非常普通的无线模块了。。这里就不再多介绍了。。。
6 _" {; |' T  Z以下是调试过程的截图片段
% V! I4 O5 U1 J, }% [ wirelesssoft-01.png ( ~0 Q3 \9 m! _' _9 w/ H
( F1 A4 \. A  h: ~0 `5 n; b
wirelesssoft-02.png ( z# F2 b, C9 ^* _1 ^$ {2 }
3 @+ O6 }6 n; D
wirelesssoft-03.png
* M& X8 z2 g% t' ~5 j* ^6 X) U9 }, L
% x3 G, @7 _6 |8 Z wirelesssoft-04.png
1 m! c& [* C( V0 _7 s! v0 p) L% q8 g% P5 N% c+ ^3 E8 D
程序都编译通过后,直接下载到发射端和接收端来验证吧。。
( `4 X1 M& k6 Z: Q
$ P  v3 I3 g0 u8 m3 ]1 E4 S实体图片是必须要有的。。。。7 ~( n4 u9 J! g. O. r% D
IMG_20161118_103839.jpg * z+ u% D" B4 E; O4 z

3 R& {# @+ v9 A, ^/ _1 L2 x4 Q IMG_20161118_162516.jpg
' ~# q5 M8 w& r+ G' D9 P6 W
. F) _( t! a$ x IMG_20161118_162536.jpg
6 l0 x7 s8 d* T
, A! S& ?& x9 n( E3 X9 O0 `7 H( v IMG_20161118_162544.jpg
' |! y2 y" ^7 @6 c
* J: w/ e1 X; s% o: a" v2 {! H wirelessyz-01.png 8 s0 f+ t- @6 I- Y. @
/ G" ?/ t8 M' P; w" y! ^, M6 [" l' @
wirelessyz-02.png
+ K9 |4 e, Q, p- z3 {' O! L' D( S
2 J5 R+ b, I% m9 r. B wirelessyz-03.png
+ G- b- C( z; g. j) ~  v
4 x/ v" I% N) L" c7 n wirelessyz-04.png 3 g- i% J& e. U' R7 U5 J9 g, _
0 T, c6 ~6 ~+ f  R: v! M1 \9 s
! M  D. g+ r4 C9 y  Y+ `
好了。。。。亮点在这。、。
  C8 H6 }, V) A# ~; b; |. }6 J4 v1 l5 a5 r

5 S! s  ]! S3 @8 p0 D7 @% I
7 S  B& e: P' b! n: |' W4 z$ u5 |" W! {6 v
Screenshot_2016-11-18-08-30-49.png
8 v, F" ^7 [" k5 F( \3 \% x7 a" D1 O9 h; s0 V5 a5 E0 t) \: ?
Screenshot_2016-11-18-08-31-49.png
0 L' J! H4 b' j( u( U) y
  `: i4 B% b1 h Screenshot_2016-11-18-21-40-29.png
. G9 c; j: t$ y& V7 q
" I  v. q- J: j( ^, }好了这个项目就差不多完成了。。。7 I! Z  X" {( u1 K+ i
4 r6 V9 {* b, M
总结下:+ }+ ~8 P  O7 X/ a% Y- k
这个项目功能比较简单,不过还是比较实用的。。。可改进的地方(例如:添加TFT显示提升主机的体验,有条件的可以给主控再添加PM2.5,温湿度等
! i( E' r" B  w外设更丰富这个项目的功能整合。)也可以添加Wifi 实现远程IOT控制等等。。。
* x6 A5 j2 L" k* ]因为工作比较忙,这个项目弄的比较零散,不过整体框架基本完成。。软件调试也完成的大部分。。APP基本可以用了。等有时间继续优化。。。; {8 T; G8 Y7 t5 l

1 O+ t+ S! l" a- n
0 A& p* l" r; l希望大伙会喜欢。。。。。。
2 g# `5 X  k. l; B* J
" q% t' o- u2 b; e9 s7 c" P0 @! ^* i& Z$ ?; D

评分

参与人数 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
; _( ~: C, s3 k. B  [* I% _7 w& C楼主厉害!
. d* B+ D  V+ w8 H手机APP不会是用 Java 写的吧?2 l( E! N* w4 k' x
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

6 x$ I# I% P  l- `3 P1 M安卓手机APP就是用Java语言,这个其实也不难,做一些简单的,我现在就是会点皮毛
黑皮男 回答时间:2016-11-24 18:44:35
cuyebiren 发表于 2016-11-19 11:506 i9 n0 K" g# a6 k3 L
楼主厉害!
+ o2 ?8 [0 Z$ w. `% ]8 H1 D手机APP不会是用 Java 写的吧?1 v6 N: i, X3 E& b- Q+ |# e# o
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

$ C) Q' `% b* r2 M- ]/ F1 H: W/ u而且IDE里面还可以通过图形界面来进行控件布局,也是挺方便的
: H6 b2 ~; ?/ i# _6 N
Paderboy 回答时间:2016-11-19 13:26:20
cuyebiren 发表于 2016-11-19 11:503 ]; O% j0 @% h) i/ T) c/ x
楼主厉害!7 K4 K5 C. Y" C' M- G
手机APP不会是用 Java 写的吧?, b$ N  p& `+ {7 R( o  o
有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 ...

$ @$ e8 y9 s; `9 t* V8 o纯 C 语言 + 控件 编写估计是没有。。。
zero99 回答时间:2016-11-19 00:05:49
赞一个
Paderboy 回答时间:2016-11-19 07:56:05
zero99 发表于 2016-11-19 00:05
% L% }, c. r8 c; S赞一个
/ Y3 Y) x0 O3 X; d& }: Z4 N4 p
yanhaijian 回答时间:2016-11-19 08:19:29
全能通吃,厉害。
Paderboy 回答时间:2016-11-19 08:21:14
yanhaijian 发表于 2016-11-19 08:19
; X0 X, ~" g3 v, p2 }$ e  U: Y全能通吃,厉害。

+ B* O& o( a0 p& x; I多谢多谢
wamcncn 回答时间:2016-11-19 09:19:19
赞一个,手机APP,软硬通吃
Paderboy 回答时间:2016-11-19 09:47:17
wambob 发表于 2016-11-19 09:19
9 O4 s# `1 W: P. U* c( A0 c赞一个,手机APP,软硬通吃
$ |6 H; ]2 c5 d
cuyebiren 回答时间:2016-11-19 11:50:59
楼主厉害!( u2 X# |+ O" f6 r( z2 j; i
手机APP不会是用 Java 写的吧?
6 W: Q4 R* h6 ^+ N) N* X0 b* {/ M有没有简单点的编译器,如像 LabWindows CVI 这种的,纯 C 语言 + 控件 编写,不需要在学习新的 语言 的 语法
cuyebiren 回答时间:2016-11-19 14:53:54
Paderboy 发表于 2016-11-19 13:26( ~1 K6 x8 b( ?* G6 [( j( d1 y
纯 C 语言 + 控件 编写估计是没有。。。

; a( c9 P1 b- R" k) C! U+ w3 t: Z/ Y; nLabWindows CVI 就是的,不过只能在 Windows 系统上运行,很期待 像他这样的能在 安卓 上运行的
Paderboy 回答时间:2016-11-19 15:02:16
嗯期待吧。。。
zbber 回答时间:2016-11-19 21:37:53
楼主厉害,真是难得给力的帖子啊
9 N) _6 l* }) B) ]
Paderboy 回答时间:2016-11-19 21:45:37
zbber 发表于 2016-11-19 21:37
1 y9 q0 p. B! y) e楼主厉害,真是难得给力的帖子啊

: `4 j# K# ~0 [  ~那都有你啊。。。
五哥1 回答时间:2016-11-20 22:25:13
做的很好
Paderboy 回答时间:2016-11-20 22:59:37
五哥1 发表于 2016-11-20 22:25
" `9 B9 M3 |7 D% O, X; b4 w做的很好
, M' ~5 A, y: a/ t
thx
123下一页

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版