功能描述

1、采用51/52单片机作为主控芯片;
2、采用电阻应变式压力传感器+HX711检测重量;
3、采用lcd602显示:当前重量、单价和总价;
4、采用4*4矩阵键盘实现:输入单价、删除单价、去皮、清零功能;
5、按键具有提示声,具有超量程蜂鸣器报警。 
6、采用语音模块实现播报功能,当测出重量后可以自动播报总价。

电路设计

采用Altium Designer作为电路设计工具。Altium Designer通过把原理图设计、PCB绘制编辑、拓扑逻辑自动布线、信号完整性分析和设计输出等技术的完美融合,为设计者提供了全新的设计解决方案,使设计者可以轻松进行设计,熟练使用这一软件必将使电路设计的质量和效率大大提高。

单片机管脚说明:

P0端口(P0.0-P0.7):P0口为一个8位漏极开路双向I/O口,每个引脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。

P1端口(P1.0-P1.7):P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高电平,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。

P2端口(P2.0-P2.7):P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。P2口,用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。

P3端口(P3.0-P3.7):P3口管脚是一个带有内部上拉电阻的8位的双向I/O端口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入端时,由于外部下拉为低电平,P3口将输出电流(ILL)。P3口同时为闪烁编程和编程校验接收一些控制信号。

VCC(40):供电电压,其工作电压为5V。
GND(20):接地。

RST(9):复位输入。在振荡器运行时,有两个机器周期(24个振荡周期)以上的高电平出现在此引脚时,将使单片机复位,只要这个引脚保持高电平,51芯片便循环复位。复位后P3.0-P3.7口均置1,引脚表现为高电平,程序计数器和特殊功能寄存器SFR全部清零。当复位脚由高电平变为低电平时,芯片为ROM的00H处开始运行程序。复位操作不会对内部RAM有所影响。

ALE/PROG (30):当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如果想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,则置位无效。

PSEN(29):外部程序存储器的选通信号。在由外部程序存储器取指令期间,每个机器周期两次PSEN有效。但在访问外部数据存储器时,这两次有效的PSEN信号将不出现。

XTAL1(19):来自反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2(18):来自反向振荡器的输出。

EA/VPP(31):当EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V的编程电源(VPP)。

主程序设计

void main()
{   beep = 0;  //蜂鸣器叫一声delay_1ms(100);P0 = P1 = P2 = P3 = 0xff;        //单片机IO口初始化为1init_1602();        //lcd1602初始化get_pizhong();   //获取皮重,秤盘重量while(1){key();  //独立按键程序if(key_can < 20)key_with();flag_300ms++;  if(flag_300ms >= 300)   //300毫秒执行一次里面的程序 {flag_300ms = 0;get_weight();   //获取被测物体重量if(weight >= 0 )write_1602_yl(1,5,weight);         //显示重量z_price = weight * price / 1000;   //总价等于重量*单价write_lcd4_price(2,11,z_price); //显示总价                  if(weight >= 5000)  //超重报警beep = ~beep;    //蜂鸣器报警else beep = 1;yuying();  //语音函数 }delay_1ms(1);}
}

源文件获取

关注公众号-电子开发圈,首页发送 “电子秤” 获取;

基于单片机的电子秤(计价/播报)电路设计(#0223)相关推荐

  1. 基于单片机的电子秤(计价时钟播报)系统设计(#0444)

    功能描述 1.采用51单片机作为主控芯片: 2.采用LCD1602作为显示器件,不称重时显示时钟(年月日日期时分秒),称重后显示该物品的重量.单价.总价和总额: 3.采用HX711模块,称重范围为0到 ...

  2. 基于单片机智能灯光光控照明系统设计、基于单片机HX711电子秤自动计价系统设计、基于单片机GPRS远程测控系统设计、基于单片机多功能循迹避障无线遥控蓝牙智能小车-设计资料

    基于单片机智能灯光光控照明系统设计 智能光控照明系统设计原理: 本系统采用STC89C52系列的单片机为核心,利用BH1750传感器测量实时光照强度,并将亮度的模拟信号转化成数字信号,大大减少了系统的 ...

  3. 基于单片机HX711电子秤自动计价系统设计-基于单片机GPRS远程测控系统设计-818基于单片机循迹避障无线遥控蓝牙智能小车-基于单片机24s倒计时篮球积分器系统-基于单片机智能洗衣机控制系统

    816基于单片机HX711电子秤自动计价系统设计 本设计使用高精度电阻应变式压力传感器,用A/D转换器HX711(HX711数据手册)对传感器信号进行调理转换.AT89s52(AT89s52数据手册) ...

  4. 【单片机毕业设计】【mcuclub-jj-027】基于单片机的电子秤的设计

    最近设计了一个项目基于单片机的电子秤系统,与大家分享一下: 一.基本介绍 项目名:电子秤 项目编号:mcuclub-jj-027 单片机类型:STC89C52 具体功能: 1.通过HX711获取重量 ...

  5. 基于单片机音频放大器声控灯控制电路设计(毕设课设资料)

    139[毕设课设]基于单片机音频放大器声控灯控制电路设计 [资源下载]下载地址如下: https://docs.qq.com/doc/DTlRSd01BZXNpRUxl

  6. 【电路方案】基于单片机智能市电温度控制系统设计-基于单片机RGB颜色智能识别系统设计-基于单片机四路红外遥控开关电路设计-基于单片机自行车自动防盗报警系统设计-基于单片机智能无线病床呼叫系统设计

    822基于单片机智能无线病床呼叫系统设计-设计资料下载 硬件构成:单片机+最小系统+LCD1602液晶显示模块+无线收发模块+蜂鸣器模块+LED指示灯模块+按键模块 本设计基于STC89C51/52( ...

  7. 基于单片机的心率脉搏检测电路设计(#0200)

    功能描述 1.基于STC89C51/52(与AT89S51/52.AT89C51/52通用)单片机. 2.数码管显示当前的心率,单位是心率/分钟. 3.手指放到红外对管中,2秒内读出心率. 工作原理 ...

  8. 基于单片机的RFID刷卡门禁电路设计(#0206)

    功能描述 1.采用51/52单片机作为主控芯片: 2.采用LCD12864标准字符型液晶显示: 3.专用读卡器模块RC522用来读射频卡的信息,当有卡进入到读卡器读卡的范围内时就会读取到相应的卡序列号 ...

  9. 基于单片机的心率脉搏检测电路设计(#0211)

    功能描述 1.采用51/52单片机作为主控芯片. 2.LCD12864显示当前的心率,单位是心率/分钟. 3.手指放到红外对管中,2秒内读出心率. 工作原理 由于人脉搏跳动的时候,血液的透光性不一样会 ...

最新文章

  1. 自动驾驶解决方案架构
  2. 倒排索引优化 - 跳表求交集 空间换时间 贪心
  3. Delphi使用资源文件全攻略
  4. ESP8266-SDK编写的TM1668程序驱动数码管
  5. PHP中call user func()和call_user_func_array()调用自定义函数小结
  6. 卷积神经网络VGG16权重数量的计算和理解(转载)
  7. antd option宽度自适应_建议收藏:Axure手机自适应教程
  8. jzoj1350-游戏(某C组)【SPFA,图,最短路】
  9. 信息学奥赛一本通(1175:除以13)
  10. linux实现自动远程备份(scp+ssh)
  11. Spring-boot模块化编程
  12. Waymo无人车卷入严重事故!车身损毁严重,安全员受轻伤
  13. 8.GitLab 里程碑
  14. spss之数据处理(离散化)
  15. 安卓桌面壁纸_苹果iPhone全面屏桌面壁纸 第88期 苹果x手机专用高清壁纸
  16. 美国股市何时使用计算机,2020年股票交易何时开始?香港股市交易时间(图形)...
  17. java单继承和多继承
  18. 12864多级菜单实现方法
  19. malloc、calloc、realloc、free、malloc_trim
  20. 基本电路知识(电阻电源受控源)

热门文章

  1. ERP与CRM、OA等管理系统区别?
  2. 提取wux-weapp的微信小程序筛选框:FilterBar
  3. 2010中13寸MacbookPro光驱位安装SSD记录
  4. linux find查找多个关键字,Linux小技巧:find . | xargs grep -ri 关键字 -l —— 查询、匹配文件内容关键词...
  5. mysql 全文检索_MySQL全文检索
  6. 60行代码爬取知乎神回复,笑到停不下来
  7. 为什么聪明人未能拯救世界?|《流浪地球》冷思考...
  8. 数据库设计之概念结构设计---------E-R图详解 (各种各样的实例)
  9. 深入理解Java虚拟机:Jvm性能调优
  10. Python利用百度地图获取两地距离 最详细过程和源代码