这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » 基于PIC16F877单片机的多功能电子时钟

共7条 1/1 1 跳转至

基于PIC16F877单片机的多功能电子时钟

助工
2021-09-12 23:52:12     打赏

一、功能实现
  本设计主要实现实时时钟显示,时间可调;实时温度显示,并具有超限报警功能,输出显示采用LCD1602。
二、仿真图

基于proteus的仿真
三、主程序
#include "lian_pic.h"
#include "DHT11.h"
#include "ds1302.h"
#include "key.h"
#include "lcd12864.h"
#include "control.h"
__CONFIG(HS&WDTDIS&LVPDIS&PWRTEN);        
//HS振荡,禁止看门狗,低压编程关闭,启动延时定时器


void Basic_Io_Init(void)
{
  ADCON1=0x06;       //PORTA,PORTE设定为数字端口
  TRISD=0;           //PORTD设置为输出
  TRISA0=1;                        //按键输入
  TRISA1=1;                        //按键输入
  TRISA2=1;                        //按键输入
  TRISA3=1;                        //按键输入
  TRISB0=0;                        //串口,并口选择
  TRISB1=0;                        //并行读写使能
  TRISB2=0;                        //并行读/写选择
  TRISB3=0;                  //并行数据/控制字选择
  TRISE2=0;                 //报警器
  TRISC=0x00;                //DS1302的端口定义
  PORTC=0xff;                //DS1302的端口定义
  lcd12864_io_init();
}
//高温报警
void temp_warning()
{
        if((temp_valueH/10)>0x02&&reduce_voice==0)   //30度开始 手动消除
        {
                RE2=1;
                //报警IO
        }
        else if((temp_valueH/10)<=0x02&&reduce_voice==1)
        {        
                reduce_voice=0;
        }
        else
        {
                        RE2=0;
        }
        
}
void main(void)
{        
        Basic_Io_Init();         //初始化IO口
        Lcd_Init();                        //初始化LCD
        __delay_ms(2000);         //等待2秒保证DHT11上电正常初始化

  while(1)
  {        
        temp_warning();     //循环执行高温报警监控
         DHT11_Read_data();  //读取DHT11模块的数据
        Key_Scan();                        //扫描模式识别键盘
        ds1302_read_time(); //读出当前时钟信息
        lcd_display_control();//显示


        __delay_ms(150);
  }
}



专家
2021-09-13 00:02:50     打赏
2楼

感谢楼主的分享,很实用了。


专家
2021-09-13 08:22:44     打赏
3楼

不错的程序


专家
2021-09-13 08:54:45     打赏
4楼

感谢楼主的分享


专家
2021-09-13 08:53:59     打赏
5楼

学习


高工
2021-09-13 08:57:09     打赏
6楼

看看


专家
2021-09-13 09:04:24     打赏
7楼

看看学学


共7条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]