您当前的位置:五五电子网电子知识单片机-工控设备51单片机PCF8563时钟+AT24C02+LCD12864显示时钟程序 正文
PCF8563时钟+AT24C02+LCD12864显示时钟程序

PCF8563时钟+AT24C02+LCD12864显示时钟程序

点击数:7467 次   录入时间:03-04 11:59:53   整理:http://www.55dianzi.com   51单片机
                {CS1=1;CS2=0;}
                else
                {break;}
            }
            lcdwrite_cmd(i|0xb8);
            lcdwrite_cmd(Nowcol|0x40);
            lcdwrite_dat(ASC12[j]);
            lcd_busy();
            lcdwrite_cmd((i+1)|0xb8);    //到下一页
            lcdwrite_cmd(Nowcol|0x40);
            tmp1 = lcdread_dat();
            lcdwrite_cmd(Nowcol|0x40);
            lcdwrite_dat((ASC12[j+6]&0x0f)|(tmp1&0xf0));
            j++;
            Nowcol++;
            k--;
        }
    }
    else
    {
        switch(Nowrow)
        {
            case 1: i=1;break;
            default: i=4;
        }
        while(k!=0)
        {
            if(Nowcol<0x40)
            {CS1=0;CS2=1;}
            else
            {
                if(Nowcol<0x80)
                {CS1=1;CS2=0;}
                else
                {break;}
            }
            lcdwrite_cmd(i|0xb8);
            lcdwrite_cmd(Nowcol|0x40);
            tmp1=lcdread_dat();
            tmp1=tmp1&0x0f;
            tmp1=(ASC12[j]<<4)|tmp1;
            tmp2=(ASC12[j+6]<<4)|(ASC12[j]>>4);
            lcdwrite_cmd(Nowcol|0x40);
            lcdwrite_dat(tmp1);
            lcd_busy();
            lcdwrite_cmd((i+1)|0xb8);
            lcdwrite_cmd(Nowcol|0x40);
            lcdwrite_dat(tmp2);
            j++;
            Nowcol++;
            k--;
        }
    }            
}

        



//以动画的形式显示公司的标志,入口为在水平的第几个位置,现把它做,从32到1,由2张32X16的图组成
void flashlogo(Uchar Bmpcol)
{
    Uchar i,j,p;
//把当前要用的区间清空    
    CS1=0,CS2=1;
    lcdwrite_cmd(0xbe);
    lcdwrite_cmd(0x40);
    for(i=64;i>0;i--)
    {
        lcdwrite_dat(0x00);
        lcd_busy();
    }
    lcdwrite_cmd(0xbf);
    lcdwrite_cmd(0x40);
    for(i=64;i>0;i--)
    {
        lcdwrite_dat(0x00);
        lcd_busy();
    }
//开始写要设定的数据(左半边)    
    lcdwrite_cmd(0xbe);
    lcdwrite_cmd(0x40);
    j=Bmpcol;
    for(;j<=32;j++)
    {
        lcdwrite_dat(Bmp1zk[j-1]);
        lcd_busy();
    }
    lcdwrite_cmd(0xbf);
    lcdwrite_cmd(0x40);
    j=Bmpcol;
    for(;j<=32;j++)
    {
        lcdwrite_dat(Bmp1zk[j-1+32]);
        lcd_busy();
    }
//开始写要设定的数据(右半边)
    j=Bmpcol;
    lcdwrite_cmd(0xbe);
    lcdwrite_cmd((32+j-1)|0x40);
    p=0;
    for(;j<=32;j++)
    {
        lcdwrite_dat(Bmp2zk[p++]);
        lcd_busy();
    }
    j=Bmpcol;
    lcdwrite_cmd(0xbf);
    lcdwrite_cmd((32+j-1)|0x40);
    p=0;
    for(;j<=32;j++)
    {
        lcdwrite_dat(Bmp2zk[32+(p++)]);
        lcd_busy();
    }
}

//显示一幅128X64的图片,参数为图片在bmp12864放置的第几个图
void Disp128_64(Uchar BMPplace)
{
    Uchar    i,Nowcol,k;
    Uint    j;
    j=(BMPplace-1)*1024;    //计算出在图表格中的起始位置

上一页  [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12]  下一页


本文关键字:程序  51单片机单片机-工控设备 - 51单片机