EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
可测1g重量的电子秤,已做成产品(附源代码和视频教程)% b* V& V5 W- c1 P: @1 `' ]" \
发现了一个非常不错的资料,分享给广大网友,共同学习。源程序还有视频教程的连接。大家热情高涨的话,原理图也下功夫找找再上传!
( D* ?+ K" @) Q6 Q2 b/ q3 R+ B% T i2 M" v$ _
8 \9 Q) m% e7 Y$ r; ~1 J" G$ U' E( l, r& A
先附上方案描述: 厨房电子秤方案教程.pdf (521.39 KB, 下载次数: 0) : o$ I# k) R# E1 A5 W
拉到最下方,分享有源代码和视频教程链接。2 w, n( E5 v7 ]$ l2 o
![]()
" @. Q6 s1 t/ b; x# n2 m![]()
# |0 ^# C3 ^2 u( ?1 r2 d! E5 W$ n8 S
$ |) _7 D2 q& y& V4 ] I3 X$ t
从硬件设计到程序设计,最后调试,详细的讲解了如何做一个厨房电子秤。
& T/ }: u5 X! @, H方案特点: 1. 出厂一键校准功能 这个功能,是为了方便生产做的。 比如,工厂员工,每次只需要给电路板下载一下程序,再按一个按键,就完整了校准,就可以投入市场交到客户手中了。 2. 一阶滤波程序 在得到ADC数据计算重量时,采用了一阶滤波程序,使得显示的数值非常稳定。 3. 电池电压测量功能 在利用电池电压供电时,电池电压的降低,不会影响重量的测试数据。 4. 去皮功能 去皮,是个专业术语,你可以理解为“置零”。 举个例子,当你测量篮子里面物体的重量,你就可以用去皮功能去掉篮子的重量。 5. 低功耗功能 30秒,重量数据没有保持不变,表示人们不再使用它,进入低功耗模式,用去皮功能按键一键唤醒。 / t! M8 y1 ]9 \% D% c
: G+ g! D# F9 Z1 p' Y9 C8 q, x
2 V. w; t8 b/ d5 N% e1 i0 b& L/ l; L目录& Z6 K" }' X W
第1章 厨房电子称的硬件设计思路- 3 G8 X+ [; P7 I% Z! c. P4 Y
第2章 如何快速搭建一个厨房电子秤第3章 称重传感器的安装
0 I$ c% {4 l; r. v p第4章 称重传感器原理讲解第5章 CS1237差分ADC模块介绍
# u% J: J& I4 y& N+ H6 }0 K 第6章 厨房电子秤程序设计思路- 6 |& u. z/ x' z& {' t0 ]* X
第7章 厨房电子秤校准程序的实现- ; Y% v. J' a9 p. R* {6 `% ^2 D+ B
第8章 用KEY1键实现不重新下载程序的情况下校准电子秤第9章 重量计算程序设计
0 X7 ~0 r5 P& S( G3 C5 M z5 ? 第10章 去皮功能介绍和程序设计
4 n+ L* j0 ?( e+ @" Y第11章 低功耗模式程序设计第12章 数据的一阶滤波处理第13章 测量电池电压程序设计第14章 IAP15W系列单片机程序下载方法第15章 电子秤套件完整实验流程
2 N( q1 ]0 d/ R' o7 `# Z, l" | 第16章 去皮功能介绍和程序设计- / g4 a" C0 K3 y# H0 D' d8 ~* D
第17章 称重传感器的安装
& G7 @$ \8 r; \2 E0 g第18章 称重传感器的安装: w; j- t$ N( P
. }& ]4 @+ B5 d# D$ u
% u- z" h2 b8 c) c
例程说明:
# X- y: F* J+ |" T! ~) ^ n! K6 R---------------------------------------------------
2 C7 Z% i6 X* \* F工程硬件平台: 1,51Core-V1.0(51单片机最小系统板)% ^1 H* U. \( l2 P( X% B$ V
2,差分ADC模块-CS1237
X$ ^5 H+ p. Q# I4 j2 s% D% U 3,称重传感器模块
- f( q" T2 B6 @0 d 4,OLED显示器0.96寸,4PIN" O, d+ Z% w' k! h5 q& E5 r
, Q7 o7 U! \( V6 G0 u工程程序版本:51单片机厨房(药房)秤方案 V1.0.0.0
q' u! @% i4 q3 t) B! V(本例程仅提供一种实现思路,学会后完全可以使用其他品牌的单片机替代)! R1 S$ G* ~! _) e2 M. c
---------------------------------------------------
) _9 ]. N6 l' u5 O
; g: R2 x1 o9 R% @+ w* {9 H------------------------------------------------------------------------------------------------------., P& Z* U* N C7 F! X
( D( i$ [" D; g0 r& ^硬件:
' X$ M# V( E% a! U( C7 W( S% G- X l+ c2 W" d+ @9 ]/ q, m! e) G9 o
1,单片机内部时钟设置为 5.5296MHZ
' \. _ o" V& g- y: _6 ^" |& ^+ B- Q/ @8 {4 J- b- `
2,“差分ADC模块-CS1237”的电源正确连接到“51单片机最小系统板“的5V电源上。同时数字接口如下连接:1 D0 I5 V) v+ [/ S" R- x4 ]1 l
OUT = P3^7;//数据对应IO口% Q* F* L7 _4 j$ s
CLK = P3^5;//时钟对应IO口8 I- L$ r. _+ l% t! E2 P# N, d: Y1 Q
, C( P. ?; z8 S3 M3,”称重传感器模块“和”差分ADC模块-CS1237“连接好。接线定义如下:. n0 E( B' Y. P' S
CS1237模块的E+ 连接 红色
7 B8 @# I8 k6 l' L3 c- p+ x CS1237模块的E- 连接 黑色
$ A- L2 L B- u. {8 }+ X M CS1237模块的S+ 连接 绿色
3 L; @% J+ G3 T: i* N CS1237模块的S- 连接 白色
' z3 z" S) h1 g3 [(本例程的软件上有处理,S+和S-不用区别正负极,因为CS1237的模拟输入通道是差分输入)
m) R$ M1 J2 X: U! j6 T* s+ }0 M4 ~; b7 O4 r# F2 q
4,OLED显示器0.96寸4PIN ,直接查到51最小系统板的P17排母上即可3 K* i _+ W1 U W% r" |
, U" \+ [1 T* n% }3 M* W# H
5,锂电池供电下的运行功耗:19mA 待机功耗:<2mA0 u9 a( T; u3 E6 M
8 |; U/ L: K2 I. y* l! o
------------------------------------------------------------------------------------------------------
3 G8 K& O- H5 H3 n1 X
& ~+ E; B$ S( M7 v2 S0 I4 u---------------------------------------------------% r/ |" r% s3 W& e
9 J$ p! J l ^/ d' U" q% b+ A" v
程序功能:
# X) C ?4 X4 u9 I: e1, 第一个点校准功能。需要保证系统供电是一个精确的5V,第一次烧写完程序后会进行第一个点的自动校准。, X! C2 g9 F* v- b; `
此功能也可以通过按 KEY1 按键随时进入。
" P; K3 p& { o4 R1 w' k! l# i 第一个点校准后,不能直接称重,还需要第二个点校准。
+ q3 Z5 x+ J* f# ]! m 7 T) f. r( G& x
2, 第二个点的校准功能。需要在秤盘上放一个500克的砝码,等待几秒,按下 KEY2 按键即可。
^/ p, Y1 d9 `5 e" L( n) u+ \" h* d) k* [5 F6 X
3, 去皮功能。经过两个点的校准后便可以正常使用。使用过程中随时可以去皮重。按下 KEY3 按键即可。
, \+ v' ^7 A( v9 U$ Y" f/ M. N4 t$ i% N; c. i
4, 电池供电使用。接上一节普通锂电池即可使用(也可以是两节或三节普通干电池串联),接到5V供电的位置即可。1 [4 r# Y# ]; Y2 w
OLED显示屏会显示电池的电压,单位是mV。: v7 m; _% b+ ^# O
2 I, D. d8 a, n5 ]' s5 v5, 程序正常执行显示的是实时重量。) p* I$ r. V2 U j
. O- O$ b$ r3 T9 _
6, 当程序检测到超过30S重量没有变化,则自动进入低功耗模式,关闭OLED以达到省电的目的。若想再次使用必须按下 KEY3 按键。' M* L6 C j- T: y& N
(此时的KEY3按键相当于产品上面的“开机”按键。当然你也可以做一个电源开关,直接关闭系统); B' D, W r) h9 L- ^+ X/ ]
: q% L$ ?7 S% ^8 w! [! U0 T
7, 开机去皮。由于每次开机时候,传感器受力情况会发生微妙变化(比如移动位置,秤盘被压过,底座没放平等),所以程序在每次开机时; W$ d1 d- Z, v7 K5 X
会进行去皮,软件上消除此误差。
1 z7 {. @- Q6 g) G* J* Z8 R# _
# }, i) L6 p( H0 R0 R% {0 A) ]8, 按键KEY1和KEY2只在校准时候使用,若厂家做产品,只需要在出场时候校准使用即可。留给用户的接口只有KEY3按键,兼容去皮和开机唤醒。
& Z$ n: N# a. K
* @/ ~' L! {- e( t" g3 D---------------------------------------------------; U& S- W! ^, f! w1 U, E" D6 g7 N. H
分享源代码!
& A1 ?9 n4 b( \; S* a/ z
# A# S: \( C9 j1 q7 v7 M |