• 大小: 0M
    文件类型: .c
    金币: 1
    下载: 0 次
    发布日期: 2021-05-07
  • 语言: 其他
  • 标签: 其他  

资源简介

时钟.c

资源截图

代码片段和文件信息

#include
#define uchar unsigned char
#define uint unsigned int
sbit rs=P3^5;
sbit dula=P2^6;
sbit wela=P2^7;
sbit rw=P3^6;
sbit lcden=P3^4;
sbit s1=P3^5;
sbit s2=P3^4;
sbit s3=P3^3;
sbit s4=P3^2;
uchar numtts1num;
int shifenmiao;
uchar code table[]=“    2020-03-05“   ;
uchar code table1[]=“    23:59:55“   ;
void delay(uchar z) //延时函数
{
uchar xy;
for(x=100;x>0;x--);
for(y=z;y>0;y--);
}
void write_com(uchar com) //lcd1602 写指令
{
rs=0;
rw=0;
P0=com;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
void write_date(uchar date) //lcd1602 写数据
{
rs=1;
rw=0;
P0=date;
delay(5);
lcden=1;
delay(5);
lcden=0;
}
   
void init() //初始化
{    
wela=0;
dula=0;
shi=23;
fen=59;
miao=55;
lcden=0;
write_com(0x38); //
write_com(0x0c); //0c不闪不显示
write_com(0x06); //
write_com(0x01);     //清屏
write_com(0x80);   //地址初始化
for(num=0;num<14;num++)  //写第一行
{
write_date(table[num]);
delay(5);
}
write_com(0x80+0x40); //地址换到第二行
for(num=0;num<12;num++) //写第二行
{
write_date(table1[num]);
delay(5);
}
TMOD=0x01;
    TH0=(65536-45872)/256;
    TL0=(65536-45872)/256;
EA=1;
ET0=1;
TR0=1;
}
void write_msf(uchar adduchar date)
{
uchar shige;
shi=date/10;
ge=date%10;
write_com(0x80+0x40+add);
write_date(0x30+shi);
write_date(0x30+ge);

void key()   //键盘 s1为功能键 按下则进入调试 定时器关闭 按到第四次退出调试 定时器重新打开 地址还原
{
if(s1==0)
{
delay(10);    //按下消抖
if(s1==0)    //按下s1
{
s1num++;    //按下一次 s1num++
while(!s1);    //松手消抖
if(s1num==1)
{
TR0=0;
write_com(0x80+0x40+11);
write_com(0x0f);
}
if(s1num==2)
{
write_com(0x80+0x40+8);
write_com(0x0f);
}
if(s1num==

评论

共有 条评论