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

TencentOS Tiny手把手教您自制智能甲醛监测仪

[复制链接]
STMCU-管管 发布时间:2020-11-26 09:24
一、基于TencentOS Tiny的智能甲醛监测仪4 B  T2 A) ~4 v8 e
) G- X: S2 ]! T6 [  \% ~  o
; k5 _* b# m+ |3 [5 H1 |% B; z
7 |9 O* G/ v1 B
; [/ K9 I( L* E7 @
甲醛是室内一项非常重要的指标,对眼、鼻、喉的黏膜有强烈的刺激作用,最普遍的症状就是眼睛受刺激和头痛,严重的可引起过敏性皮炎和哮喘。由于新房装修场景对甲醛监测的需求越来越多,拥有一台准确、性价比高、稳定的智能甲醛监测仪能给大家的健康生活带来一份便利,今天小编就来教大家如何基于STM32G0开发板+ESP8266 WiFi + TencentOS Tiny物联网操作系统,来自制一个智能甲醛监测仪。
1 d' p4 I: q: ^
1 J1 S% e5 e6 q, }0 t% w5 z本项目制作的甲醛监测仪可以实时的检测室内甲醛浓度,在OLED屏幕上显示具体数值,同时还可以将数据实时上报到腾讯云物联网开发平台IoT Explorer,用户可以在“腾讯连连”小程序实时查看数据,并通过公众号及时接收告警信息。$ g  D8 ^9 b6 T( |7 b0 w) u0 a
8 A0 c9 S4 P; W2 f( K& ]2 V
本项目所需要的物品清单有:
5 b( V. [1 O, i
+ _$ d+ E$ R$ OTOS_EVB_G0开发板 x 1
1 b1 s  \1 W: I# S; f- m英国 Dart 甲醛传感器 x 1
# G1 f2 Z1 u. |- I) z3 PE53甲醛传感器底板 x 1% `" a) \% L5 P" S; x  x$ Z1 y, Y7 _
1.png 7 H& S* z# R/ x- `2 y
成品组装图(安装各接插件时,请务必参考成品图,不要弄错方向,否则可能烧坏MCU)
7 y6 U: l* ~2 k9 _: I 2.png 6 ^. S% D8 d7 M$ h- X4 H
好啦~接下来开始我们的制作!1 r, n- p; U) \$ K2 P

+ t  C8 W) l1 ]3 f5 w% C- z3 U
; d3 e; a/ C4 g3 q* Z2 s2 B2 G

# `3 o$ B$ ]7 G
# U' {1 l* f( P' D; [
, ~; a3 a" R) S& Z. U

5 }% s& x4 F8 O
二、TOS EVB G0开发板介绍

/ L) p" [8 t  E
4 m6 d$ h+ H: \' l
% D' ^4 \  }4 @" i1 P
1. 开发板特性
$ B1 v; B0 P9 e9 I* Y
" B5 k1 S- G2 _$ t
1 M6 |* W3 C8 `  A
TOS_EVB_G0 开发板是由腾讯TencentOS-tiny团队设计的一款物联网开发板,板载资源如下:
- {1 j  j: \6 o0 @8 Z! N' t 3.png
* {, L- v7 Q& _, m! q) O- 主控芯片采用STM32G070RB,Flash空间仅有128KB、RAM空间仅有20KB;
, O: O5 |1 m6 }- 板载腾讯云定制固件版ESP8266 WIFI模组;* @/ W1 U; Q4 C( g
- 板载E53传感器标准接口,方便连接各种E53传感器;
! I" [0 R9 o0 t. J1 \# F% h7 h- 板载0.91'OLED显示屏幕;
0 D1 L- w0 J% \  T7 x7 r( ]4 q- 板载8MB SPI Flash,可用于固件升级;
- r& {  g, \2 z6 g9 B- 板载CH340 转串口连接,可以使用一根USB线连接至电脑,查看串口日志;* ]5 C6 h5 @* l. B7 _+ {4 l
5 o: E+ N( W' F" [
2. 开发板硬件电路详解
! |" y( t1 u3 Y3 o
4 M# S# a  D& Y) m+ H7 z2.1. 最小系统电路
9 w; ?( [0 e0 s8 ^' c+ D. Z7 W6 X$ B. u7 U, o+ X' \
! L% S& j  F5 E+ g1 }( v) q# A8 K" P- E
最小系统部分由电源电路、时钟电路、Boot电路、复位电路、下载电路组成:
" O7 \, v9 N/ W' N/ }  R 4.png " M5 D7 }7 U$ M$ }& Z
2.2. WIFI电路1 u+ r% b; d4 w% `# m7 M* F3 U

8 ^' b% M1 U# s6 d  p8 K  X

3 r/ L3 G3 \  p0 aWIFI部分包括ESP8266 WIFI模组供电电路、串口通信电路:  r4 S5 f" Q. O/ b9 `8 M8 X
5.png
& n7 g1 k3 w- s3 ^0 Y" W/ q: n+ y) O( b) S/ V1 r, Q
& U7 F8 ^. n; o" C/ D+ A
2.3. E53扩展接口电路
; B; M1 z, ?! i: x+ ^
. l8 ~4 V& \5 V- Q) T

5 o$ H+ R) K" }" fE53扩展接口是由物联网俱乐部定义的标准接口,供外部传感器连接,包括:一个串口、一个SPI接口、一个IIC接口、四个普通GPIO口、一个ADC模拟采集接口,一个DAC模拟输出接口,如图:, A$ J" e, f, X& D
6.png
7 u8 M6 @" q+ T6 b) T) y  B+ I3 C8 J0 s: K. O7 j: a, N# ~' N
2.4. USB转串口电路0 I) C$ M2 C/ t1 {1 @. f' `% o
# K* X9 M1 m& P: u
5 G) D! y; f/ V! Q% B+ {5 M
USB转串口电路将串口信息转换为USB口信号,使得开发板可以直接通过USB线连接至PC,在PC上使用串口助手查看日志:
( s$ t5 ]7 O* u' B 7.png $ Z7 H, Q# K4 e- K5 `$ O. j
2.5. OLED显示屏幕电路2 T  L, Q+ L& M* _

9 T1 a+ F4 Y- o
0 W" W' L) i2 F! E. ^
OLED屏幕部分包括OLED供电部分和通信部分:
2 O. ?0 v& o2 d9 O! h, Y4 V 8.png # C  k/ ~4 }8 @! d, E2 V
. N, {+ e9 o. m& T5 o
2.6. 连接Micor USB线4 U) t0 P  y9 u. {' f1 r' k6 G
9.png
. E: q% ^' N+ @+ r. H: H' S: Y4 C/ _1 G/ r+ x9 Q
2.7. 连接ST-Link下载器' B* N( n3 n: u5 q! W

- f' |6 F% A' K* X: N! q6 G

1 L3 [. ?$ ?' L* G6 h  O开发板3v3---> STlink  3.3V6 r8 e& r' \+ n! S
开发板DIO---> STlink  SWDIO
5 t0 Q+ @: {1 g! Q开发板CLK---> STlink  SWCLK
( r, K$ I9 A' r2 q* Z& K: Q" G开发板GND---> STlink  GND6 W2 ?( {. A# Y& L( [5 Z* {
4 e* {9 `( z- W

8 I3 e4 W# }3 O7 h5 x- A+ T请大家参考下图进行连接,千万不要接反接错,以免烧掉MCU# \8 q3 ]9 S6 K! V7 [" |+ U& M

) ]' p1 e# u& s- t

- Y+ v2 j/ }, b- {% b 10.png
0 F4 _) P7 D0 s  ^2 `, }( H. k' h' d

( }" B( K! |% a7 c

# N. L0 n& v' Q  a6 P0 R% H3. 开发板软件环境准备
# i! m: j' z1 K* a# L6 z
( J8 k* ^* |" l3.1 MDK软件介绍& i6 ^* `6 F2 R
% Q, |0 Z7 P& T3 |" M% b
MDK 即RealView MDK 或MDK-ARM(Microcontroller Development kit),是 ARM 公司收购Keil公司以后,基于uVision界面推出的针对ARM7、ARM9、Cortex-M0、Cortex-M1、Cortex-M2、Cortex-M3、Cortex-R4等ARM处理器的嵌入式软件开发工具。MDK-ARM 集成了业内最领先的技术,包括 uVision4 集成开发环境与 RealView 编译器RVCT。支持 ARM7、ARM9 和最新的Cortex-M3/M1/M0 核处理器,自动配置启动代码,集成 Flash 烧写模块,强大的 Simulation 设备模拟,性能分析等功能,与 ARM 之前的工具包 ADS 等相比,RealView 编译器的最新版本可将性能改善超过 20%。2 p. ^/ t0 N3 p4 w) j3 w
4 \& U% B! L* l1 |8 p
Keil公司开发的ARM开发工具MDK,是用来开发基于ARM核的系列微控制器的嵌入式应用程序。它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。MDK包含了工业标准的Keil C编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照计划完成项目。/ h7 c9 |& G# M/ |: j( P

: Z, v  Q" I' h$ ?' T3.2 MDK安装" X: q! `5 K0 _0 e; n! r8 s/ O

8 h' [, m* I$ ]" T9 H

0 X: o. H$ W: m" y* M4 C5 Y1 F- E+ ~( n1 @4 S1 C/ q9 \# @
登录MDK官网,下载MDK5软件,下载地址:% s- h3 F8 N5 f# z* s, I  ~6 [, \

) }$ b" W, X7 i9 l  e9 n; Q1 y

" O, m2 E  u4 |' {! C# z/ p8 h" hhttp://www2.keil.com/mdk5  
# R2 y4 V8 r  _9 t- _* y% K
. _! F$ h0 i( B$ ~

' }5 \6 [# R/ P2 L4 a& j或者 https://www.keil.com/download/product/
( x# o+ V+ v# }8 q4 D! A6 o: ^! \" j+ d2 M0 R
下载的版本最好在5.24以上,本开发教程以5.24版本为例,双击MDK524应用程序文件,点击next>>。8 R9 F; j0 n* |1 {7 g+ k3 S' [. N
11.png * C+ e; f9 x7 b8 q4 E
打上 I agree前面的勾勾,即是同意一些安装协议。点击next>>。
/ d, G* G0 u$ F) R 12.png : d0 Z: f0 ]/ g% \
选择安装路径,可以默认也可以安装在我们自己建立的文件夹下。点击next>>。
+ t, K" F0 d5 c$ `' | 13.png
( p' X( k4 c1 P  ]$ A
8 `% ]1 T+ Y" F7 i7 F  ^+ |这里填写的是我们的一些信息,填写完整后,继续next>>。, Q! B, T, ]7 k4 L, s; U! R. i
14.png ; K7 v6 b6 F. O- s

0 @8 T4 @6 u3 T然后等待安装完成即可。
7 d. |4 B! L& l5 l; N  }7 ~ 15.png
* y3 @9 I) b0 i9 c' w( X! f) ^. T; J) N7 ]3 m# ?
安装完成,点击Finish。
: v+ {2 m. q' x* Z* y  a7 D( o, w 16.png : o4 i& z! E- C; F) K! Y! k3 V
# Z7 r7 Y4 T; Z  \
然后会跳出来这个界面,这个我们后面再讲,先点OK,把弹框都叉掉。
2 f( c) I$ K2 }- X0 t; `( D0 t 17.png
* U) l& m% }! ~- ], x# u3 L! ], \& P6 e- d# C1 a0 h
激活MDK,导入License,激活MDK后便可使用了。( G- V7 x/ x, w- P" a, r! t6 b) b6 m
18.png
! c0 Y7 O1 |6 e5 j: K. D/ K$ z* a6 p* y$ ^4 l' V+ G
; r9 g+ a7 a& G( m
特别提示:一定要输入License激活MDK软件,建议购买正版License。
- r9 m; w' Y  n1 x/ n2 E( q7 C$ f9 J7 y0 u0 n4 x# O& k
3.3 PACK安装
7 Y9 c5 e4 C2 B8 F4 z$ Z; w9 s/ }0 U: U- B

0 p: _4 |4 Z- u; V9 ?2 O安装完MDK后,我们需要安装开发套件中单片机型号对应的Pack。
# K! i' l  L2 ?) M6 c: x( D: }  v0 O1 N& G
9 S! L/ v/ P  i0 A
安装方式一  
1 ^* G6 y+ E/ H, s" Q7 Y- N7 Z8 d, D4 \/ N
3 ^2 F. Z* }; g1 [$ X
登录官网:http://www.keil.com/dd2/pack/ 6 ?# |6 G3 y& i( |& n! B/ H, t4 P

6 p2 ?5 {; t: C8 {! ?- q
9 ?. s- J6 r+ W! E% G# ^
下载Keil.STM32G0xx_DFP.x.x.x.pack 后安装。
  y" w+ `* ]: T) @5 o/ e0 \% _9 j# l6 s2 v
安装方式二  MDK软件上在线安装. i0 E* V/ d) P( V! R
5 ]7 Z& _$ I1 n" l
打开软件,在导航栏打开Pack安装界面,然后选择ok选项。& q$ g+ q  e9 {% a; k
19.png 1 v2 Q" h% r# U
20.png
& P9 J! ]! Z" n! I
* R1 v  z8 p1 K+ }8 E# n4 T9 O进入在线安装界面,选着STM32G0XX Pack,点击Install进行安装。
$ u5 N/ q5 T# y 21.png
% `$ T  ~7 O7 o0 n: x$ E7 c3 a4 v至此,我们开发板的单片机程序开发环境已经搭建完毕,重启MDK软件就可以使用了。: A& X  \" i  T5 H
  `# k2 @) U8 n  N& `
3.4 ST-Link驱动安装
. _1 M, o5 }3 m* e+ U: P& f* T' e' f% L5 x
- P# p' ~% b8 E  ~- |5 l2 o! D
前面讲了开发板单片机程序的开发环境的搭建,但是为了将程序烧录到开发板中我们还需要使用仿真器。我们这套开发板选用ST公司的ST-Link V2仿真器进行开发板程序的烧写和仿真,下面介绍ST-Link驱动的安装及环境搭建。
* k' K5 g+ a0 d" v" H3 ]5 V! C
- v0 q2 T3 w. u8 x0 w

- y  w7 \8 C0 Q* D$ F+ w: e! f- c) g在ST官网下载ST-Link驱动,0 b$ c7 x/ r2 C% g/ t0 V& j
  U% x) O8 G; E8 L$ F
/ f6 F/ s6 g4 b' k! U$ @
https://www.st.com/content/st_com/zh/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-utilities/stsw-link009.html
2 F# k% h" r) G2 d5 z: s2 P, p! k8 R- H
(驱动有2种:32位电脑系统安装“dpinst_x86”、64位电脑系统安装“dpinst_amd64”)。 3 a5 c8 W1 ?9 w  p0 c) e. ^
/ b6 b% _; X& n/ T
运行对应的驱动,安装ST-Link V2驱动程序。安装路径尽量保持默认路径。, N: J% ~; N8 F3 I- y
22.png
安装完成后, 将ST-Link通过USB接口连入电脑。打开“设备管理器”。若看到如下图所示,表示驱动安装成功。- E7 P6 Z8 v) J
23.png ' y' u' c8 W4 j* W/ ^
这里提醒 2 点:
2 h+ X" d) K4 X
# X: Z$ U. E! `( g3 d0 k! P

% {" G# z5 F4 k' Y7 {, x1, 各种 windows 版本设备名称和所在设备管理器栏目可能不一样,例如 WIN10 插上STLINK 后显示的是 STM32 STLINK。& `. V7 t. w0 W

2 j- `+ ^- L" w; R3 s
& h. x6 W/ ~7 r6 u# p
2, 如果设备名称旁边显示的是黄色的叹号,请直接点击设备名称,然后在弹出的界面点击更新设备驱动+ x! c9 J! i+ G( W* i4 C# a

# y$ U  J1 C/ I* l0 c
1 l1 {' `' I( Q5 E& o" R
至此, ST-Link 驱动已经安装完成。接下来大家只需要在 MDK工程里面配置一下 ST-Link即可。; u  _% N  g' a0 a* f4 v0 l
$ h7 R3 ]) m3 A9 p$ B9 j2 b
( X! _. ^1 j, o: L# Q0 q  {

' F8 V6 `7 D) Q
3 f) k- B5 J* e( v

& H6 k/ l! Y0 P
; h  I4 J2 U  t9 ^
3.5  CH340串口驱动安装9 ?. K7 i7 z$ X- D, t

1 Y8 h$ K6 @2 ]! \, ^+ _7 v% Z% R
, `3 N0 }; ]7 ]# ]6 _
5 v) `) H3 H2 y- f3 a; P8 p

* X* ~1 c1 |, k( N" n. |
4 S* g2 S% Z, l, L

2 C) t9 d4 l" [! n3 y互联网搜索下载CH340 串口芯片的驱动5 |0 f+ }/ W  Q* {; E7 y0 _/ F

0 h& j; O2 B* u# x$ p7 w
3 K) D7 x+ u" }8 C3 Y) ^+ H
安装方法:打开驱动安装程序点击安装即可。( i2 H3 H$ y! A2 A2 g
24.png
1 A( F+ b  r) u6 V
4 r& E* u" G1 T* Z+ J
$ C' |6 m1 h2 x
注:若安装失败,请先点击卸载,后点击安装。7 Y6 H9 v" [* x" K

) T  \/ f9 [4 Q. n  ~! B  _0 K3 |3.6 串口调试助手的安装与使用; b- C/ Q1 n2 E

5 e3 y/ [( \# l0 D" V4 E$ N' p
7 K+ x1 ^3 w7 e
2 d2 S) Y9 W: }: M6 K0 T: t
工具下载:
$ }- q9 X" S4 s# M6 j4 U" E' Y+ o) }& }+ i5 ]! F- v
+ M7 J' p4 E0 s% D
http://www.daxia.com/download/sscom.rar
- Q4 K0 ~7 P1 Q( ~6 g, p* Z$ \8 y' A8 r3 N0 C7 H, v
安装方法:串口调试助手sscom5.13.1是免安装的,解压出压缩包即可直接使用。
- G! ~+ [" F2 L1 }% N0 L0 ^ 25.png
' s1 M3 {: u/ k  j2 y. f8 a" y根据PC和终端之间的连接,选择正确的串行端口。
9 o3 r% @" Z9 |9 U4 Q* z+ l: O' g) }" D% h6 o2 b4 W
/ g, d  D6 x  o2 }
打开电脑的设备管理器,在端口列表可以看到PC与开发板连接的端口号。# t6 P1 ?) G$ `; q9 {/ P5 C
26.png 2 a2 {& |$ R0 j9 V0 V( ~( _; X
我这里显示的是COM26,所以要在sscom工具中选择COM26,开发板程序波特率设置为115200,所以我在sscom串口工具中选择115200波特率。9 s, p: N: P* M) s' U

. s5 D. B+ K, o
三、烧写腾讯云IoT定制固件
# G' [) h$ j8 B% h5 g
3 T1 S5 T5 F# C1 [% y" J
1. 下载固件
  d% E  g# V7 R
4 I7 }1 ]- M( e2 H- O

: a7 _7 t3 P: `/ K腾讯云IoT AT指令是一套针对使用通讯模组(2G/4G/NB/WIFI)接入腾讯云物联平台的定制AT指令集,如果通讯模组实现了该指令集,则设备接入和通讯更为简单,所需代码量更少。ESP8266作为IoT领域使用最广泛的一款WiFi芯片/模组,腾讯云在其通用AT指令基础上,增加了腾讯云IoT AT指令集,形成一个定制的模组固件QCloud_IoT_AT_ESP8266。
/ j- e* m2 L+ K8 \1 X" N- N, {4 k) j9 A, J

% V; R, Z3 h! |: n0 I0 F( n$ g: w: h0 z  v, K- F6 L  S, d
下载链接:https://github.com/tencentyun/qcloud-iot-esp-wifi
% p" ~" l8 ]& |/ e4 Q) t2 u
0 X1 b) ~; n3 |* B' t
- I& Y2 ^3 _. A& O5 i
使用git下载的命令如下:
  b& Z$ V% D. K$ N; J9 ~# _, f) L3 Q2 D
* D% O3 x( `. X1 V! X5 d8 k2 r/ C
git clone https://github.com/tencentyun/qcloud-iot-esp-wifi.git6 J* k3 A" N) l% |1 m) k
: E3 {$ |. C) t* m" t; s
" Z0 n, l% S6 S3 L5 `9 l
下载之后即可在图中圈出的文件夹中看到定制固件:& x. }0 P% R2 T" j8 g7 j+ b# `
27.png 6 w  ~% A* E. ^% m
2. 下载烧写工具* R! q! b  z* Y

6 k1 G7 D' {$ Q

* W4 f( T! S5 n! [. r$ Y使用乐鑫官方下载工具ESPFlashDownloadTool,下载链接如下:, K/ d" R8 K9 l8 D( h8 @# s

, V6 Z- Y0 V" V% I* T
4 _( C9 D2 [4 @3 w5 |
https://www.espressif.com/zh-hans/support/download/other-tools4 V# X8 d. s5 R- w

- H) z, c4 S" U' t+ E- C5 ?- x9 b8 ^3 G7 q! u

( x7 d+ O6 V+ U3 I2 n* {8 ]# `+ Y+ P点击下载Flash 下载工具(ESP8266 & ESP32 & ESP32-S2):
1 F: P; M) O$ G0 C7 B 28.png
: H0 s1 x% z) a. ^0 m2 K8 i下载之后解压即可。
8 y3 _# b3 u8 v( V9 ]+ P, A" D* b
" R5 V: q+ J( `/ t: S3. 固件说明. |- c2 q# m: d- T, C: y4 U' n

7 Z; P2 ]% D( ~# G# ^% Q& F
3 J/ \7 ~- j1 [8 R
腾讯云IoT定制的AT模组固件适用于所有FLASH大小为2MB或者2MB以上的ESP8266模组。' Z3 O$ ~+ l& g: }8 D; ~
# `! m. ~. ]# F# m, `  h$ H0 E% L
8 A8 @: e) v' y9 G! n/ v- |
AT串口使用UART0,默认的Tx为GPIO1,Rx为GPIO3。但因为ESP8266的UART0 默认会在上电启动期间输出一些打印,如果打印信息影响设备功能,可在上电期间将 U0TXD(GPIO1)、U0RXD(GPIO3) 分别与 U0RTS (GPIO15),U0CTS(GPIO13)进行交换,以屏蔽打印。因此提供两个版本的固件:
$ U0 F' Z( Y7 P; B4 n" N
; w! }8 `0 j3 z5 v. {: S

0 D( u6 V: Z* p; N$ n' u4 u9 l- 名称包含UART_1_3的固件串口使用的Tx为GPIO1,Rx为GPIO3。
  `/ d# h5 P* d6 `
6 ?6 N, Q8 Q) K+ B) }

; j/ i. d6 h$ d  w: r' G4 X1 p- 名称包含UART_15_13的固件串口使用的Tx为GPIO15,Rx为GPIO13。
" @, o) j4 j, u6 c0 Y% O7 N
1 E5 v, g" j8 }! _, T2 E1 Y
! F( I( U& D. a9 \
, q" o1 P& P: t: E" u
进入QCloud_IoT_AT_ESP8266_FW,本文中我们使用第一个固件:
! Q" z  [6 q% a/ h! R8 S; V 29.png
$ t; K0 G1 D8 l8 ~4. 烧写固件4 {$ ]6 Z/ z3 y

) _$ \" a& Y4 m5 W4 @2 d  h. N0 h
. t% M* [7 U$ r- J/ l
4.1. 切换boot选择端子和串口选择端子
+ Q" [$ G  D6 f7 E* T6 R5 n# U: Z
5 `; i! {# B0 G* `2 j  i2 ~

5 M- R  b3 q( Z) Q; G# M, v- L* O① 将开发板上的ESP8266启动引脚配置端子切换到低电平;' y* L8 n$ R1 C4 Z4 i& _1 `
. J8 N6 l2 j- |8 H) R* C
+ u! J0 ]. {* z
② 将开发板上的串口选择端子置于中间,使ESP8266直接与PC串口连接:* k9 c3 s( b$ d! o

5 y( N8 M. ^/ k9 F# Y! u* @  U

! p% B5 n3 _6 ?2 q方法参考下图:! e6 A. u$ b( D5 a3 }- j* ?
30.png
+ \' g/ H% N- h, J1 ?0 G
1 W# p- `0 f1 M9 N  R2 M" C& u
8 ?" z0 B2 _" W9 l! p+ o# c& k

* E. q- W. w0 N8 ?

  o& y' t, D; g# A$ I) S- _4.2. 运行Flash烧写工具  g2 J. K. n! V- M, I

2 m- Z6 Z. L6 w, W. e- i% u& @+ F

' s; S$ c! s. Z! x, Z, d$ Q% [+ {双击工具,运行:$ y& T& V+ y! C9 `- P1 _
31.png 8 p8 {2 W0 E+ B: d+ C6 ?
+ c5 }9 G& C: o4 \; f

: e/ F7 ]! e" P- @4 I# J1 [# ?( }# r4 T1 u0 h" W1 A. v

' t9 F! w  p' \- O选择开发者模式:* O  C) [4 s5 j/ K! s
, m0 S  D& C; X6 ~% ^1 S, v
0 e4 X( a1 e! g; |
32.png
( n' V! @# C) L. ^. L, K0 s6 W; E4 d4 k7 R6 {7 B7 k" _1 ~
( l7 \  b+ c" a( K0 L

. _' a0 h% d+ ?5 u2 L3 |4.3. 开始下载
+ }" s0 M& w: W9 w4 S  l; s! V  Z' L* O9 o: O8 Y

" p! j* X: o# j% F  i5 B+ Q按照图中进行操作:, \# l) s9 ?- B( Y0 z4 |
33.png # x: u/ E5 j$ e6 m  R: q) Q' q: U
6 P7 u. A8 K% _$ ?+ y( A

% v; I  G$ {! [
, r8 Z" n/ [  E0 W" \7 O" a# f
9 G7 L8 i4 n. Q7 ^6 H
点击下载之后,按下开发板上的复位键,Flash下载工具开始下载:  R$ O- O( E" f: G- _, f# S" L

/ H2 \1 c6 l% X! _+ E- Z( |  n& u

$ D  l5 w1 w+ [$ X: r4 F$ { 34.png
3 d. n5 a7 J8 `; y9 K" [- F- S0 z) h3 V/ d" ?

  {3 ~8 B6 r! t; Y! X+ @若没有显示,请检查接线端子是否连接正确。1 A9 L1 U$ t( I4 N! h& L$ M* U

, Z- E8 ?4 I, R9 Q& n9 a

. }7 u. d/ V6 l' U+ E4.4. 下载完成- k; @6 E5 c* @
* H- t4 q  M; `9 c8 e+ d! C3 y
3 n6 ?2 V! F% b* J  v/ F" h3 z
下载完成之后如图:, ?7 b( _% V4 d0 n
35.png % B- M! o/ }9 O" O  g: s7 z

6 ?: M. _, c" G1 W( J' s' |+ h% M/ |6 l

5 J7 G& h* [" M7 H" J1 r
% ^$ q) ~/ O. D

% R( _2 V" }# Y% {  N- ~关闭工具,将boot选择引脚拔下,将串口选择端子恢复默认。
$ Z. t9 [4 F' W7 Y. m
& g) V; ~( ]5 x; U; [3 W

* X* q) j7 _& B/ n  y注意:完成固件下载后,一定切记将跳线端子恢复到默认状态,默认端子怎么短接可以参考前面完整的组装成品图,否则wifi将没法工作,MCU也没法控制wifi。) l! n" r$ {' u+ v

0 S8 ]9 t1 [4 Y% B; k6 @' D
) @* p* r/ s2 A
四、基于TencentOS Tiny接入腾讯云IoT Explorer

# K" Q4 K# v7 [  E5 J: Y

5 I  I6 \4 A2 j* B/ t: E4 p( g3 Z7 S; t* \' P- ?0 E
# r* e5 E' p! p9 R
基于TencentOS Tiny EVB G0要完成腾讯云IoT Explorer对接,需要完成两个部分的工作。
0 e; N/ j/ [$ H* S, k" A" Y# x0 L) k9 I
" `, B2 Y0 x6 a. P1 M
一是:腾讯云IoT explorer 上完成项目、产品、设备创建、参数配置
$ b  I; `5 u8 ~+ N# n
, ?: r. D; N. ^, f4 ?

# X: K1 }* }- t二是:基于TencentOS Tiny完成应用开发,向腾讯云上报业务数据。
; _8 h) S+ }7 ^: T& y9 N3 \; x7 a" b) ?6 G* H( f! R7 z

) l( w6 S5 u+ |

/ Q/ i* e( Y# f1. 云端操作步骤2 G+ w" {$ o: o" K# U2 U
3 f9 O* w% @1 U3 k: W2 O
1.1. 新建项目
& S/ V; Z2 E/ S- T) h* @9 s( C0 _3 B' D0 K
, W2 P8 O+ q: t
登录腾讯云物联网开发平台1 I+ J' M0 d0 d3 F4 r" t$ a- G
# T/ T& N0 g, d; J

6 a1 i; O! a3 y" B  u6 p3 c4 Bhttps://cloud.tencent.com/product/iotexplorer$ n1 m* F4 m0 j2 U- h$ _/ j

: f' R! Z( \4 g

$ ?% |; T* G" l5 \: E点击新建项目,填写项目名称和简介:$ j0 q  c# d; e8 Y
36.png % z5 c- k% q2 R8 |
8 g% Z( L% d, b9 i' B# b  N! H% u
1.2. 新建产品4 |/ Q0 `6 A2 j* Y3 x- N! z( s( \
# a7 a! I/ |2 j

; v# D* s. M2 x4 a6 g点击项目名称进入到该项目中,点击新建产品:
5 z5 l6 N0 V( d. t7 ~" E 37.png
: N# r. g- x9 I7 D产品新建成功后,可在产品列表页查看到:
, l- k! `! F% W, |* L' A 38.png
' E: r+ |; |3 Y4 T7 Y( p/ l; ~; i7 Q/ _

7 S8 |8 b" l5 \3 f$ Z4 @1.3. 数据模板
0 l: v5 N0 E* |! s
) Y% S5 ~$ h0 G0 Y: O) c
$ v( Q( F# `/ M' J/ P! j6 D
进入产品,点击【数据模板】,点击【导入JSON】,导入下面的JSON代码:
8 b0 v4 [- }( O: z, r3 g! H

  1. 6 C* L6 C. M- ~' z
  2. {6 R6 Y8 M1 _9 Y$ l. S4 }
  3.   "version": "1.0",
    - Y4 M- K" V; p7 k/ v1 R( w
  4.   "profile": {
    - k0 j0 g1 y5 F: Q$ b( {6 @2 k  z
  5.     "ProductId": "BDDSF87WEA",
    3 `+ s/ h+ }, H* z
  6.     "CategoryId": "1"
    # @% d* \5 q1 f, ~: s0 F$ \
  7.   },
    & F) x% ~4 u8 x
  8.   "properties": [
    % `  u  t& t; m& ]
  9.     {
    ! l3 i2 d: k6 E4 Y7 Z
  10.       "id": "ch20_ppm_value",
    & h% c9 @4 u: ~5 Z% a
  11.       "name": "甲醛浓度值",$ w/ _$ n0 z7 [: O; W1 g
  12.       "desc": "",
    / ?$ f2 i) H6 ~( y, h/ @& H* u$ }
  13.       "mode": "r",
    ) m# Q% I3 a- k4 J! T- U# c+ U
  14.       "define": {
    0 @, G7 Y- A8 {0 q
  15.         "type": "float",
    % @, u  `, P8 W+ P2 k8 B
  16.         "min": "0",
    8 i- a* Y% c  y  p2 z: \1 {2 D- k8 X
  17.         "max": "2",2 k; f- u/ A6 W* ]9 L$ g" {% `
  18.         "start": "0",
    * p' c' `0 L& H! Y7 a) v9 J* L$ ~
  19.         "step": "0.001",
    ! p% e* Q2 D. E) Y- J3 {9 u: Z  V
  20.         "unit": "ppm(mg/m3)"4 R: Y2 S" h# d2 l- q  ~( o; Q
  21.       },2 u" @& _8 p! W3 m( e
  22.       "required": false6 T" |; y. `4 r
  23.     }
    # @, o( k: w' Z) P, I; r' r
  24.   ],8 [3 l2 T$ @4 @& `  V8 [
  25.   "events": [],5 E3 M# {8 p' f# \& n/ I
  26.   "actions": []
    $ K; \8 I. O) z  q+ e! O7 k; R
  27. }
复制代码
导入之后自动根据json文件创建的属性如下:- _& }2 K$ W9 a: z) K. N3 O# y- D
39.png . |. [9 a2 d9 A
- i4 z1 k8 e- e  _, v
5 I& o" R+ B  U1 I1 g& f
1.4. 创建设备
" R1 Z/ e) g( H- x2 U) P3 @$ ^: W- |/ l$ x. W  l* F

- v. Q2 Y% Q1 J! g3 p点击【设备调试】,进入后点击【新建设备】,创建真实设备:9 A" u3 T4 h. z" p* x/ f
40.png * |+ A! ?+ [9 j9 p, e( l

$ ^$ B0 a# ]' B, ^

( [9 q' V, p% L2 c/ }* ~创建成功之后进入设备,查看到产品ID、设备名称、设备秘钥:
. k9 M& V9 M! Z8 N 41.png - f* b* w7 }/ @" q

/ B4 T. q9 J8 E5 v( B1 Z) k) D
6 a, b- S' @) ~+ S5 ~
2. 基于TencentOS Tiny 完成设备侧应用开发' [0 C+ W) A# \6 l% r  e

5 _/ z( v- W& Y  O

& J0 o" h7 p! y进入 : z$ w" i  s: K2 c) `
! g; n& E& d- ?' ^& s! C

' J4 p# o4 m: A3 S2 f<TencentOS-tiny\board\TencentOS_tiny_EVB_G0\KEIL\mqtt_iot_explorer_tc_ch20_oled> 目录,打开TencentOS_tiny.uvprojx工程。
; F, p; R9 a; r, g& T: K. K9 ~9 `& Q8 r& ^
2.1. 修改WIFI接入信息
* L! q% T9 Z% v/ X: M
1 {& i6 R: \( u

1 c, J6 Y& _" r0 m1 l3 ]) h打开mqtt_iot_explorer_tc_ch20_oled.c文件编辑,修改要接入WIFI的名称和密码(建议使用手机热点,不要有特殊字符):) b2 {0 \' p% }! p' O5 L/ W+ q# P
42.png
, M0 F% [7 }' H8 U. @/ f1 p0 B, j2 c$ j# \" d

) f9 {7 E3 z- {. m7 w3 ?+ f8 R) \2.2. 修改云端对接信息
5 k: D0 u; l/ A, g/ r5 L- H0 }1 n3 n3 f7 Z( Q' l7 Y
- P. O0 k- Q- m* K. b( u0 |" Q
同样在此文件宏,修改云端配置信息,使用之前在云端查看的信息替换:
( I. |/ y" [( I# Q0 M7 B% { 43.png
1 L$ y3 }/ }  K) p- K( b$ t. c2.3. 编译工程
, ?1 H& D, J9 N  h) ?
- e0 V* `6 U" p  V9 R7 X
$ e) D7 W5 C5 \( Q+ G6 n/ I! |+ X
点击编译按钮,编译整个工程:
/ P9 w# X  o7 _ 44.png
& x0 Y' Y0 d! w/ V7 h. T2.4. 下载程序
1 n- s1 r. i0 C  [8 m' O! E  Z/ H( c% a2 `! ^, O( T! j" ^: L
8 y/ X! B: ~& Z$ b
点击进入工程配置界面按纽,进入工程配置界面:
/ @: u: g) q, h; F 45.png
1 O/ @7 w% z. u: ~选择Debug选项,进入仿真器设置界面。
& n* ?$ [( [1 K- Z6 O& M 46.png
+ u$ n# Y6 z7 x2 p8 q+ I( l" |! B下拉仿真器选择列表,选着ST-Link Debugger并勾选右侧Use,点击Settings进入ST-Link V2仿真器配置界面。7 v2 V, I, ~: D& Y  u" k& y
47.png
) H+ j- [8 V9 F1 E* O& u( g# q开发板设计的程序烧录方式为SW,此处Unit选择ST-Link/V2,且Port选择SW,并确认右侧框内是否检测出SW设备,点击<确认>保存配置。8 p4 T- C* \2 ]+ Y, J! i
48.png
# D0 y& D' n1 q点击确定之后,回到主界面,点击下载按钮:1 I' v6 y. z' ^
49.png $ b6 [5 Q1 |3 t0 C; ]0 U" h+ b
2.5. 使用串口助手查看日志0 N/ a+ s* A3 m' K- W. ~3 q
8 o) W; g9 {5 h9 @+ V9 p2 {

6 Y( t  g' B* j  k2 C6 q! J运行sscom软件,打开电脑上开发板对应的串口,比如我选择COM26,点击【打开串口】:
" w! f5 n' L3 v; s* P" B- K 50.png
' g, H/ @1 m  X  P8 [# N' X# F按下开发板上的复位键,程序开始运行,即可在串口助手中看到系统运行打印的日志:( s, ]- a0 g4 C2 k) k
51.png
2 a) G1 e7 P  s& S* p3. 云端平台查看设备数据
& L# X2 w( W. y$ D7 N4 j: \1 L5 i' U0 d, A
1 {3 k( }% C2 x7 Y) y
回到腾讯云物联网开发平台,可以看到设备状态变为【在线】:
: x2 h' V1 h8 I2 }* R 52.png
4 f0 c; w+ L4 M9 I% S, r1 I/ z点击【设备日志】一栏,可以看到设备上报的甲醛浓度值:. E/ y5 U7 o2 Q0 I3 }
53.png
$ `9 r9 B: f3 e) x& H3 J: @4 ]点击【设备属性】一栏,点击【甲醛浓度值】后的【查看】,即可看到甲醛浓度值的历史数据曲线图:0 W# t1 F) @7 w6 t% L! l
54.png
# Q( K9 U' B- @5 S! }! Z& c5 \) j9 x
/ i8 _4 Q8 `, A1 H# P/ f. y
五、腾讯连连小程序操作步骤
' a; ]; k, d9 A6 h% P0 Q# {( ]
1. 添加家庭8 o( h! p2 |- L# F2 S

9 o- i. }% i7 x4 ~: f; E3 n  n
8 J3 R: c8 i2 C. O( Z
手机端在【微信】搜索【腾讯连连】小程序,首次使用需要进入后点击【我的】->【家庭管理】,添加一个你喜欢的名称即可。% C" U" Y% C0 _7 r2 I5 R. s+ y

% ^/ D1 T; _% v6 g7 c2. 添加调试设备
% I' B0 C, O7 m8 W, M
( Y0 D" Z! Q1 J6 f
* b+ B0 X. J6 f' z
返回【首页】,点击右上角“加号”图标:; f$ C  d8 r8 a, |% v3 M& e; @. z) ?
55.png # W2 N" q* F& D/ k
8 u% L, v6 y* [. j+ V5 q
. j# w! ~1 u/ I+ i9 H  C
进入后点击右上角扫码图标:  a& M( B8 q6 e- X+ n
56.png
0 p/ R/ ^  C" K, U0 ?  G  p% x) S$ n7 d: H
$ l" X* r" u# J) t4 u
在腾讯云物联网开发平台进入【设备调试】,点击对应设备后的【二维码】:
* Y5 k- Q2 X, W- V2 L( F( Z 57.png
  }; ?2 t# j+ V$ G6 g腾讯连连扫描此二维码即可成功添加设备,添加成功之后如图:
7 H( K8 U& [3 u+ S! c2 l# E: ] 58.png
# \0 M9 Z8 k7 ~% ~' Q点击此设备即可实时查看数据,并下发控制指令:; |' J* Z% P8 z
59.png
( d! k' J* @' K$ o4 S3. 修改腾讯连连显示面板& b% C0 c3 I0 [
1 N% B9 J, E( A' P$ m

1 t; H# C2 F8 b# ~, m8 b进入【交互开发】,点击【面板配置】一栏:
7 M' y; K; L1 l8 g8 i" w) }# l( i 60.png $ V+ U- p- x2 a* z, F8 y. ?

5 i: c$ R. O/ ?: h" k; R2 e: N: p) R

$ [8 o1 r; Z9 r9 |" o% V* [3 F在此页面中可以自己根据喜好配置小程序显示面板,如图:
) b" j1 m6 L' G9 @. x/ W4 _
' o8 g# K" I( X& L9 c
5 h& {4 Z, K2 ]6 Y2 Q# R
61.png : r  v6 D6 B0 M2 l
保存之后,在腾讯连连小程序删除设备,重新扫描绑定设备即可生效。
+ l# ~' z: Z- E/ w3 |& _6 T; y' x8 \, k% a* O  {4 x# _/ c/ \4 _
1 }4 L" d/ g9 _* p! H3 `- M+ j( @
六、腾讯连连公众号设备告警操作步骤

' i6 A  J# a* @

6 G) D) i7 [& U; m
7 h) [* n; B6 S" z' y
  o: g6 ?, }+ f* p* r
1. 创建数据流/ v& v, N1 c2 z9 p8 r. m
7 @' G6 p1 q! r* f9 f& P4 `! d
1 T( X: Q& k2 l5 H0 R' W$ v6 _
点击左侧【数据开发】一栏,点击【新建数据流】:
( \* }% ^- s: J 62.png & f! b3 u' U3 H3 a0 b
) ~2 s( B, r2 F9 R
2. 设计数据流
+ X; x+ i. D6 t9 l* k2 M- \/ P8 Y/ m7 ~: Z# Q$ g( {9 X
7 u3 t/ k9 \& K
添加并设置【设备数据】节点:( \1 l2 ]0 U: y/ ?& i
63.png ; Z% Q! N" U  o; Z
添加并设置【过滤节点】:
0 _, ^0 G8 m$ B: ]  b2 I' o 64.png " Q, o% O8 s) M: C: `- c9 \
添加并设置【推送节点】:
/ Z' {3 G' G- w$ u! c  b: F/ L* |' W 65.png 9 Q. E- D% i& m' J

, j* ~, H) v+ R

2 r+ [0 m0 V3 B* ?" R7 Y( ?3. 启动数据流6 R  I7 c- b% D

" g. I/ N0 p  k* ?
, Y0 v/ e$ F9 Y8 J
设计完成后,点击【保存按钮】,再点击【启用】:5 U: {- r" B( ]! a3 v1 ]+ H! M
66.png
$ I8 u# J& x" {& W2 E" Q4. 关注腾讯连连公众号$ M% D: K" F. G  P$ v5 R3 L
1 A8 `3 [! J$ w% Q$ X# [0 Q
8 o4 w0 I6 S7 n0 o
在微信关注【腾讯连连】公众号:
; E& I; W/ ~# I# Y0 s2 A$ ~: l( x9 ^' c7 J6 `
关注后,如果有任何告警消息,即可在公众号接收到。5 O  q' J, c* e3 K9 K9 P

& c& q, [' n6 L  p3 t0 }>如果仅仅为了测试告警功能,可以先将告警值设较小的值,比如设为0.070,测试完成之后再恢复国家规定标准0.80。3 O8 |9 d4 Z! ~' D

+ n3 W' E" \( Q* j& Q  O6 ?
/ m8 z4 s. N1 E0 m: I$ a

8 f# W# e1 D6 G! ]6 ?至此,基于TencentOS Tiny的智能甲醛监测仪制作完成。4 G1 [% `( g8 x- E
7 `4 I6 P1 q/ k( z
收藏 评论6 发布时间:2020-11-26 09:24

举报

6个回答
小小超 回答时间:2020-11-26 10:29:55
文章太长了,,安装软件的什么就省略了吧。
STM1024 回答时间:2020-11-26 13:41:31
这个板子是哪来的啊?
一代睡神的崛起 回答时间:2020-11-26 16:16:18
TecentOs是不是很牛逼啊,和日天比起来呢?
STMCU-管管 回答时间:2020-11-27 09:32:23
ts2000 发表于 2020-11-26 10:29) U  T- S0 ?5 {( z- J, B' s
文章太长了,,安装软件的什么就省略了吧。
+ Q( Q' f+ }! T" M; `, m
确实有点长
STMCU-管管 回答时间:2020-11-27 09:32:47
一代睡神的崛起 发表于 2020-11-26 16:16
1 N( |( H# [6 B2 _) M) B9 dTecentOs是不是很牛逼啊,和日天比起来呢?
: ^7 e6 V3 T8 o/ V5 @
你不是搞过么
一代睡神的崛起 回答时间:2020-11-27 13:59:42
STMCU 发表于 2020-11-27 09:321 F$ U5 u& J; l; X& s
你不是搞过么
: ^$ _* q" N8 a* d
我感觉没赵日天牛逼

所属标签

相似分享

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版