📄 用ds1302与数码管设计的可调电子钟.c
字号:
//-----------------------------------------------------------------
// 名称: 用DS1302与数码管设计的可调式电子钟
//-----------------------------------------------------------------
// 说明: 本例运行时,当前日期时间将显示在两组数码管上,本例还添加了
// 日期时间的调节功能.
//
//-----------------------------------------------------------------
#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>
#define INT8U unsigned char
#define INT16U unsigned int
//引脚操作定义
//读写DS1302日期时间函数及缓存变量
extern void GetDateTime();
extern void SetDateTime();
extern INT8U DateTime[];
//年月日显示缓冲
INT8U YMD_Disp_Buffer[] = {0,0,10,0,0,10,0,0};
//时分秒显示缓冲
INT8U HMS_Disp_Buffer[] = {0,0,10,0,0,10,0,0};
//继续显示时间或调节时间(1为正常运行,0为调节时间)
volatile INT8U Run_or_Adjust = 1;
//1~12月每月的天数,其中2月天数通过闰年判断再进行调整
volatile INT8U Days[] = {0,31,28,31,30,31,30,31,31,30,31,30,31};
//-----------------------------------------------------------------
// 向片号为Clip_NO的MAX7219写数据
//-----------------------------------------------------------------
void Write(INT8U Addr,INT8U Dat,INT8U Clip_N0)
{
}
//-----------------------------------------------------------------
// MAX7221初始化
//-----------------------------------------------------------------
void Init_MAX72XX(INT8U i)
{
}
//-----------------------------------------------------------------
// 刷新日期时间显示缓冲
//-----------------------------------------------------------------
void Refresh_DateTime_Buffer()
{
}
//-----------------------------------------------------------------
// 主程序
//-----------------------------------------------------------------
int main()
{
}
//-----------------------------------------------------------------
// 日期合法性判断及校正
//-----------------------------------------------------------------
void Validate_Date()
{
}
//-----------------------------------------------------------------
// INT1中断控制日期时间调节
//-----------------------------------------------------------------
ISR (INT1_vect)
{
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -