EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
可测1g重量的电子秤,已做成产品(附源代码和视频教程)
% P' D6 V7 J0 M+ I6 I# D1 ^$ @6 @发现了一个非常不错的资料,分享给广大网友,共同学习。源程序还有视频教程的连接。大家热情高涨的话,原理图也下功夫找找再上传!
1 k, u! D) f, z$ K3 t9 V( c+ a7 g8 S7 W! x, w% s
' V7 l! f4 _$ d! M P
* e+ c! q7 T r3 M4 ^先附上方案描述: 厨房电子秤方案教程.pdf (521.39 KB, 下载次数: 0)
& N, f6 ^+ q9 P# d+ U3 o拉到最下方,分享有源代码和视频教程链接。
. e5 t, Q F5 @3 a9 u1 G * u8 J3 Z4 P' t6 p3 S* [; k6 w+ W( U
![]()
0 j6 `2 r& ^. q h, }0 i L% y( t. J+ z( V+ i o a( x
7 ?) ^/ X8 g9 T( _! g, E从硬件设计到程序设计,最后调试,详细的讲解了如何做一个厨房电子秤。
& ~( z2 g Z$ c, j2 n& v; B9 E. j方案特点: 1. 出厂一键校准功能 这个功能,是为了方便生产做的。 比如,工厂员工,每次只需要给电路板下载一下程序,再按一个按键,就完整了校准,就可以投入市场交到客户手中了。 2. 一阶滤波程序 在得到ADC数据计算重量时,采用了一阶滤波程序,使得显示的数值非常稳定。 3. 电池电压测量功能 在利用电池电压供电时,电池电压的降低,不会影响重量的测试数据。 4. 去皮功能 去皮,是个专业术语,你可以理解为“置零”。 举个例子,当你测量篮子里面物体的重量,你就可以用去皮功能去掉篮子的重量。 5. 低功耗功能 30秒,重量数据没有保持不变,表示人们不再使用它,进入低功耗模式,用去皮功能按键一键唤醒。
7 u+ w# @- x4 E8 P) Q$ [! {) X, M S; p `5 w# L' G A
' O7 G1 ? ?3 p
目录
# N% N% C4 @0 V0 n& @第1章 厨房电子称的硬件设计思路- , ]1 p" z; H% A2 A) K1 |0 A4 u! H
第2章 如何快速搭建一个厨房电子秤第3章 称重传感器的安装
7 d9 v, m5 u/ g5 v, J7 V! P: s第4章 称重传感器原理讲解第5章 CS1237差分ADC模块介绍第6章 厨房电子秤程序设计思路第7章 厨房电子秤校准程序的实现第8章 用KEY1键实现不重新下载程序的情况下校准电子秤第9章 重量计算程序设计第10章 去皮功能介绍和程序设计
# t1 o) a/ s! M, G- n7 p, M第11章 低功耗模式程序设计第12章 数据的一阶滤波处理第13章 测量电池电压程序设计第14章 IAP15W系列单片机程序下载方法- 7 x' u; S& {5 _( r f; u5 x! n3 H
第15章 电子秤套件完整实验流程- % ]6 x, a( I9 [8 G! ~# o! K6 `# W4 d
第16章 去皮功能介绍和程序设计第17章 称重传感器的安装9 ~" {* a" f j G4 l# D
第18章 称重传感器的安装3 }% a8 e( o3 r# n
![]()
4 S( v8 L$ ^# h' Z3 _' m2 ]4 ]! |' V9 h" B& Y( C! I
例程说明:2 ]4 H1 j& c/ D3 c9 m5 p; i5 k0 C7 K
---------------------------------------------------6 i: Y$ [7 e( J! p/ v% F! ~
工程硬件平台: 1,51Core-V1.0(51单片机最小系统板)* a6 I% \- q0 F% [, M d9 \! v
2,差分ADC模块-CS12372 y/ ? ?7 x: _
3,称重传感器模块4 y0 ]/ ^: h" a7 D6 v5 S
4,OLED显示器0.96寸,4PIN& i& ?7 x/ f( X. e+ Z3 x& _. n
0 w. g3 t, N. c, T! l
工程程序版本:51单片机厨房(药房)秤方案 V1.0.0.0
. S: u0 P0 s5 k! e$ `# h/ \8 P(本例程仅提供一种实现思路,学会后完全可以使用其他品牌的单片机替代)9 n( G8 l5 s6 }& `6 Q0 E. s8 ]7 x
---------------------------------------------------
/ K# f. V6 h6 q0 @" u+ n/ F7 Z1 B5 Z$ G% s8 s
------------------------------------------------------------------------------------------------------./ s# W4 D$ {7 {1 _
9 Z* D* U7 y* a' q
硬件:
- J$ O4 I0 C# f- `! m8 V( a2 }' b6 U3 {6 K* E
1,单片机内部时钟设置为 5.5296MHZ, W% f! N2 ~4 U8 h
* ~& {. \" ^0 s. b6 i6 Y2,“差分ADC模块-CS1237”的电源正确连接到“51单片机最小系统板“的5V电源上。同时数字接口如下连接:7 x& I6 y$ \9 a8 n' [6 T
OUT = P3^7;//数据对应IO口5 F6 f1 |. j* j' ^( l' t/ J
CLK = P3^5;//时钟对应IO口( W% t6 f7 W1 W* W6 a3 \
: l# {. t w. w5 A% w) S
3,”称重传感器模块“和”差分ADC模块-CS1237“连接好。接线定义如下:
' R% s/ @! r2 P$ ]: `6 F CS1237模块的E+ 连接 红色1 ?4 P" G; Y, K9 \( g5 c8 @; V, B" y* s
CS1237模块的E- 连接 黑色
7 Y8 |1 x7 p( u# |* l' ? CS1237模块的S+ 连接 绿色7 B) b( m# ~1 R3 k6 V
CS1237模块的S- 连接 白色9 ]. S" F& r3 Q8 L7 `& e2 }
(本例程的软件上有处理,S+和S-不用区别正负极,因为CS1237的模拟输入通道是差分输入)
" j. F `' ^. p
! v- U/ w4 j# I: G3 H4,OLED显示器0.96寸4PIN ,直接查到51最小系统板的P17排母上即可
! |# q9 V4 y% F9 ^8 T4 M6 u0 o# H. U
5,锂电池供电下的运行功耗:19mA 待机功耗:<2mA
) b6 w2 {/ S) \- X5 h- r& {6 C: y6 \" P' P4 g% ~
------------------------------------------------------------------------------------------------------. J3 `' n X" ]( V- K% X8 }5 s5 W% _
" L' V1 X0 a- q---------------------------------------------------
' Z* t/ P8 }% {2 s' S2 i r. F8 }1 p% s# t' I
程序功能:+ Y9 @( R3 s7 i$ g4 ^7 p
1, 第一个点校准功能。需要保证系统供电是一个精确的5V,第一次烧写完程序后会进行第一个点的自动校准。' W5 a# f# ?! G
此功能也可以通过按 KEY1 按键随时进入。
8 [3 U/ T, V4 ` 第一个点校准后,不能直接称重,还需要第二个点校准。
) y& F3 E H9 [& y1 @4 L, F5 q6 { ) b6 \! T% w1 u' c4 X; `( e
2, 第二个点的校准功能。需要在秤盘上放一个500克的砝码,等待几秒,按下 KEY2 按键即可。# J6 O# q* P K7 Q4 _# K
) m$ {) w2 ~ O% Z+ e3, 去皮功能。经过两个点的校准后便可以正常使用。使用过程中随时可以去皮重。按下 KEY3 按键即可。( j1 X0 I3 O3 ~6 K! @8 g
: |, r2 _/ F5 T" W
4, 电池供电使用。接上一节普通锂电池即可使用(也可以是两节或三节普通干电池串联),接到5V供电的位置即可。
* r# K) b* U1 n4 V! j7 n OLED显示屏会显示电池的电压,单位是mV。
6 V0 r1 A9 W- S* R! c& M3 i* M
9 X( T& c- W% a' r6 P5, 程序正常执行显示的是实时重量。6 U# O9 n! t! Y5 H4 g
' o, N5 R; V& f2 e9 Q
6, 当程序检测到超过30S重量没有变化,则自动进入低功耗模式,关闭OLED以达到省电的目的。若想再次使用必须按下 KEY3 按键。$ T, f9 s. T1 ~+ m& r# _* \) z
(此时的KEY3按键相当于产品上面的“开机”按键。当然你也可以做一个电源开关,直接关闭系统): B) k# z! t+ ^! T$ o: v6 {" x
7 c w0 S* N3 `+ c5 o7, 开机去皮。由于每次开机时候,传感器受力情况会发生微妙变化(比如移动位置,秤盘被压过,底座没放平等),所以程序在每次开机时2 b9 h. n8 g' a; V7 I1 G
会进行去皮,软件上消除此误差。3 J- b9 Q5 R5 C/ o: y2 ]
; I1 v# e7 L0 g( e; u
8, 按键KEY1和KEY2只在校准时候使用,若厂家做产品,只需要在出场时候校准使用即可。留给用户的接口只有KEY3按键,兼容去皮和开机唤醒。3 u' s; A5 ?; F7 Z) B- y; Z, x+ l! ^
+ ^6 x$ [9 \/ c8 a( a---------------------------------------------------3 y. T. _2 p" t- h7 u$ C: k
分享源代码!, Y1 j7 [( u& b6 a7 G' V
- L: l4 q, b9 X: _2 K7 X' m! _3 W# { |