基于单片机智能药盒控制系统设计(含论文)
利用STC90C516单片机、8个按键、LCD1602液晶显示屏、蜂鸣器、LED发光二极管等设计一个家庭用智能药盒。该系统硬件部分由单片机最小系统、按键电路、液晶显示电路、声光报警电路组成,系统能完成时间的实时显示、每天四次定时、每次用药四种药用量提醒的功能。
系统基本功能如下:
(1)显示
采用LCD1602显示实时时间、用药量、 调设信息显示等。
(2)定时时间与用药量的设定
系统须实现每天四次时间的定时,每次用药时须对四种药做出用量的提醒,通过6个按键完成,1个功能键,1个调节键,4次定时对应的4个定时按键。
(3)实时时间调节
实时时间通过另外2个按键进行调节,其中之一为功能键,另一个为调节键。
(4)报警功能
实时时钟运行到定时时间时,LCD1602显示此次用药量,蜂鸣器响起,LED闪烁,提醒用药时间到。
#include <reg52.h>
#include "12864.h"
#include "delay.h"
#include "ds1302.h"
#include "typedef.h"
#include "key.h"
#include "dht11.h"
#include "24c02.h"
#include "mp3_uart.h"
sbit GLED=P1^1;
sbit RLED=P1^0;
sbit BUZZER=P2^0;
uchar SetFlag = 0; //设置标志
uchar ClockTime[15][3]={0}; //吃药定时时间
uchar ClockNum[15]={2,2,2,2,2,2,2,2,2,2,2}; //吃药数量数组
uchar ClockEN[15]={0}; //吃药开关
uchar Name[15]={0,1,2,1,0,2};
uchar Current=0; //当前编号
void TimerInit(void);
void RTC_Display(void); //
void HT_Display(uchar temp,uchar humi);
void GetTempHumi(void);
void SetRTC(void);
void ClockControl(void);
void SetClock(uchar Add,uchar *Clock);
void ReadClock(void);
void ClockAlarm(void);
void TimerInit(void);
void UartInit(void); //9600bps@11.0592MHz
void DisplayName(uchar x,uchar y,uchar num);
void DisplayMsg(void); //
void DataSave(uchar num); //吃药数据保存
【资源下载】下载地址如下(799):https://docs.qq.com/doc/DTlRSd01BZXNpRUxl