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

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

[复制链接]
STMCU-管管 发布时间:2020-11-26 09:24
一、基于TencentOS Tiny的智能甲醛监测仪
6 q$ f; i! x9 J- A' {! i" H+ {  A) W5 i, x9 R2 y+ z5 Z
2 h, n( y, m: _% l8 ]' O

$ S- t9 b! w/ c; W' `* Q9 w

( B/ Z: [5 F1 C  ?3 i4 n1 L甲醛是室内一项非常重要的指标,对眼、鼻、喉的黏膜有强烈的刺激作用,最普遍的症状就是眼睛受刺激和头痛,严重的可引起过敏性皮炎和哮喘。由于新房装修场景对甲醛监测的需求越来越多,拥有一台准确、性价比高、稳定的智能甲醛监测仪能给大家的健康生活带来一份便利,今天小编就来教大家如何基于STM32G0开发板+ESP8266 WiFi + TencentOS Tiny物联网操作系统,来自制一个智能甲醛监测仪。
' J. o9 M. p/ M3 o( ^
2 G/ J! p4 V) {# [# ^( n本项目制作的甲醛监测仪可以实时的检测室内甲醛浓度,在OLED屏幕上显示具体数值,同时还可以将数据实时上报到腾讯云物联网开发平台IoT Explorer,用户可以在“腾讯连连”小程序实时查看数据,并通过公众号及时接收告警信息。. [8 N, W- G  \+ t+ j# B

) l; D  Z" ]2 H% C本项目所需要的物品清单有:1 s* V) S, \5 j

, d3 m7 L2 G( b6 a  L" uTOS_EVB_G0开发板 x 1' _% G, b& B# G4 h% t/ E2 U+ E* b( z
英国 Dart 甲醛传感器 x 11 C3 f% J, o- f
E53甲醛传感器底板 x 1/ n' E5 |  h+ @2 ]3 W* \: s
1.png
) j2 B, D4 i5 C% n; ~( q成品组装图(安装各接插件时,请务必参考成品图,不要弄错方向,否则可能烧坏MCU)( s3 `3 S$ \9 y# _0 h- s2 Q
2.png % p  S, Q. L# o
好啦~接下来开始我们的制作!3 r* d/ Q; p7 w' N: F6 K' Z

# j* s: ^5 b/ M7 C" P

' B# T/ v4 K$ V; s/ \) j7 ^7 T9 a! I! ^* U# t5 ~: r4 Q1 d8 X

! o+ g; m: k1 M7 r0 a6 S( u. }9 z9 A' d2 Z# o7 P+ B( c

+ O- O) k4 o3 ]
二、TOS EVB G0开发板介绍

! ]5 z9 X3 T) `5 x6 B
" i" w1 T; ^, x. f

" E3 O$ \' R: Q+ a8 P- g; Z8 ~. A" H 1. 开发板特性
5 r9 v$ N1 V& {
. E1 p/ |$ m+ ~( t

: ~/ M  f, I3 A$ RTOS_EVB_G0 开发板是由腾讯TencentOS-tiny团队设计的一款物联网开发板,板载资源如下:
" d# R0 {2 p+ s2 V 3.png 1 X  C9 Y) H* D( X  _
- 主控芯片采用STM32G070RB,Flash空间仅有128KB、RAM空间仅有20KB;" o) L! k/ e% _, A, O! N
- 板载腾讯云定制固件版ESP8266 WIFI模组;
0 g( w/ N% x8 |% z0 F- 板载E53传感器标准接口,方便连接各种E53传感器;
% \1 \) ?! u; }* w- 板载0.91'OLED显示屏幕;
9 n( T8 z# v5 e% c& R. e/ x3 }- 板载8MB SPI Flash,可用于固件升级;
4 F6 @% H% d/ P- 板载CH340 转串口连接,可以使用一根USB线连接至电脑,查看串口日志;, _. g  Q3 ~0 i5 P6 l9 G

+ X# c" z% U* x+ F% o2. 开发板硬件电路详解1 [: m9 h5 W7 V9 {
. `' V2 ?/ ?* i& A) Z
2.1. 最小系统电路
7 Z( c  r. e: ~9 F- L7 O5 ?* p
6 k: G% K3 ^1 y0 L% d
! G. H/ a1 k% J! _& a
最小系统部分由电源电路、时钟电路、Boot电路、复位电路、下载电路组成:
6 L3 n6 n; c( t+ \) K1 [9 a1 c 4.png
- o9 V3 S4 a2 G. H2.2. WIFI电路
% w! m" s( i+ {- _- Z% }0 ^  v: t7 |! @  A2 j7 _

* R, R' T8 B$ W0 @& T2 y! Y( J- pWIFI部分包括ESP8266 WIFI模组供电电路、串口通信电路:1 [7 {+ R6 w0 V9 ~
5.png / H" m3 a: x# z) J0 M5 G

3 r, `( J$ x/ A6 v8 `/ D. w
  E$ V" b6 o' M0 g
2.3. E53扩展接口电路9 o5 Q* k% ]* Z7 Q$ z7 {

1 `8 Q( r3 o2 n( K" B

0 N( ]/ X- _' [  q2 a4 HE53扩展接口是由物联网俱乐部定义的标准接口,供外部传感器连接,包括:一个串口、一个SPI接口、一个IIC接口、四个普通GPIO口、一个ADC模拟采集接口,一个DAC模拟输出接口,如图:
9 ~& W* ~5 f$ M9 x# ?% y. g 6.png   K8 b! `9 U: _! ^! Q
) ^2 s; G- S& K% a
2.4. USB转串口电路, ]' f* P/ F# h1 I8 `" R+ f
' K! T, y( b8 e! C9 B3 W
6 N; V% V* g) S: b% Q: r
USB转串口电路将串口信息转换为USB口信号,使得开发板可以直接通过USB线连接至PC,在PC上使用串口助手查看日志:
0 n- @! X- B9 x# S. ~% J- i5 v 7.png
  b4 P! H1 J  C8 n: I5 }0 \2.5. OLED显示屏幕电路5 r1 k! n  e, I

1 y4 o& O& B& y' h+ u

. F4 @0 ^; @: o$ }- F8 sOLED屏幕部分包括OLED供电部分和通信部分:
# g) c8 l; W2 ` 8.png $ r6 R4 Q& D5 ]7 O$ Z5 W3 _/ N
' C% K% M, f* o1 i; U. w1 x( {, E
2.6. 连接Micor USB线' x5 x2 ]5 k" H8 y/ e( j
9.png
3 c* b/ C8 T" j& f& [4 w! E! S
4 g- a6 q: C, q- |# c) W* r2 h* ^" Y2.7. 连接ST-Link下载器* ~/ J. M) Z/ y  o

. M& Z8 |7 y  n# o, t

) X2 m7 K1 O( ^5 b: L5 ^开发板3v3---> STlink  3.3V9 t# N8 t  R3 O5 k( W2 l, _& v
开发板DIO---> STlink  SWDIO# Q* m8 r6 r# x0 I4 R4 T1 q
开发板CLK---> STlink  SWCLK
; {( q5 j: |" z! N+ A" w开发板GND---> STlink  GND
2 G6 D& Q+ U, |6 Y5 H9 e5 g
. Y9 K1 ?, O$ t& j3 y9 j; @
2 A8 g$ }: T( E
请大家参考下图进行连接,千万不要接反接错,以免烧掉MCU
: J2 W1 J* j3 C5 D% m: }2 {; W  C( b; B* m
, p  Z7 f5 r2 p  b8 H$ ^: H+ g& H! h
10.png
, r6 g9 ]7 I% y" S  k, }, g0 X4 U' n' [
/ M4 C& y! a) G: _1 o

( A0 E6 `  O; L7 C1 k" \0 j3 t3. 开发板软件环境准备+ I5 Z+ m: S4 @. G5 x+ }

- c, v7 E, n- `4 v  l1 d! ~3.1 MDK软件介绍& e8 Y, }0 R6 B/ q5 e. a/ Y
- g$ r! p9 h5 T) @5 M, D
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%。* m. s2 E& f3 y( o$ S" K+ }) `5 ?

$ W+ \( h  R9 v; P. q- `+ hKeil公司开发的ARM开发工具MDK,是用来开发基于ARM核的系列微控制器的嵌入式应用程序。它适合不同层次的开发者使用,包括专业的应用程序开发工程师和嵌入式软件开发的入门者。MDK包含了工业标准的Keil C编译器、宏汇编器、调试器、实时内核等组件,支持所有基于ARM的设备,能帮助工程师按照计划完成项目。
7 Z# ~0 ^3 r9 i5 ^2 j6 L8 X. Y0 n' U* v
3.2 MDK安装
+ V$ N3 z. X3 ~7 t
4 K" V0 z- [- s% f" D! S, b

3 {  `- J) }8 k6 n! |7 a8 e, O3 }+ G% \1 [! v# E! _7 _6 j; b/ V9 V
登录MDK官网,下载MDK5软件,下载地址:
; |- }' j$ f# i! L9 T% M; v5 V1 m1 ?

0 v, D4 S  G  `1 \; i% I) S+ ohttp://www2.keil.com/mdk5  
( n7 K3 P9 i' O" T  U7 u4 e
) X. `& _+ V0 v6 E* @' E* l, Z) y9 {
6 t. t9 v5 n: K- I0 l# w7 n3 U
或者 https://www.keil.com/download/product/
, G- p; c. f6 N* v" B
' y" X, _. P6 F& f$ [下载的版本最好在5.24以上,本开发教程以5.24版本为例,双击MDK524应用程序文件,点击next>>。
' q: s7 P5 J2 R: U% f 11.png * V1 b" q$ Q5 w: o
打上 I agree前面的勾勾,即是同意一些安装协议。点击next>>。; h  J& U/ O% d. {7 s3 p$ N2 ]
12.png
: R% Q4 c( J! F$ C" B/ C7 C选择安装路径,可以默认也可以安装在我们自己建立的文件夹下。点击next>>。* S: y4 ]9 N' U" ]9 s: B0 I
13.png + ^" a6 A0 a" N
) q$ S" q; {% L7 B! N
这里填写的是我们的一些信息,填写完整后,继续next>>。
' d- d! b; r) r 14.png 0 o( L. r8 [8 f2 G  H1 I" @, o

$ z0 q  i, z9 W6 V, R. @3 K然后等待安装完成即可。
- B5 h0 k9 i  W( ^# m/ f! y 15.png * H% i; g9 f! ^' [% v5 o
5 h( ?- H3 N! G4 n0 A/ T3 k
安装完成,点击Finish。
$ p3 d; h$ V3 ?$ V 16.png / C% @7 i! M# d  ^) [7 ?. l/ X

8 R" c+ G( }  f* c然后会跳出来这个界面,这个我们后面再讲,先点OK,把弹框都叉掉。
2 T  T, U; _8 }# z( l% \ 17.png # E) r+ h5 R: w( H3 a4 J
2 r& l* L$ S) A8 l$ x
激活MDK,导入License,激活MDK后便可使用了。
6 F  j  p  \* t  K' O 18.png ( f; q+ n$ |) l6 [' q
# ~, B! [# K3 ~2 s  }$ T

  k+ N9 v+ N+ V" k特别提示:一定要输入License激活MDK软件,建议购买正版License。
9 t. J3 k! p& |, l
5 ^; [" V( n0 v7 y; E4 Z" y3.3 PACK安装" N; J( n  r. m* E) y
' F" N: u. K" w5 f6 T$ p) A8 K

4 r2 l- K5 x! m/ e& Q安装完MDK后,我们需要安装开发套件中单片机型号对应的Pack。# A) S( s' N8 S/ ~( m

+ L3 ?( l& ?- j+ O3 @
) F6 G( ]2 [: v# b( R& H
安装方式一  
) l; b% H' g# ]& V4 f7 p* H3 s) ^- ?- G. _5 @

4 U; u/ H% l/ {* F5 |登录官网:http://www.keil.com/dd2/pack/
4 z! n5 H# L4 j  l4 x
, p' S, p3 E8 a' X& Z! u6 f6 b; P

( \* e1 |" b7 m. M2 E. g+ L2 j下载Keil.STM32G0xx_DFP.x.x.x.pack 后安装。5 A! f. v3 K6 V. r. a3 Q
9 X: z! P" ?+ z; C3 ~
安装方式二  MDK软件上在线安装
& s* u4 m" i' ^7 _- |8 k6 ~+ P4 k5 D3 K
打开软件,在导航栏打开Pack安装界面,然后选择ok选项。( G; e, ^5 C  B* F* D* `
19.png
7 V- a3 B3 @) g  \; m 20.png
- V2 N4 t2 a8 z7 o# N
- w6 x0 f" g$ \. k进入在线安装界面,选着STM32G0XX Pack,点击Install进行安装。' D% Y6 b+ W. {  {
21.png
9 D, e1 ^+ B" W5 s, Q) S至此,我们开发板的单片机程序开发环境已经搭建完毕,重启MDK软件就可以使用了。
# p/ e( j, o3 I
9 ?6 I6 D8 t! v" e6 _+ U3.4 ST-Link驱动安装- h1 n- o. ^5 w5 {. T2 \: D
4 \. J$ r- c9 ]# i

" v! R( ^4 s4 N4 ^. T前面讲了开发板单片机程序的开发环境的搭建,但是为了将程序烧录到开发板中我们还需要使用仿真器。我们这套开发板选用ST公司的ST-Link V2仿真器进行开发板程序的烧写和仿真,下面介绍ST-Link驱动的安装及环境搭建。( }. |6 B" D  \: j
; ?. y  N# o: d
, C$ N2 ?& y* Y2 H1 G7 y
在ST官网下载ST-Link驱动,
1 A* S" j' d8 z  c2 V
9 U5 p# o; ?3 q* h$ R
% ~, B" N) o4 T2 U
https://www.st.com/content/st_com/zh/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-utilities/stsw-link009.html
& f0 G4 `# l  I+ I
* J4 q2 f% n, r(驱动有2种:32位电脑系统安装“dpinst_x86”、64位电脑系统安装“dpinst_amd64”)。
; I" J% m2 }1 _- c; G) ^1 [+ F/ X6 Y9 y8 Y) Q
运行对应的驱动,安装ST-Link V2驱动程序。安装路径尽量保持默认路径。
( D- x: \- E! |! G
22.png
安装完成后, 将ST-Link通过USB接口连入电脑。打开“设备管理器”。若看到如下图所示,表示驱动安装成功。
4 ]8 i' I( ~  z7 h6 o$ s, e 23.png
+ J# j9 P' x4 T: h9 N0 g7 G" {& Y$ ?这里提醒 2 点:
* B, ]2 v; Z3 C! g# k& r' [
  S2 d( \& O3 E, K3 S# A2 d
1 V& s+ k1 w5 e$ Q  ~% u
1, 各种 windows 版本设备名称和所在设备管理器栏目可能不一样,例如 WIN10 插上STLINK 后显示的是 STM32 STLINK。8 z/ x( a  ]& ^# l2 b: T

/ R! L+ _, i& @# O* `
$ O# d. t5 M* y
2, 如果设备名称旁边显示的是黄色的叹号,请直接点击设备名称,然后在弹出的界面点击更新设备驱动1 F6 j0 m' d# m' y* d4 _4 {; H$ v

6 t* Y8 z2 G$ q9 u( g6 j: N
1 d/ `3 D# g* r; R  I: b6 H* q
至此, ST-Link 驱动已经安装完成。接下来大家只需要在 MDK工程里面配置一下 ST-Link即可。
0 d: Y* Q1 J+ u
% Z" _& {9 k0 u* R8 Q" B" P, u
! l/ ^/ _6 b4 \% H! A

! Y4 i" u) Y: B( N  w# D4 D* X; Z

9 Z! L# q2 H1 }/ Z  G6 `& C& J3 e' `

4 T# V4 d1 K) N$ u" f0 {+ H7 ^3.5  CH340串口驱动安装0 k) ^8 G5 {: P, d2 }
! \4 S' W$ U2 g% O9 ?
) y1 w5 s3 x( W2 T1 N* w0 ~
6 l, s5 J! V# C

3 \+ z$ y7 b; y  Y$ g/ J
+ R9 f# ^4 w& B4 O  y" _; Y
8 D% k! a9 G" G" G& J
互联网搜索下载CH340 串口芯片的驱动6 Q$ |# P: G$ X! ?
" i5 c* r. W) J% k4 r
0 v  p* t$ y/ P! I: G2 R
安装方法:打开驱动安装程序点击安装即可。: C( J: q: l& h( n
24.png
7 c* h. p' ]- \' Q" `3 B/ o3 F6 B# {7 o
" q) C- D% X' ?3 y9 T0 ~3 O
注:若安装失败,请先点击卸载,后点击安装。
, _: g# X. P+ n. O5 o3 R
5 _4 p! E" g, m4 p$ k; w' y3.6 串口调试助手的安装与使用
' x5 b# E9 l% X% B' U# y$ l$ o# @7 G7 }2 A5 H
, c& Q4 Q5 v3 A" d. |

) a( M. V; O+ N9 V" B; _! p* H工具下载:; J7 H: u& c! P2 r
" X3 N0 \7 L  o7 v5 t2 j8 F7 P

. S3 J# r; X, h6 o; T. A, |http://www.daxia.com/download/sscom.rar+ s3 ]' L7 y0 {5 s

4 x, u$ l" a' U7 a! Q0 ]7 ~安装方法:串口调试助手sscom5.13.1是免安装的,解压出压缩包即可直接使用。
9 S; s1 \: Q' b 25.png
* v6 ~, H: Z- {' A( |根据PC和终端之间的连接,选择正确的串行端口。6 a0 m. c; ]2 T' ?9 s# L

+ h* q: u/ c8 R" W$ s; e3 q
  }# j0 h: e9 W0 K( }7 I' H0 R) v
打开电脑的设备管理器,在端口列表可以看到PC与开发板连接的端口号。# _, C) \' v' c1 L/ }; @3 o! `
26.png
% ^- Z  y$ c5 s, V我这里显示的是COM26,所以要在sscom工具中选择COM26,开发板程序波特率设置为115200,所以我在sscom串口工具中选择115200波特率。
" c& e' Y/ b: o
* U/ l1 p) b- k/ m' `* _
三、烧写腾讯云IoT定制固件
9 c3 a3 D7 `( u% X  S  _; T3 B

; `' C; R5 [6 E; S1. 下载固件
# X8 Q( \2 f' l
# U' A: _% q1 z* Z& _
6 t9 a: x9 j( x9 W
腾讯云IoT AT指令是一套针对使用通讯模组(2G/4G/NB/WIFI)接入腾讯云物联平台的定制AT指令集,如果通讯模组实现了该指令集,则设备接入和通讯更为简单,所需代码量更少。ESP8266作为IoT领域使用最广泛的一款WiFi芯片/模组,腾讯云在其通用AT指令基础上,增加了腾讯云IoT AT指令集,形成一个定制的模组固件QCloud_IoT_AT_ESP8266。  h1 x7 S% C+ N3 S/ k

9 h* m' e& Q9 b7 Q% r

5 o2 I& q5 H/ X+ x; Z! `- R- S4 N* Y. k' y' D( B' v# B
下载链接:https://github.com/tencentyun/qcloud-iot-esp-wifi
& t) H- P2 C+ X$ T! h+ i, @7 r6 X4 ~, b  s+ B
. Q" m7 F, X# l: K* X3 |
使用git下载的命令如下:
/ a" x2 @0 M9 H/ @# \8 y- b2 ]. q* L" m0 p# u' s7 z
* B, @2 R- X. l( T6 g* P
git clone https://github.com/tencentyun/qcloud-iot-esp-wifi.git
+ h& A& M& H% s* X4 l5 f4 r. Z; c6 t+ U( g

) x8 {1 \  Y# g1 G下载之后即可在图中圈出的文件夹中看到定制固件:
" B2 M; b' g" E6 U( p) q 27.png
  C. T3 x6 t) \4 D& C1 ]+ x# Q  f2. 下载烧写工具
* T9 J& \3 [" Q( B8 @5 C2 ?
2 o  S' S3 [5 S: N3 ], ~
5 C$ Y9 k6 d* m- ?
使用乐鑫官方下载工具ESPFlashDownloadTool,下载链接如下:5 B- n9 m; ~* O7 C& Z  D  G$ J

" e+ p* l  d4 [4 ]' w5 ~2 C

) F+ P- z; n$ nhttps://www.espressif.com/zh-hans/support/download/other-tools( V$ k# x1 q8 Z2 U9 S

& U8 a9 r4 V$ e8 }$ I2 d- U$ \" F5 V. }2 e) T+ @6 e
" K. T9 N3 S+ N8 M, z: Q
点击下载Flash 下载工具(ESP8266 & ESP32 & ESP32-S2):
  \( R8 C; O; S1 I5 S, g5 o 28.png 3 j5 s9 A; N! H  v& X6 T
下载之后解压即可。1 r/ m. v* _/ e+ y% \7 M

& j- U+ P# {) r0 E4 e3. 固件说明
: k) J; g+ h2 ^5 T$ H
) C# }8 p: ]! Y4 B
' u0 c! c4 G1 r: `( A& r& t- R
腾讯云IoT定制的AT模组固件适用于所有FLASH大小为2MB或者2MB以上的ESP8266模组。
9 f: H9 P/ h5 p: U2 _- e6 }% ?$ m) X* r' x

5 w6 P. b) `) u/ j3 wAT串口使用UART0,默认的Tx为GPIO1,Rx为GPIO3。但因为ESP8266的UART0 默认会在上电启动期间输出一些打印,如果打印信息影响设备功能,可在上电期间将 U0TXD(GPIO1)、U0RXD(GPIO3) 分别与 U0RTS (GPIO15),U0CTS(GPIO13)进行交换,以屏蔽打印。因此提供两个版本的固件:9 J5 l* q& ]7 E* D

; W  I; ~9 O  U4 u9 p
- U$ Z: f& P& H% w- j1 I. b) w
- 名称包含UART_1_3的固件串口使用的Tx为GPIO1,Rx为GPIO3。
& m  F+ L3 @# {; v3 j2 z0 J$ H6 L+ f
, y1 C- L$ V2 X( I: |8 o: m7 W
- 名称包含UART_15_13的固件串口使用的Tx为GPIO15,Rx为GPIO13。
) h4 @1 p( ]' e* e4 {6 y
$ e% F$ p* W3 d( p# x6 y
/ ~, _% |- f6 I- G

9 G) `9 `6 I1 X* ]7 M进入QCloud_IoT_AT_ESP8266_FW,本文中我们使用第一个固件:0 Y- }- i+ J- k( j3 c0 P! M8 \
29.png
2 Q0 a, e# ]0 o3 ]4. 烧写固件1 Q6 \  L1 t2 g& K; j

% T4 `! V9 O) y2 L  j# U9 y
- C* M* e5 m! i) y' h
4.1. 切换boot选择端子和串口选择端子! L& C+ M2 V* c

8 }& G8 @" C/ }% f$ z5 `& |

; Q$ i, m5 ~7 I! {: t5 I① 将开发板上的ESP8266启动引脚配置端子切换到低电平;& f; z9 U/ I' F- V
. Q5 n) m& _. U# r

2 V% R4 [' U% q" ]0 L4 {$ a  E② 将开发板上的串口选择端子置于中间,使ESP8266直接与PC串口连接:
- e. s& c! j. v% x. I1 r" t
/ x+ z, z7 p+ `2 D* @

4 w" U  d0 S* R; e/ w# I方法参考下图:
% F8 B6 h% R$ w+ E; r 30.png
! a1 v' `' @* c  x+ M  P' ~' A5 k, L# `7 W

& {; N9 W% Z# y$ y6 n
  v+ P3 s% L( f9 Z5 E: F
6 A* {4 a/ Z% @
4.2. 运行Flash烧写工具
4 O( l% j  e6 g7 D+ @: O# s% A9 y% p: o* m7 m

$ E9 q/ _2 d( f6 \/ {双击工具,运行:, i, A! A1 i4 o& @' F1 }. F6 {
31.png
; @# s2 y3 ^+ \1 \
9 X# [9 Q7 N9 Q% `# c) t
4 ^3 I8 F2 ?# n0 _$ c

6 i6 c$ b4 `5 y) B' C+ C' s( e, y
8 E" \$ u+ d' M9 Z+ x* [
选择开发者模式:. \6 g3 z" W2 H6 a

- `- |3 j% p; F1 h1 `5 h8 S8 H% u, t
5 u- z" _7 R1 y3 @& E
32.png
! w! u5 J2 p5 k1 l6 C) U. P$ ^8 a  Q* y" ]9 J: P& y' H) X

( }2 f, x! E- Z2 a
; w9 R3 K1 P% E7 a7 f5 |0 ?' O3 Y4.3. 开始下载! c$ [1 B, S" W7 n' y

. }& Y. X- ~5 d# k5 T
. f0 M% n% `, J7 W  [+ ]
按照图中进行操作:' g- m) f8 T! j6 T6 h# _+ P0 `
33.png 0 Y! _* ]4 _3 V  ~4 I9 [

6 }/ A, p+ P3 e. B9 o
* X* Z3 K6 K7 Q8 o& h3 _
5 ]  ]: ?6 _* a9 h( j* Z

) A' G" P5 u0 g* a2 w; X2 e/ y点击下载之后,按下开发板上的复位键,Flash下载工具开始下载:* p$ E0 R+ }5 W. N. \6 |

$ m1 R$ d, j4 B  l% E# p
3 ^1 L- V% N! y; ?5 T, n0 W0 m
34.png
; n5 s7 p! w/ Y- t# o2 E- \' j0 {5 M0 D- e
; H" K! A4 P3 p+ ]  L$ {
若没有显示,请检查接线端子是否连接正确。1 N( f6 i% ^. V' k
9 |4 Y! J: H5 u' W5 v- U" ~
* [) H9 {# b' e) z) C
4.4. 下载完成! A% C& a4 g  [: \

( ?. X1 \! D. o1 `0 p4 L

, V) a4 Q" Y% j& _下载完成之后如图:
5 s9 V. v$ o. q 35.png 8 C2 K% Y/ C$ Q/ E' ?4 H* Q+ E
* s  e: p4 R* B% h" a3 E  q  R
% d# \9 T) W  N/ l) Z

6 |1 Q* `) j1 R" t4 c
3 f2 m6 m0 E/ c" a- U3 I
关闭工具,将boot选择引脚拔下,将串口选择端子恢复默认。' E9 T  ~5 ~$ g" b& r- q
6 ~- [/ ~! p. k2 }, J2 P) C

4 c* ^4 o; e( f( W+ x! l注意:完成固件下载后,一定切记将跳线端子恢复到默认状态,默认端子怎么短接可以参考前面完整的组装成品图,否则wifi将没法工作,MCU也没法控制wifi。( R- i9 D3 d2 k4 ?8 o  F) t# k

; f: i2 N9 U1 E2 d

5 b0 u0 J5 p. y5 z1 x( T/ q! M6 S
四、基于TencentOS Tiny接入腾讯云IoT Explorer
3 p$ A6 B: R* Z6 i( _
" b- n1 _# B) G2 Y( @

" \' C% z1 B; z5 e; e

8 K) j2 B$ d/ C) ]  M. M: I, \1 L基于TencentOS Tiny EVB G0要完成腾讯云IoT Explorer对接,需要完成两个部分的工作。
4 {( H" U1 B% F# q) z; E0 r+ u7 y7 F
5 f5 W* j" z& n, }, `. I; U
一是:腾讯云IoT explorer 上完成项目、产品、设备创建、参数配置' q# S, Z5 @$ x
! p; c/ U% y4 r$ k+ W

5 f: m" |6 `- |- A二是:基于TencentOS Tiny完成应用开发,向腾讯云上报业务数据。( i& a$ ^8 ?5 E+ m; L( g; t

. @5 K9 K% ?- C+ |: U' E4 g, ]/ Y4 Z! v. H
: t  |+ F! A0 A9 Y  j
1. 云端操作步骤
; y# |+ [+ J; k# z" ]5 s4 z0 V1 k: g  s% c; A) F
1.1. 新建项目: S# }: H1 K: o4 [1 W' N5 v* G9 E
% u7 y% D" d; a, {

" {" A" I8 O9 L% m( v$ l登录腾讯云物联网开发平台! N' D9 S3 n! b6 X. a" F
+ s0 O3 X3 V( N6 ]. G" `* ?

' v3 C, a: M6 Y$ e; o+ S* rhttps://cloud.tencent.com/product/iotexplorer% _" j: }9 R" t6 S( M
8 Q! n! ~) c# n8 \9 }: g% W4 |
( M5 p' a: l' j, |6 u
点击新建项目,填写项目名称和简介:6 q# O# t6 G7 k
36.png 5 ~' F: O- r* P, @! M/ {
# J' `. e4 T! j5 d) p  \/ u
1.2. 新建产品/ B7 T$ U  ?; R8 \
1 {3 ?# {2 v) A1 X

( y( P4 z" D% K* ?5 b点击项目名称进入到该项目中,点击新建产品:! j1 c) Y( P1 K
37.png
7 p% `" F! k2 G( M- U' y$ {# t& \7 p产品新建成功后,可在产品列表页查看到:
) Y" M2 U) h3 ~& ?# N 38.png
. w; N) O0 i) t: ?* K1 N0 N& k0 Y. j8 Y6 i* ^, {8 ~2 h2 \) x
% v& x/ R) y& e
1.3. 数据模板
# _! [+ j3 _6 s' e2 `1 k5 c, }5 {3 ~2 @9 p8 O3 ?) p# ]

2 W& X' R6 e5 F3 n; |0 b进入产品,点击【数据模板】,点击【导入JSON】,导入下面的JSON代码:
- w% }8 d9 x- \! o  t' U' l2 G
  1. * T, \9 E- {$ o, ]
  2. {
    / [* H3 I$ @' d/ o
  3.   "version": "1.0",1 O  z. N' E) n2 M0 n" ?# g3 |
  4.   "profile": {
    " P5 r" l6 w1 W
  5.     "ProductId": "BDDSF87WEA",
    ; Q% m; P) n! E
  6.     "CategoryId": "1"
    6 D) {; {& s9 x' B3 E" M
  7.   },
    ! O4 B  _1 H" k& C, l8 u
  8.   "properties": [
    ' o" X# i9 j  x/ K3 b
  9.     {
      u& r' C7 @* l# M. d: L
  10.       "id": "ch20_ppm_value",8 Z0 d) i, p+ d& q" x
  11.       "name": "甲醛浓度值",
    5 i$ o% c; l+ v1 h
  12.       "desc": "",6 o- k1 g3 _+ ]1 W& q* v3 Z
  13.       "mode": "r",
    + Q9 @9 T& J. J# x) f$ P! H
  14.       "define": {% I+ B6 x0 R( c
  15.         "type": "float",+ p5 Q3 q- g: F  k; i
  16.         "min": "0",( ?% H3 X: J, z  S& Y8 ?/ _& r( L
  17.         "max": "2"," Z6 N7 \# G+ M( `6 f) o
  18.         "start": "0",
    " X% ~# A2 C- O
  19.         "step": "0.001",3 g/ a5 K) J5 j  L. r0 }2 G' \
  20.         "unit": "ppm(mg/m3)"2 M/ c3 O* J) ]* ?
  21.       },; b8 a  ]  i# x2 O+ i( o* a0 f
  22.       "required": false
    ) d6 G2 [, A; e0 Z7 R# k. [" `
  23.     }
    ) l) q8 ?- O9 k! y( ^
  24.   ],  Z! e, p3 h0 U, E1 O
  25.   "events": [],7 K: ?6 |, W- P+ I5 A$ X8 E# \
  26.   "actions": [], @0 Q: W4 e/ t
  27. }
复制代码
导入之后自动根据json文件创建的属性如下:
* N1 m1 l! W' S# l# p/ H: f5 \ 39.png 4 T; s7 w( I3 D$ r. L. D7 O" S
, B/ H& h1 L6 Z/ p+ n
, U9 m1 d$ ~1 c+ w
1.4. 创建设备' r& ?! W2 j9 H; q9 ^! @
7 X9 |1 z  o; p' V0 p3 S  m
% V* b0 x( ~- p& ^& t" f2 x3 @8 e# p
点击【设备调试】,进入后点击【新建设备】,创建真实设备:
! U3 L) v& y& v' T 40.png ) {  ]9 s" m4 F5 c* r+ @, k2 m

- ^& o* m1 v" b4 i8 K. P" e/ o

4 @$ R0 @- Z4 q创建成功之后进入设备,查看到产品ID、设备名称、设备秘钥:
$ ]) t' j* H: P9 C 41.png
! H! b" o, z; m: d# N" L. k
0 w1 q) e+ Z; c, R9 y! {! ~( D
3 x* f! x1 n9 _+ n* {; w% @
2. 基于TencentOS Tiny 完成设备侧应用开发; o/ W9 x+ t' z9 n- b

: |- h' V$ i' p. p) N- d$ h) h( d

; A% O3 N( H4 Z" [; n2 m6 Z进入
8 B# {6 H6 A( N, \$ G  T6 m, q: d. }% {4 v2 I
3 }7 M, H4 L# n9 C& {2 F1 V; P: B
<TencentOS-tiny\board\TencentOS_tiny_EVB_G0\KEIL\mqtt_iot_explorer_tc_ch20_oled> 目录,打开TencentOS_tiny.uvprojx工程。
) N! B: m9 T" n8 u6 o3 g* ^( i: r9 Z7 w9 F: v1 \2 l- S5 J
2.1. 修改WIFI接入信息
2 ]8 y+ q# Y% v: P- K2 R2 U0 M- G' S9 L0 C( C" p! j

- t4 r2 N% W+ M6 b打开mqtt_iot_explorer_tc_ch20_oled.c文件编辑,修改要接入WIFI的名称和密码(建议使用手机热点,不要有特殊字符):
* U4 h' Y3 F2 I7 R7 \- E 42.png / T1 `4 X9 ~: M

5 v2 a( U$ h' ?1 M/ U$ y
7 ?' u+ G; W6 n% Q% j
2.2. 修改云端对接信息
9 e4 S. v* h7 ?# F/ @5 u. R& t8 h2 Q: w) h3 z$ E$ Y! ]
  @8 T+ H6 A) w* W; M
同样在此文件宏,修改云端配置信息,使用之前在云端查看的信息替换:
* @7 ^5 t1 }: |; K9 d 43.png - M' \6 C  @# Q9 R- |- M6 i
2.3. 编译工程
+ S* t3 y7 k7 ^! r% \* G
4 W$ c: x) ~1 P& G

9 ~2 [6 \; s; S  {# q' y- U点击编译按钮,编译整个工程:
# \! h5 t' u5 q0 t$ E/ T 44.png
$ Q+ C; D+ f; `& g2.4. 下载程序& A2 y8 i% e: n- [

% ?1 O+ g0 m# d

2 }2 {9 P: N! L- Y. ^% {点击进入工程配置界面按纽,进入工程配置界面:  T% t* D2 {* _0 |* o. l4 L7 h
45.png
; N7 z& q( h. J# d; W- d$ G" U选择Debug选项,进入仿真器设置界面。
4 e6 x! ]7 O% f; z 46.png 3 l) _' _, u% B3 T1 G5 C- X
下拉仿真器选择列表,选着ST-Link Debugger并勾选右侧Use,点击Settings进入ST-Link V2仿真器配置界面。
) _  I! `( L, }% q 47.png
8 U. B/ b' W" Y/ V7 w开发板设计的程序烧录方式为SW,此处Unit选择ST-Link/V2,且Port选择SW,并确认右侧框内是否检测出SW设备,点击<确认>保存配置。% R% }$ ^0 p) Y- V1 Y( b
48.png   _1 D4 r7 @# i6 c, t
点击确定之后,回到主界面,点击下载按钮:
( L/ ], B$ A3 x  i) @ 49.png
- v' y: X9 P- S0 t1 `2 }0 f: e: Z" Z2.5. 使用串口助手查看日志
& _2 U7 T) U9 r. P7 [
* ~* n# U0 D, U( b" z8 f$ |

% J: L1 |, Q2 E0 |# `, m  c  ?运行sscom软件,打开电脑上开发板对应的串口,比如我选择COM26,点击【打开串口】:8 f) z1 v# {( c- K4 A
50.png 1 J! J5 r5 b2 u+ a7 Q2 N6 E2 q
按下开发板上的复位键,程序开始运行,即可在串口助手中看到系统运行打印的日志:  Q3 Q6 }4 V' b3 Y- E% N! S1 C* a: K
51.png
, H+ f5 {1 t- ?% A. V3. 云端平台查看设备数据
5 H8 Y1 B" f3 Y: ~  w' K
& t$ Y( O) U6 i6 [* ^* A7 j$ s- S( W

8 B" g) L; u' e0 q( k, e0 e回到腾讯云物联网开发平台,可以看到设备状态变为【在线】:
. {: d1 v: ]* U9 S. ^) y 52.png
# {4 m5 ]* K' @点击【设备日志】一栏,可以看到设备上报的甲醛浓度值:
+ O& Z3 A4 x9 D9 p( U8 l1 Y 53.png
% V  a& b  S* F% A1 S+ e点击【设备属性】一栏,点击【甲醛浓度值】后的【查看】,即可看到甲醛浓度值的历史数据曲线图:
& l+ b' b( G8 L. ~! y 54.png
/ Z6 e' J! O& [0 ]* x  M( }3 S  ~' O6 j0 l- R7 c& M  {

6 L7 B; o6 r% u, K! m( T
五、腾讯连连小程序操作步骤

) s, Y6 d5 a; Q( f1. 添加家庭
! D% I8 D* v. C3 b8 x1 q9 k( b8 _8 i1 R- T' e! |7 q

4 X3 V  x8 a7 K! r+ S; t- D. a& K6 F手机端在【微信】搜索【腾讯连连】小程序,首次使用需要进入后点击【我的】->【家庭管理】,添加一个你喜欢的名称即可。( r$ D4 T3 m. R* a6 b
, s0 B3 {5 g. S4 v2 W0 p' A7 E- f
2. 添加调试设备
2 l6 C) Y" l8 f3 s
$ k! w  r' p0 C0 E

, q# _/ Y" T8 c# b3 C返回【首页】,点击右上角“加号”图标:
; T' e8 b7 V( R: h9 }( Z) l( n 55.png
& \" P( E$ z8 R) a! Z% \& V
7 t% b' k; m+ M5 Q' f

% r2 }: m( `; L$ w& c0 n' t进入后点击右上角扫码图标:4 y& K* _4 l9 R) T
56.png
* ^5 }$ P6 b- y* p# o) f1 K9 |+ i
# t1 I, c- F1 c6 _  ?8 A* f
7 m2 ]; ]1 s7 _( U9 `
在腾讯云物联网开发平台进入【设备调试】,点击对应设备后的【二维码】:3 c& e% g2 H: U) j/ u- F; @9 T
57.png
: ^( U. D" G, x; V* E! l' y* E; E8 j腾讯连连扫描此二维码即可成功添加设备,添加成功之后如图:
& {- V3 R  ~7 }& d2 K1 f( G 58.png
; x7 X# f9 r: w点击此设备即可实时查看数据,并下发控制指令:
6 D3 l. i$ J& x: {+ X 59.png
  c7 `# }1 p$ x' R  _3. 修改腾讯连连显示面板$ ^! z9 T. S8 K7 I5 T
' c# ]* }( M. g7 \' a+ n# ]

6 ^0 @/ k# T& ^进入【交互开发】,点击【面板配置】一栏:( m  F2 P( g/ ]* U7 |  M% ?
60.png
6 o  T' A. l$ f/ g+ r
4 O0 e. u. I* w! n# U
, [, d3 @( I7 y' i: T8 |
在此页面中可以自己根据喜好配置小程序显示面板,如图:8 }# `! S% W- E7 H

' E. u; e) q# e# u) f. [

8 ]" O9 S, P6 p& U 61.png
4 I. P) y4 O0 m* \4 e2 g保存之后,在腾讯连连小程序删除设备,重新扫描绑定设备即可生效。
# l% ~% [& G: A2 W2 n% _7 ^$ ]: i" \, ^

5 ]0 s% _( K% J) A. v
六、腾讯连连公众号设备告警操作步骤
9 F4 b; _; z7 z* S" L" a' |
: V7 `9 T4 m: H2 o5 `) _
- K6 q9 _1 s# ?. J0 C
1 B" Q& e! L7 F  i
1. 创建数据流' [# J/ d; ]6 Q) B9 J

) {! f) l* m4 L# a

, {! [* Q! f  |. ^% ]点击左侧【数据开发】一栏,点击【新建数据流】:. ^5 Z, B( z( l7 c3 m
62.png
, ]7 ], |8 v3 x5 X* @
: ?* }6 ^  a  v3 |- j/ [' C5 p2. 设计数据流" M/ v* W1 W5 H, @6 {  O
: @$ @; i5 c1 B5 r
% l( `) g# D0 w" `( P( W+ H' `6 S& e
添加并设置【设备数据】节点:* R0 l$ A9 x5 B4 Z( `
63.png
8 T" C( a0 E" f9 R添加并设置【过滤节点】:0 w$ O/ l% J* o# `9 a0 T2 E
64.png ) T" l# }9 D  f5 y2 C
添加并设置【推送节点】:9 d& M: ~5 M4 M# D1 a# }, T
65.png
+ b! _: K" C, ]" e* M# c! q, p& _& W4 D

  K* }, i: e) Y# \2 c, r3. 启动数据流7 I' R6 W8 B* b5 b' |& ?

  s" J; {; f3 [" \1 {
4 |! }; ^- V) X, f9 l  i
设计完成后,点击【保存按钮】,再点击【启用】:
1 c3 Q# w4 S) n: j 66.png
7 X* m0 |2 Q! F' l9 P* v4. 关注腾讯连连公众号
0 E3 S; ], x& X) {, s
  l% Z$ P" x1 P7 }7 D- Q, V. d

( A9 ]7 f4 l* f, h7 N4 j在微信关注【腾讯连连】公众号:
* B! Z0 W1 C! _* L4 x
3 n5 M3 ~: R8 m3 R关注后,如果有任何告警消息,即可在公众号接收到。/ G: u( L0 f7 w7 U+ R3 s; U1 J

+ S4 ^" I0 M  y8 @2 [: U>如果仅仅为了测试告警功能,可以先将告警值设较小的值,比如设为0.070,测试完成之后再恢复国家规定标准0.80。/ s) o/ a* P; K3 ~" i+ N

7 _2 e4 l- w( A& J* v
. m( z7 x0 J9 N: L1 }2 Z+ ~$ W8 t

" ~/ C, h0 V' l9 b' L! `; c至此,基于TencentOS Tiny的智能甲醛监测仪制作完成。
% P1 Y" J7 a+ t. X- L2 H! n6 P$ M6 r, U
收藏 评论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+ E) c* {' E5 Y2 \3 K3 v, k) f  j/ j
文章太长了,,安装软件的什么就省略了吧。

+ q! K( m* ~1 C7 f) N8 I* K! o确实有点长
STMCU-管管 回答时间:2020-11-27 09:32:47
一代睡神的崛起 发表于 2020-11-26 16:16- h9 U% R! Z+ {: t6 @* @  g
TecentOs是不是很牛逼啊,和日天比起来呢?
5 o( M; q7 B6 l! ^" A
你不是搞过么
一代睡神的崛起 回答时间:2020-11-27 13:59:42
STMCU 发表于 2020-11-27 09:32$ q2 h5 K7 P* a4 E7 {
你不是搞过么

) p  \. U' F- A$ D我感觉没赵日天牛逼

所属标签

相似分享

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