标题: 基于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 |