|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 行者~ABC 于 2020-11-18 09:40 编辑
1 ?9 M3 O% ?' m( g
! x' @$ ?2 z+ A' h一、前言
6 c0 I+ l4 [! U% y3 A* J
! c1 q ?4 ^! Pshineblink core 开发板(简称Core)的库函数支持SHT30温湿度传感器,所以只需要调用两个API,即可实现温湿度测量功能。
" r1 J: f0 N& a3 q Q O, E
) ?# y6 M+ l6 l3 P0 B6 g QPS:Core 仅用五、六行代码即可实现Wifi/Ble/NB/Lora/ThreadMesh/RFID/Eth/Usb/RS485/RS232通信、以及30多种传感器/10多种硬件外设/10多种mcu内设功能,并且这些功能最多可以 5 种随机组合同时运行。
" ?3 T P% e# `2 _. v0 `. b3 _% O' S' a1 a; j0 d8 p/ B, c% C
. K M9 j |6 r/ N* W; [
. n9 |) r7 t# p$ _ N" P/ f二、制作材料' _- K! L) g8 x" C7 s/ \$ f
( F$ V- i3 v) Q) r$ D
1. shineblink core开发板一个7 }; d( L2 U% E
2. sht30温湿度传感器模块一个3 h1 |8 b9 J: o/ q- s8 ^+ s
3. 0.96寸oled显示屏一个' a: R. @8 ]3 M8 U# Y+ A
4. TYPE00-0000003F 电路板一个,该电路板的原理图及PCB源文件请在下面的网盘地址中下载(AD工程):
6 K; ^' {" w" |% N7 v3 R( X4 P
7 f% X1 B6 i$ |: v. x5 ~$ `8 K6 ^0 c' ?2 I2 x- ?
9 a R7 |5 I+ G9 N
8 _) s5 F0 f6 w2 }: p) D* U
6 R3 ]+ T0 a) |! y/ B5 y; U三、完整代码9 }: r& x% t/ F+ z! I) `# F% X
5 P: m2 }/ @3 i. xLIB_Sht3xConfig("IIC0","10","HIGH"); I: [# M6 X1 b2 V! k; m
LIB_0_96_OledConfig("IIC1")
4 Y' a. U, I9 M& P" W" }( t9 q
' b3 C9 K f+ r7 e--开始大循环
; O) N% ~& b1 g8 V' ywhile(GC(1) == true)0 }8 ^+ M7 g1 V8 w4 V
do% y0 p" B* ]; L, w" J* b* q( d
--延时1000毫秒
0 ~' N4 {5 _) i6 `8 U9 h% H& z LIB_DelayMs(1000)
+ D$ T5 j; Q( v! p
0 V! R( d. w5 V& o --查询sht3x传感器是否出数. I. P$ J+ x& @+ \, O( R$ r; M
sht3x_flag,sht3x_temp,sht3x_humi = LIB_Sht3xGetResult()
1 t+ ^7 ]* S+ E4 R1 |9 ~2 N' Z --如果传感器有数据产生7 {# I2 `9 Z6 l/ S4 W3 |# ]- c
if sht3x_flag == 1 then* _( `6 }3 X& s! G
--在oled屏幕的第二行和第三行分别显示温度和湿度
& F8 d: m% Y+ x3 [/ ~% V. w& _( R LIB_0_96_OledPuts("2","1",string.format("temprature: %.2f", sht3x_temp))& A5 K3 J2 s& e4 E
LIB_0_96_OledPuts("3","1",string.format("humidity: %.2f", sht3x_humi)) [- r3 T$ l& W+ @+ y
end
/ p- X' e9 R5 q: Q9 r7 Mend
$ ~, Q% s3 h! I2 [7 w' d' y5 s! Q0 l6 @) ?) T2 p2 L
+ U$ k1 K L. R- q
四、制作过程 & 结果展示
6 w Y0 E6 g# G N. ~' L( G" m, R
' I2 v% K3 x0 eCore的开发方式非常简洁优雅,用记事本(或其他任何编辑器)打开Core开发板TF卡上的main.lua文件,然后将上面的代码复制到main.lua文件中即可,由于Core内置Lua编译器,所以无需你做任何处理,Core即可按照上面的代码开始工作。
) c8 D8 H2 Q* D3 [, T7 O% T# M: j) Q0 P& f/ Y" B
下图为组装焊接完成后代码开始运行的效果:% n( Z. E" r/ E/ j& N3 [
2 s2 Q0 y ?4 M8 t& H$ @
7 `" r( e/ E1 F5 u7 C3 N8 K" ?
$ z9 V% ?9 Y! r% X) n, m: Y
3 k5 B1 K1 T- A5 ? k( k& i5 r+ V4 y
五、结语
. i/ n# `) H7 B7 a( w, m) m2 a, M# a3 X
上面的代码实现了每隔1秒更新显示一次温湿度传感器输出的值。关于Core更多的技术资料,可以访问 shineblink.com 来了解。' `' O$ a3 x5 ?! p& g- B# f$ ?) n
3 |6 Y2 B# M& Q. w/ X8 }
# [- C _1 d& k+ a: L( p |
|