成品展示
涉及到:单片机,LCD1602,定时器,中断。
这只是个基础的程序,他可以演变许多复杂的模块,比如:定时中断,定时器,数据显示,闹钟程序等等。
他所需要用到的代码:
#include <REGX52.H>
#include “LCD1602.h” //
#include “Delay.h” //
#include “time.h” //这有三个模块
unsigned char sec,min,hour;
void main()
{ LCD_Init();
sec=51; //这是时钟的初值,可以删去或者改变初值
hour=21; //之所以赋初值是方便观察
min=59; //
Timer0Init();
LCD_ShowString(1,1,“timebomb”); //改变timebomb输入你想表达的英文
LCD_ShowString(2,1," : : ");
while(1)
{
LCD_ShowNum(2,1,hour,2);
LCD_ShowNum(2,4,min,2);
LCD_ShowNum(2,7,sec,2);
}
}
void Timer0_Routine() interrupt 1
{
static unsigned int T0Count;
TL0 = 0x18; //设置定时初值
TH0 = 0xFC; //设置定时初值
T0Count++;
if(T0Count>=1000)
{
T0Count=0;
sec++;
if(sec>=60)
{
sec=0;
min++;
if(min>=60)
{
min=0;
hour++;
if(hour>=24)
{
hour=0;
}
}
}
}
}
以上仅展示主程序
这个程序所需要的模块若打出来的话所需页面太大,如果有需要的话,可在百度网盘下载。
百度网盘:
链接:https://pan.baidu.com/s/1zpgV8QUCOHoRpEHF225ZZw
提取码:0ifz
我只是一个小白,如果有错误的话,我会赶快改正,谢谢啦