硬件设计

本设计是一款基于STM32单片机的电子秤系统,随着科学技术的不断发展,传统的机械秤逐渐被电子秤所取代,相比于计量不精确,费时费力的机械秤,电子秤采用在方便快捷的同时,又保证了结果的准确性。本次设计采用STM32单片机作为处理器,控制各个传感器和外设,采用LCD1602液晶屏作为显示器,显示检测到的重量,压力传感器用于称重,通过检测物体对传感器造成的压力,通过公式计算得出物体的重量,此外通过16个按键组成矩阵键盘,可以输入数字,并进行加减乘除操作,通过重量和单价计算出总价。
       实物主要由STM32单片机+最小系统+LCD1602液晶显示模块+HX711模块+LED模块+蜂鸣器模块+矩阵按键模块+10kg压力传感器;如图:

设计功能

1.液晶显示当前重量大小。
2.按键可以设置当前物品单价。
3.具有去皮清零功能。
4.按键确认按键液晶显示当前重量,单价,总价。

设计原理图

原理图如图:

PCB图如下:

主程序源码

int main(void){    u8 test_interval = 0;delay_init();        //延时函数初始化      KEY_GPIO_Init();    //按键初始化HX711_GPIO_Init();delay_ms(500);       //上电瞬间加入一定延时在初始化LCD_Init();         //屏幕初始化delay_ms(300); LCD1602_write_com(0x80);                        //指针设置LCD1602_write_word("Welcome to use! ");To_Zero();LCD1602_write_com(0x80);                        //指针设置LCD1602_write_word("WE: .    PR:  . ");LCD1602_write_com(0x80+0x40);                //指针设置LCD1602_write_word("MON:   .        ");Display_Price();while(1){     //每0.5秒称重一次if (test_interval ++ > 25){test_interval = 0;//称重,得到重量值weight,单位为gget_weight();//如果超量程,显示‘-.---’if (weight >= 10000){pre_weight = 10000;LCD1602_write_com(0x83);LCD1602_write_word("-.---");}//如果不超量程else{//显示重量值if (pre_weight != weight){pre_weight = weight;Display_Weight();}//如果单价设定好了,则计算价格if (FlagSetPrice == 1){money = weight*price/1000;  //money单位为分//显示总金额if (pre_money != money){pre_money = money;Display_Money();}}else{LCD1602_write_com(0x80+0x40+4);LCD1602_write_word("   . ");}}}//获取按键keycode = KEYSCAN();//有效键值0-15if ((keycode<16)&&(FlagKeyPress==0)){FlagKeyPress = 1;KeyPress(keycode);FlagKeyPress = 0;delay(100);}delay(1);}}

资料链接:https://pan.baidu.com/s/1f0uTnWZuRoySwCBzyoUp9g?pwd=r4lo 
提取码:r4lo

基于STM32的智能电子秤设计相关推荐

  1. 智能手环功能模块设计_基于STM32实现智能手环设计

    龙源期刊网 http://www.qikan.com.cn 基于 STM32 实现智能手环设计 作者:付海生 陈婷婷 韩百科 涂曾兵 来源:<科学导报 · 学术> 2017 年第 10 期 ...

  2. 【毕业设计】基于STM32的智能路灯设计与实现 - 物联网 嵌入式 单片机

    文章目录 1 简介 2 绪论 2.1 项目背景 2.2 需求分析 3 系统设计 3.1 功能设计 3.1.1 系统角色分析 3.1.2 开发环境 3.2 总体设计 3.3 硬件部分 3.3.1 整体架 ...

  3. 基于STM32的智能储物柜设计

    本设计是基于STM32的智能储物柜设计,主要实现以下功能: 1.实现快递箱.快递员和客户之间的手机通信功能 2.实现设置6位密码.密码开锁 3.实现快递箱控制,区分箱体大.中.小 4.实现OLED显示 ...

  4. 基于STM32的智能鞋柜设计与实现--“臭臭没了”

    Hello,大家好,我是阿金,本文仅供参考,提供一些建议.如有不对,还请指正.谢谢~ 随着5G网络的迅速普及,"万物联网"的时代指日可待.针对传统鞋柜及目前市场上现有的智能鞋柜功能 ...

  5. 基于STM32的智能万年历设计

    [ps:该文章排版有点错乱,如果需要,有PDF版本和WORD版本可供下载观看,还有资源免费下载,请移步作者主页下载,仅供学习参考.该设计是学校要求的课程设计,也是第一次做,很多函数并没有进行封装,部分 ...

  6. 【毕业设计】基于STM32的智能台灯设计 物联网 电子信息 APP远程控制

    文章目录 一.项目简介 二.项目组成 三.原理图设计 四.源码设计 五.APP设计 六.成品展示 视频教程 1.项目开题 2.原理图讲解 3.程序讲解 4.实物展示 一.项目简介 本设计是基于一款ST ...

  7. 基于STM32的智能窗户设计

    基于STM32智能窗户设计 程序编译器:keil 5 编程语言:C语言 编号C0006 [腾讯文档]C0006 网盘链接 资料下载链接 功能说明: 1.智能模式:传感器采集的风力.雨水.温度.湿度.P ...

  8. 基于STM32的智能加湿器设计

    一.任务简述 本次设计采用基于单片机的智能加湿器系统,以STM32F103C8T6和温湿度传感器DHT11为核心,通过湿度传感器采集和转换温湿度信号,再利用单片机进行数据分析和处理,实现智能开启和关闭 ...

  9. 基于stm32蓝牙智能小车设计

    前言: 本文描述了一个由STM32微处理器.步进电机.蓝牙,L298N等模块构成的.该系统采用STM32微处理器为核心,在MDK环境下进行编程,通知控制L298N模块IN1~IN4引脚的高低电平进而控 ...

最新文章

  1. SAP SD 常用表
  2. Matplotlib绘制简单函数的梯度下降法
  3. 《树莓派Python编程入门与实战(第2版)》——3.9 小结
  4. C++——拷贝构造函数
  5. 所有人问「贴吧之父」俞军
  6. Anaconda3-5.3.0-Windows-x86_64
  7. 清华大学开始招收高二学生,数学天赋是最重要的入围条件
  8. KMP POJ 2752 Seek the Name, Seek the Fame
  9. 同一字段降序个升序_5个打印小技巧,表格打印没烦恼
  10. 用CSS Houdini画一片星空
  11. 读EntityFramework.DynamicFilters源码_心得_示例演示02
  12. QQ登录之后自动弹出“QQ网吧”怎么屏蔽?
  13. 如何检测判断硅钢片性能牌号?
  14. 数据库技术-数据库概念设计
  15. 幼儿园观察记录的目的和目标_幼儿园一日观察报告
  16. eclipse和mysql餐厅点餐系统_基于安卓Android手机点餐APP系统的设计(Eclipse,MySQL)
  17. 【系统分析师】操作系统
  18. 阿里10年:一个普通技术人的成长之路
  19. mysql 不支持分区_MySQL分区表的局限和限制
  20. 修改PPT输出JPG图片分辨率为300 dpi

热门文章

  1. mysql与sql哪个简单_Sql与MySQL简单入门
  2. php hyper-v,win10自带播放器 rmvb_win 配置php_win 10 hyper-v
  3. c语言入门自学手机版,C语言入门学习软件下载-C语言入门学习手机版v1.0.2 - 起点软件园...
  4. DFM实例分享-替代料审查
  5. 瓦片地图服务参数与计算
  6. 第十四届蓝桥杯模拟赛【第三期】Python
  7. 基于ARM架构下的PI数据库远程存储
  8. yzmcms图片自适应代码_YzmCMS支付宝配置教程
  9. DAL、DAO、ORM、Active Record讲解
  10. bistu新生-1005