标题: 基于STC89C52RC单片机实现称重与时钟显示 1602,DS1302,HX711芯片 [打印本页]

作者: 长风__静    时间: 2019-12-26 16:15
标题: 基于STC89C52RC单片机实现称重与时钟显示 1602,DS1302,HX711芯片
一、整体介绍
作用:
该项目可以测重(<=5kg),可以显示当前时间
         功能:
能将测得的重量、时间显示在液晶显示屏上,能使用按键调节液晶显示屏上的时间,重量大于5kg时蜂鸣器会响,使用按键去皮
用的模块:
LED1602,DS1302,HX711,蜂鸣器,按键
环境:
软件:Keil uVision5
                   硬件:51开发板
目的:
测得的重量显示在液晶显示屏上,同时液晶显示屏还可以显示时间,液晶显示屏上的时间可以通过按键来调节
二、项目硬件介绍
模块介绍:
         HX711:压力传感器,最大为5kg
         DS1302:时钟模块,用来测量时间
         LED1602:液晶显示屏,两排,每排可以显示16个字符
蜂鸣器:无源蜂鸣器
按键:矩阵按键,1~9:去皮,上键加一,下键减一,左右移动光标,Esc取消更改,回车键进入/保存更改
整个项目的电路连接

三、软件介绍
程序介绍:
1.HX711模块:
//延时函数
voidDelay__hx711_us(void){ _nop_();_nop_();}
//读取HX711
unsigned longReadCount()
{
         unsigned long Count;
         unsigned char i;
         Delay__hx711_us();
         ADSK=0;
         Count=0;
         while(ADDO);
         //AD转换未结束则等待,否则开始读取
         for(i=0;i<24;i++)
         {
                   ADSK=1;
                   //PD_SCK置高(发送脉冲)
                   Count=Count<<1; //下降沿来时变量Count左移一位,右侧补零
                   ADSK=0;
                   //PD_SCK置低
                   if(ADDO) Count++;
         }
         ADSK=1;
         Count=Count^0x800000;
         //第25个脉冲下降沿来时,转换数据
         Delay__hx711_us();
         ADSK=0;
         return Count;
}
四、    项目总结
这个项目你收获了什么:
通过这个项目我熟悉了LED1602,DS1302, HX711,蜂鸣器,按键等模块的使用;我清楚的明白单个模块的使用并不难,难的是多个模块一起用,多个模块一起使用时相互之间会产生一定的影响;并巩固了以前学习的知识。

项目源码.rar

92.69 KB, 下载次数: 85, 下载积分: 黑币 -5


作者: knight51    时间: 2020-4-21 09:16
很给力
作者: 313524808    时间: 2020-4-21 10:20
不错,我一直就想找这个
作者: 宋鼎铭    时间: 2020-5-7 10:24
你好,这个电路怎么连接
函数怎么烧入

作者: tieq1952    时间: 2020-5-22 07:06
谢谢分享!




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1