• 大小: 116KB
    文件类型: .rar
    金币: 2
    下载: 0 次
    发布日期: 2024-02-03
  • 语言: C/C++
  • 标签: C51  1602  

资源简介

基于C51与1602液晶显示屏的万年历电子时钟,包含硬件仿真电路,以及C语言源程序

资源截图

代码片段和文件信息

#include  

#include  

#include  

#include  

#define uint unsigned int  

#define uchar unsigned char  

  

uint numA_numx=0;  

uint hmsyear=2012month=1day=22lcd_x=0lcd_y=0;  

  

uchar code Zifu[]=“0123456789“;  

  

sbit beep = P2^3;  

  

sbit LCD_EN = P3^4;  

sbit LCD_RS = P3^5;  

  

sbit duan = P2^6;  

sbit wei = P2^7;  

  

sbit key_A = P3^6;  

sbit key_B = P3^7;  

  

void delay_1ms(uchar x){  

    uchar ij;  

    for(j=0;j

        for(i=0;i<110;i++);  

}  

  

void write_command(uchar command){  

    LCD_RS = 0;  

    LCD_EN = 0;  

    P0 = command;  

    delay_1ms(2);  

    LCD_EN = 1;         //EN 由1 -- 0 完成 有效数据 的 锁存  

    delay_1ms(2);  

    LCD_EN = 0;  

}  

  

void write_data(uchar fuck){  

    LCD_RS = 1;  

    LCD_EN = 0;  

    P0 = fuck;  

    delay_1ms(2);  

    LCD_EN = 1;  

    delay_1ms(2);  

    LCD_EN = 0;  

}  

  

void lcd_post(int Xint Y){         //01表征 第一行 和 第二行  

    write_command(0x80+X*(0x40)+Y);  

}  

  

void init(){  

    h=m=s=0;  

    num=A_num=0;  

  

    LCD_EN=0;  

    write_command(0x38);  

    write_command(0x0c);  

    //write_command(0x06); //写字符后地址指针加一  

    write_command(0x01);  

  

    TMOD = 0x02;  

    TH0 = 6;  

    TL0 = 6;  

    EA = 1;  

    ET0 = 1;  

    TR0 = 1;  

  

/*时分秒*/   

    lcd_post(00); write_data(Zifu[h/10]);  

    lcd_post(01); write_data(Zifu[h%10]);  

  

    lcd_post(02); write_data(‘:‘);  

  

    lcd_post(03); write_data(Zifu[m/10]);  

    lcd_post(04); write_data(Zifu[m%10]);  

  

    lcd_post(05); write_data(‘:‘);  

  

    lcd_post(06); write_data(Zifu[s/10]);  

    lcd_post(07); write_data(Zifu[s%10]);  

  

/*年月日*/  

    lcd_post(16); write_data(Zifu[year/1000]);  

    lcd_post(17); write_data(Zifu[(year%1000)/100]);  

    lcd_post(18); write_data(Zifu[(year%100)/10]);  

    lcd_post(19); write_data(Zifu[year%10]);  

  

    lcd_post(110); write_data(‘-‘);  

  

    lcd_post(111); write_data(Zifu[month/10]);  

    lcd_post(112); write_data(Zifu[month%10]);  

  

    lcd_post(113); write_data(‘-‘);  

  

    lcd_post(114); write_data(Zifu[day/10]);  

    lcd_post(115); write_data(Zifu[day%10]);  

}  

  

void di(){  

    beep=0; delay_1ms(100); beep=1;  

}  

  

void keyscan(){  

    if(key_A==0){  

        delay_1ms(3);  

        if(key_A==0){  

            A_num++;      

            di();  

            switch(A_num){  

                case 1:                           //时  

                    TR0=0;                          

                    lcd_post(01);  

                    write_command(0x0f);  

                    break;  

                case 2:lcd_post(04);break;       //分  

                case 3:lcd_

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      20680  2018-10-17 13:24  软件\clock

     文件       2030  2018-09-18 17:23  软件\clock.A51

     文件       6782  2018-09-18 20:26  软件\clock.c

     文件       6516  2018-10-17 13:24  软件\clock.hex

     文件         49  2018-10-17 13:24  软件\clock.lnp

     文件      17388  2018-09-18 20:16  软件\clock.LST

     文件      28365  2018-10-17 13:24  软件\clock.M51

     文件      11467  2018-10-17 13:24  软件\clock.plg

    .......     57112  2018-10-17 13:25  软件\clock.uvopt

    .......     13242  2018-10-08 13:08  软件\clock.uvproj

     文件       5893  2018-09-25 19:44  软件\clock2.c

     文件      12333  2018-09-25 19:44  软件\clock2.LST

     文件      21359  2018-09-25 19:44  软件\clock2.OBJ

     文件      10032  2018-10-17 13:25  软件\clock_finish.c

     文件      24674  2018-10-17 13:24  软件\clock_finish.LST

     文件      25255  2018-10-17 13:24  软件\clock_finish.OBJ

    .......     58006  2018-10-16 22:41  软件\clock_uvopt.bak

    .......     13230  2018-09-25 21:59  软件\clock_uvproj.bak

     文件       6376  2009-05-07 14:37  软件\STARTUP.A51

     文件      14063  2018-09-18 17:24  软件\STARTUP.LST

     文件        749  2018-09-18 17:24  软件\STARTUP.OBJ

     文件      12291  2018-10-16 22:36  软件\新宇.c

     文件      30922  2018-10-16 21:14  软件\新宇.LST

     文件      23762  2018-10-16 21:14  软件\新宇.OBJ

     文件        517  2018-10-16 20:31  软件\星期.c

     文件     115434  2018-10-16 22:36  硬件\clock.DSN

     文件        742  2018-10-19 15:52  硬件\clock.PWI

     文件     115434  2018-10-08 13:08  硬件\Last Loaded clock.DBK

     目录          0  2018-10-17 13:25  软件

     目录          0  2018-10-19 15:52  硬件

............此处省略3个文件信息

评论

共有 条评论