基于51单片机的电子闹钟设计

您所在的位置:网站首页 客车自动取票机取票流程图解视频 基于51单片机的电子闹钟设计

基于51单片机的电子闹钟设计

2024-06-14 23:19| 来源: 网络整理| 查看: 265

功能:

1.可以 年 月 日 时 分 秒显示和闹钟功能 能通过8个按键自由调整 时 分 秒 闹钟响铃时间

2.带复位按键,要是模块抽风,摁复位按键即可!

3.使用 LCD16020A 屏幕显示 屏幕电路设有电位器,可以调整清自由屏幕晰度

#include "Buzzer.h" void Buzzer(unsigned int Xms) { unsigned int i; for (i = 2*Xms; i > 0; i--) { BUZZ = !BUZZ; Delay384us(); // Delay(1); } for (i = Xms; i > 0; i--) { BUZZ = !BUZZ; // Delay500us(); Delay500us(); } } void Delay769us() //@12.000MHz { unsigned char i, j; _nop_(); i = 2; j = 123; do { while (--j); } while (--i); } void Delay1ms() //@12.000MHz { unsigned char i, j; i = 2; j = 239; do { while (--j); } while (--i); } void Delay384ms() //@12.000MHz { unsigned char i, j, k; _nop_(); i = 3; j = 236; k = 13; do { do { while (--k); } while (--j); } while (--i); } void Delay500us() //@12.000MHz { unsigned char i; _nop_(); i = 247; while (--i); } void Delay384us() //@12.000MHz { unsigned char i; _nop_(); i = 189; while (--i); } /** * @brief 独立按键——普中开发板 * @param 无 * @arg * @retval 按键序号 */ #include"Key.h" #include"Delay.h" unsigned char Key_Scan() { unsigned char KeyNum = 0; if ( 0 == Key1) { Delay(10); if (0 == Key1) { KeyNum = 1; //键值编码,赋键值,不直接做按键功能 } while (0 == Key1); } if ( 0 == Key2) { Delay(10); if (0 == Key2) { KeyNum = 2; //键值编码,赋键值,不直接做按键功能 } while (0 == Key2); } if ( 0 == Key3) { Delay(10); if (0 == Key3) { KeyNum = 3; //键值编码,赋键值,不直接做按键功能 } while (0 == Key3); } if ( 0 == Key4) { Delay(10); if (0 == Key4) { KeyNum = 4; //键值编码,赋键值,不直接做按键功能 } while (0 == Key4); } if ( 0 == Key5) { Delay(10); if (0 == Key5) { KeyNum = 5; //键值编码,赋键值,不直接做按键功能 } while (0 == Key5); } if ( 0 == Key6) { Delay(10); if (0 == Key6) { KeyNum = 6; //键值编码,赋键值,不直接做按键功能 } while (0 == Key6); } if ( 0 == Key7) { Delay(10); if (0 == Key7) { KeyNum = 7; //键值编码,赋键值,不直接做按键功能 } while (0 == Key7); } if ( 0 == Key8) { Delay(10); if (0 == Key8) { KeyNum = 8; //键值编码,赋键值,不直接做按键功能 } while (0 == Key8); } return KeyNum; }

 

资料借鉴于此 纷传



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3