基于STM32f103的电子秤系统设计
许久前整理的一项课程设计,具备以下资源:
1.论文:25页,近9000字
2.程序:Keil5源程序
3.实物:实测可用
软件程序上传在百度网盘,请自行下载:
链接:https://pan.baidu.com/s/1HFRLvQPg-r9QLtAxO0SUiQ?pwd=ibfb
提取码:ibfb如需要本文更多相关资料,请关注VX公众号:Rain21321
发送:获取基于STM32f103的电子秤系统设计更多资源
(1)论文部分内容:
基于STM32f103的电子秤系统设计
摘要
称重技术自古以来就备受人们重视,作为一种计量手段,它广泛应用于各个领域。随着技术水平的飞速发展,科研实力的快速提升,将称重技术与电子技术相结合的产物——电子衡器横空出世。作为一种无处不在的现代新型称重仪器,它能帮助我们精确测量物体重量并将其显现出来,与我们日常生活息息相关。
电子秤将检测与转换技术、计算机技术、信息处理、数字技术等技术综合为一体,主要以单片机作为中心控制单元,通过称重传感器进行模数转换单元,再配以按键、显示电路等。其不但计量准确,而且快速方便,日益增加的功能诸如自动称重、数字显示等也对人们生活的影响越来越大,广受欢迎。
本次课程设计的基于STM32f103的电子秤系统主要从系统整体设计、硬件电路设计,系统软件设计,三部分进行详细阐述。硬件电路设计主要是基于嵌入式STM32f103为核心的控制单元来实现数据的处理,采用压力传感器对数据进行采集,使用电子秤专用24位AD转换芯片HX711对传感器采集到的模拟量进行AD转换,转换后的数据送到STM32f103进行处理显示,数据显示由LCD1602液晶实现,通过按键实现功能的选择,并且加入了LED闪烁和蜂鸣器报警等。
本次课程设计的电子秤反应灵敏、准确度高、显示直观、性能稳定,、操作简单、价格低廉,满足基本需求,并且具有较好的标定校准方法。
关键词: STM32f103;压力传感器;电子秤;HX711
二、系统整体设计方案
2.1电子秤系统总体框架设计
本次设计中使用压力传感器采集物体重量的变化,通过专为高精度电子秤而设计的24位A/D转换器芯片HX711芯片实现A/D转换,再将数据送给STM32f103芯片处理;采用LCD1602液晶显示物体重量等信息;LED灯和蜂鸣器实现超量程报警功能;通过3个键盘输入装置控制电子秤功能的实现,使电子秤实现称重、去皮、校准的功能。
系统总体框架设计的结构简如图2-1所示:
图2-1:系统设计的结构简图
(2)部分软件程序:
1.#include <stm32f10x.h>
2.#include "delay.h"
3.#include "led.h"
4.#include "lcd1602.h"
5.#include "buzzer.h"
6.#include "rtc.h"
7.#include "usart.h"
8.#include "stmflash.h"
9.#include "IOin.h"
10.#include "IOout.h"
11.#include "hx711.h"
12.#include "esp8266.h"
13.#include "key_s.h"
14.
15.u8 setRTC=0;
16.
17.#define LEN 3
18.u16 eep[LEN];
19.#define weight_mg_L eep[1]
20.
21.u16 weight_mg=0;
22.int main(void)
23.{
24. u8 key;
25. u16 cnt = 0;
26. u8 refresh = 1;
27. u8 set=0;
28.
29. Stm32_Clock_Init(9);
30. delay_Init(72);
31. uart_init(72,9600);
32. LCD_Init();
33. LED_Init();
34. Buzzer_Init();
35. KEY_Init();
36.
37. LCD_Clear();
38. LCD_GotoXY(0,0);
39. LCD_Print("HX711 init... ");
40. HX711_Init();
41. Beep(200);
42.
43. Flash_Read(eep,LEN);
44. GapValue = eep[0];
45.//-----------------------------------------------------------
46. if(Calib_HX711())
47. {
48. eep[0] = GapValue;
49. Flash_Write(eep,LEN);
50. }
51.//-----------------------------------------------------------
52.
53. printf("usart send OK!\r\n\r\n");
54. LCD_GotoXY(0,0);
55. LCD_Print("PRESS :000`000g ");
56. LCD_GotoXY(0,1);
57. LCD_Print("LIMIT :000`000g ");
58.
59. while(1)
60. {
61. delay_ms(1);
62. cnt++;
63. if(cnt>200)
64. {
65. cnt = 0;
66. LED = !LED;
67. key = (KeyScan(0));
68. if(key)
69. {
70. Beep(100);
71. //Play_Voice(33);
72. refresh = 1;
73. if(key==3)
74. {
75. set++;
76. if(set>2)
77. {
78. set = 0;
79. Flash_Write(eep,LEN);
80. }
81.
82. }
83. else if(key==1)
84. {
85. if(set==1)
86. {
87. buzzer = 0;
88.
89. if(set==0)weight_mg = Get_Weight();
90. refresh = 1;
91. sendAPP();
92. if(set==0)
93. {
94. if(weight_mg >= weight_mg_L)buzzer = LED;//0ÓÐЧ
95. if(Weight_Err)buzzer = LED;
96. }
97.
98.
99. }
100.
101. weight_mg_L+=1000;
102. }
103. else if(set==2)
104. {
105. weight_mg_L++;
106. }
107. }
108. else if(key==2)
109. {
110. if(set==1)
111. {
112. if(weight_mg_L>=1000)weight_mg_L-=1000;
113. else weight_mg_L = 0;
114. }
115. if(set==2)
116. {
117. if(weight_mg_L>0)weight_mg_L--;
118. }
119. }
120.
121. }
122. if(refresh)
123. {
124. refresh = 0;
125. LCD_GotoXY(0x7,0);
126. if(Weight_Err)LCD_WrDat('-');else
127. LCD_WrNUM(weight_mg/100000%10);
128. LCD_WrNUM(weight_mg/10000%10);
129. LCD_WrNUM(weight_mg/1000%10);
130. LCD_GotoXY(0xb,0); LCD_WrNUM(weight_mg/100%10);
(3)实物图:
希望这篇文章能够对您有所帮助。
如有错误、疑问和侵权,欢迎评论留言联系作者。VX公众号:Rain21321
基于STM32f103的电子秤系统设计相关推荐
- 用单片机c51电子秤的c语言,基于51单片机的电子秤系统设计
微机原理论文第八篇:基于51单片机的电子秤系统设计 摘要:本文主要分析51单片机下的数字电子秤.在设计过程中,这种电子秤具体包括电源.传感器.蓝牙.转换器.单片机.键盘.开关.显示器等组成部分,在实践 ...
- 基于单片机智能灯光光控照明系统设计、基于单片机HX711电子秤自动计价系统设计、基于单片机GPRS远程测控系统设计、基于单片机多功能循迹避障无线遥控蓝牙智能小车-设计资料
基于单片机智能灯光光控照明系统设计 智能光控照明系统设计原理: 本系统采用STC89C52系列的单片机为核心,利用BH1750传感器测量实时光照强度,并将亮度的模拟信号转化成数字信号,大大减少了系统的 ...
- 基于单片机HX711电子秤自动计价系统设计-基于单片机GPRS远程测控系统设计-818基于单片机循迹避障无线遥控蓝牙智能小车-基于单片机24s倒计时篮球积分器系统-基于单片机智能洗衣机控制系统
816基于单片机HX711电子秤自动计价系统设计 本设计使用高精度电阻应变式压力传感器,用A/D转换器HX711(HX711数据手册)对传感器信号进行调理转换.AT89s52(AT89s52数据手册) ...
- 基于FPGA视频图像处理系统设计
摘 要 本报告给出一个基于FPGA+两片DDR2组成的核心板.带有4路视频输入和VGA接口的开发板进行的视频图像采集和处理系统的设计.使用TW2867进行视频输入信号的编码,存储到DDR2中,通过 ...
- 基于STM32F103的家庭火灾报警及灭火系统(初步)
基于STM32F103的家庭火灾报警及灭火系统 1 绪论 1.1 课题背景 1.2 设计概述 1.3 设计任务分析 2 装置选取总体方案设计 2.1 烟雾检测传感器选型与介绍 2.1.1 烟雾传感器的 ...
- 基于STM32F103的简易示波器设计
基于STM32F103的简易示波器设计(基于正点原子mini开发板) 摘要 本设计采用STM32F103微控制器,硬件为正点原子的MiniSTM32开发板,设计一个示波器,能够测量输入信号的频率.最大 ...
- 基于stm32电梯管理系统设计
基于stm32电梯管理系统设计 ==这里记录一下以前自己做的嵌入式课程设计,报告中的图片和文字太多了,全部一个一个把搬过来太麻烦了,需要完整文本和代码自行主页私我== 摘要 关键词 一.课题概述 1. ...
- 基于RFID的防伪系统设计
基于RFID的防伪系统设计 近几年来,由于茶叶质量安全危机频繁发生,引起了广大消费者的关注,如何对茶叶质量安全进行有效追踪与追溯,已成为一个急需解决的课题.利用RFID技术建立一个茶叶质量安全追踪与追 ...
- 《STM32库开发实战指南:基于STM32F103(第2版)》——2.1节仿真器简介
本节书摘来自华章社区<STM32库开发实战指南:基于STM32F103(第2版)>一书中的第2章,第2.1节仿真器简介,作者刘火良 杨森,更多章节内容可以访问云栖社区"华章社区& ...
最新文章
- msyql 字段说明
- cambridge ccaf potential supervisors!
- 如何在网页中动态为模版页的Body添加属性
- silverlight: [HtmlPage_NotEnabled] 调试资料字符串不可用的解决
- 数据结构---KMP模式匹配病毒感染人的DNA检测
- 使用J-flash arm下载程序
- python中的map函数返回一个地址_python中的map函数
- 计算机组成原理计算tag,计算机组成原理计算题
- 修改mongodb oplog size
- maven 里的 repositories里空的_IntelliJ IDEA 结合 maven通过profile实现多环境
- php做网站不兼容ie8,快速修复网页在IE8 下的显示兼容问题
- Scratch 游戏项目学习法 —— 接苹果(八)添加接住苹果的接盘(角色)
- CodeForces 1009 D. Relatively Prime Graph(思维)
- 神州优车开源业界领先的增量数据同步中间件——DataLink
- php的简单网站设计
- 计算机管理usb出现问号,USB设备全部都是问号,求助?
- 微信小程序如何实现文本换行
- windows驱动ddk环境设置
- php 简繁体转换类库,OpenCC for PHP 优雅的简繁体转换
- Karamata 不等式
热门文章
- web前端学习笔记——选择器
- vux组件的cell组件上下箭头图标显示问题,cell必须放在groud内才会显示
- ISO-8601格式时间转换
- 保温杯哪种材质最好_水杯材质哪种好 六种材质杯子的使用细节
- 关于商品规格(SKU)的设置
- python爬虫你们最爱的YY小姐姐,这不爬取下来看看?
- Adlik Deer版本发布,模型推理加速就靠它啦
- Extraction of individual trees based on Canopy Height Model to monitor the state of the forest
- 安装keil5出现you are not logged in as an 'Administrator'
- php登录后不点击注销,icloud无密码强制注销的方法