历史上的今天
返回首页

历史上的今天

今天是:2024年12月20日(星期五)

正在发生

2019年12月20日 | 基于ATmega16单片机的数字电子秤设计

2019-12-20 来源:elecfans

0 引言

随着电子技术和自动化测量技术的不断发展,传统的称重系统在功能、精度、性价比等方面已难以满足人们的需要,尤其在智能化、便携式、对微小质量的测量方面更显得力不从心。近年来,新型单片机的出现和集成电路技术的发展为更新产品设计,研制高性价比的称重控制器提供了条件。本设计采用AVR单片机为控制核心,结合电阻应变式压力传感器和相应的信号采集电路,设计出一种高精度、多功能、低成本的新型电子秤。


1 系统总体设计

首先由称重传感器采集因压力变化而产生的电压信号,通过A/D转换器将模拟信号转换为数字信号,把数字信号送入AVR单片机,单片机做相应的处理后,得到当前物体重量的数据,并通过LCD显示出来。系统硬件结构如图1所示。

基于ATmega16单片机的数字电子秤设计

系统硬件电路包括A/D转换模块、4×4矩阵键盘模块、LCD模块和蜂鸣器报警模块;软件模块又可分为主程序模块、矩阵键盘扫描模块、A/D转换模块和LCD1602模块。


2 系统硬件设计

2.1 AVR单片机

本设计是选用AVR系列单片机中的ATmega16作为微控制器。ATmega16是基于增强型AVR RISC结构的低功耗8位CMOS微控制器。由于其先进的指令集和单时钟周期指令执行时间,ATmega16L的数据吞吐量高达1MIPS/MHz,在片内集成了16kB的可编程FLASH,512B的E2PROM,1kB的片内SDRAM。在外设方面,具有两个可编程的串行UART,8路10位ADC,四通道PWM,并支持SPI、TWI、JTAG接口,允许ATmega16L和其他外设进行高速的数据传输。


2.2 称重传感器

电阻应变式称重传感器是把电阻应变计粘贴在弹性敏感元件上,然后以适当方式组成电桥的一种将力(重量)转换成电信号的传感器。在电阻应变式称重传感器中通过桥式电路将电阻的变化转换为电压变化。电阻应变式称重传感器工作原理如图2所示。

基于ATmega16单片机的数字电子秤设计

本设计选用湖南宇航公司的SB-B型悬臂式称重传感器,额定量程5kg,灵敏度3mv/V,非线性误差0.03%ES,重复性误差0.02%ES,蠕变(30分钟)O.03%F.S,零点温度漂移0.03%F.S./10℃,温度补偿范围-10~60℃。该系列传感器采用悬臂单剪切结构,过载能力强,受力后自动调心好,具有精度高、长期稳定性好、抗疲劳、抗偏载能力强的特点。


2.3 高精度A/D转换

称重传感器输出的是mV级的电压信号,本设计采用AD7705对信号进行采集。AD7705是AD公司推出的一种基于∑-△转换技术的16位A/D转换芯片,它具有高分辨率、宽动态范围、自校准、优良的抗噪声性能以及低电压、低功耗等特点,适合于称重系统中微机信号处理的需求。其具有可编程增益放大器,增益范围1~128,可与压力传感器直接相连,使用同步串行SPI接口,可以与AVR单片机的硬件SPI接口直接相连,其电路连接图如图3所示。

基于ATmega16单片机的数字电子秤设计

当传感器加上满量程重量5kg时,传感器在5V的工作电压下取得15mV的输出电压。5V工作电压经分压后为AD7705提供基准电压,因此工作电压的变化不会产生系统误差。分压电阻为24kΩ和15kΩ,产生的基准电压为1.92V。当器件的可编程增益为128时,对应的满量程输入电压即为15mV。


2.4 人机通讯

人机通讯包括键盘扫描、LCD、蜂鸣器报警三个部分,键盘采用4×4矩阵扫描键盘,接在单片机的PC口;显示部分采用的是LCD1602液晶,能够同时显示16×2即32个字符。1602液晶模块内部的字符发生存储器(CGROM)已经存储了160个不同的点阵字符图形,编程时可以用AS-CII码直接赋值,还可以用字符型常量或变量赋值;蜂鸣器的作用是当称重物品超出传感器的量程时,以鸣响报警提示用户。

基于ATmega16单片机的数字电子秤设计

3 系统软件设计

系统软件开发平台为WinAVR,开发语言为C语言。为了方便程序调试和提高可靠性,程序设计采用自上而下、模块化、结构化的程序设计方法。本设计按任务模块划分的程序主要有初始化程序、主程序、A/D转换子程序、LCD显示子程序、键盘扫描子程序。


系统工作时分为初始界面模式和称重模式,可设一标志位进行更改以及判断。在初始界面中,液晶屏第一行显示“Place object!”,提示用户可以在电子秤上放置想要称重的物品;第二行显示”PrICe:”,提示用户输入物品的单价。


随后系统进入键盘扫描状态,当相应的称重按键被按下时,单片机控制AD7705进行AD转换,把得到的结果进行处理后通过LCD显示出来。显示包括物品的重量和总价,称重精度为1g。以此不断地循环完成对物品的实时测量。主程序流程图如图5所示。

基于ATmega16单片机的数字电子秤设计

4 结束语

文章提出了一种基于ATmega16单片机的数字电子秤的设计,充分发挥了AVR单片机的强大的控制能力,通过称重传感器和16位的AD7705转换器实现了对重量的高精度测量,具有成本低、稳定性强、电路简单等特点。系统在电子秤的实际应用中得到了满意的效果。

推荐阅读

史海拾趣

Bussmann (Eaton)公司的发展小趣事

随着全球市场的不断扩张,Bussmann也加快了其全球化布局的步伐。目前,Bussmann的产品已在全球170多个国家销售,为各地的客户提供优质的电路保护解决方案。同时,为了满足不同客户的需求,Bussmann不断扩展其产品线,现已涵盖电气电源熔断器、电子电路板及小型熔断器、熔丝盒、熔丝座及断开开关等多个品类。这些产品的推出不仅丰富了Bussmann的产品线,也使其能够更好地满足市场的多元化需求。

以上五个故事展示了Bussmann (Eaton)公司在电子行业发展的不同阶段和关键节点,体现了其技术创新、市场拓展和全球化布局的重要历程。这些故事不仅反映了Bussmann在电路保护领域的领先地位,也展示了其在应对市场变化和客户需求方面的灵活性和实力。

Franel Corp公司的发展小趣事

面对中国市场的多样化和个性化需求,法勒公司积极提供定制化解决方案。无论是复杂的物流系统改造,还是特殊环境下的设备供电需求,法勒都能凭借其专业的技术团队和丰富的项目经验,为客户提供量身定制的解决方案。这种以客户为中心的服务模式,不仅增强了客户粘性,也进一步巩固了法勒在中国市场的领先地位。

上海晶岳(AFSEMI)公司的发展小趣事

为了保持技术领先和市场竞争力,晶岳电子一直注重研发团队的建设。目前,公司在上海、深圳及台湾均建有成熟的产品研发团队,核心功率器件及集成电路设计人员均拥有15年以上的设计研发经验。这些优秀的研发人员不仅为公司带来了源源不断的技术创新,也确保了公司在激烈的市场竞争中始终保持领先地位。此外,晶岳电子还积极与高校和研究机构合作,共同开展前沿技术的研发和应用。

ADTech公司的发展小趣事

AdTech公司深知人才是企业发展的核心动力。因此,公司一直致力于培养和引进高素质的人才,打造了一支具有丰富经验和专业技能的团队。公司通过提供良好的工作环境和福利待遇,吸引了一批优秀的研发、市场和管理人才。同时,公司还注重员工的培训和成长,为员工的职业发展提供了广阔的空间。这些措施使得公司的团队更加稳定和高效,为公司的持续发展提供了有力保障。

CHINFA公司的发展小趣事

在环保日益受到重视的今天,CHINFA公司积极响应国家号召,践行绿色环保理念。公司致力于研发和生产节能、环保的电子产品,通过技术创新和材料替代,减少了对环境的污染和破坏。同时,公司还加强了对生产废弃物的处理和回收利用,实现了资源的循环利用和可持续发展。

西博臣(CYBERSEN)公司的发展小趣事

西博臣非常重视产品质量和品牌建设。公司建立了严格的质量管理体系,从原材料采购到产品生产、测试、包装等各个环节都进行严格的质量控制。同时,公司还注重品牌形象的塑造和推广,通过参加各类行业展会、举办技术交流会等方式提升品牌知名度和美誉度。

问答坊 | AI 解惑

选防盗门有门道 好坏关键在锁芯

买防盗门:消费者一头雾水   在钱王街一家门业商店里,多扇金属质地的门依次排列,许多销售标签上写着“防撬门”。当记者表示要购买一扇防盗门时,老板娘称店内销售的全是防盗门。她指着一扇门介绍,这是甲级防盗门,门框钢板厚度1.2毫米,具有很 ...…

查看全部问答>

硬件街机游戏开发,单片机游戏开发,CPLD/FPGA、ARM平台游戏开发群成立

本超级QQ群成立,上限人数为500。 目标是发展中国游戏产业,提升硬件游戏开发技术交流。提供大的平台。 发展的方向是游戏动漫相结合,此群不是网络游戏开发,为单板街机游戏开发。 所属第三产业。以电脑板游戏开发为主体,希望大家能在这个平 ...…

查看全部问答>

如何修改注册表使文件与应用程序关联???

我自己写的一个应用程序aaa.exe,我想使audio file和video  file关联到aaa.exe。 在emulator中我使用remote registry editor修改audiofile\\\\shell\\\\open\\\\command数值可以实现。 那么我是否可以在我自己的shell程序中 通过RegSetV ...…

查看全部问答>

串口通讯,不知道是哪里出问题了

我使用MS Comm控件,有两个窗口分别显示接收数据和输入发送数据,用串口调试助手可以受到我发送的数据,但是串口调试助手发送的数据我的程序就接收不到! 我使用两个串口调试助手窗口可以相互接收和发送数据,好像我主机的串口连接和设置都没问题 ...…

查看全部问答>

上升沿的捕获电路(代码)

一个简单的上升沿检测代码:reg RS_r1,RS_r2;always @ (posedge CLKIN or posedge RESET)    if(RESET)        RS_r1 <= 1\'b0;    else        RS_r1 <= RS ...…

查看全部问答>

STM32ISP测试程序,欢迎评测!

找点时间,做了个非常简单的STM32 ISP功能测试程序。欢迎大家测试。只做了四个命令,其他的还没做,呵。还有准备做个HEX文件下载和OPTION操作。 相关链接:https://bbs.eeworld.com.cn/upfiles/img/200711/2007115172438494.rar…

查看全部问答>

给st技术支持队伍一个建议

我刚接触ST8芯片, 太头疼了,  写个PWM输出的测试程序,找了2天,最后通过这论坛才解决;  现在是I2C通信,找了2天还没解决; 若是我手头上有一个可执行的例子,下载到开发板运行对比下,问题几分钟就可以解决; 强烈建议:  ...…

查看全部问答>

【为C2000做贡献】座谈题目:DSP电路板的硬件设计和系统调试

从其他地方找到的好资料 [ 本帖最后由 fxw451 于 2011-4-7 09:29 编辑 ]…

查看全部问答>

TI tms320dm365 PCB layout问题

最近在弄一个tms320dm365的PCB 用的是allegro 15.2 版本软件,请问下这个IC的和DDR2 和Flash连接时需要什么样的要求,怎么设置他们的规则,我的经验不是很丰富,请大家给出建议和意见,谢谢大家!…

查看全部问答>

集思广意,做块“牛X”点的MSP430开发板

征集一下大家的想法,做一块功能性,实用性都很全面的MSP430开发板,大家有什么好主意都说说啊,到时画板时都加上。…

查看全部问答>