ZW521521_ 2021-08-26 15:41 采纳率: 100%
浏览 39
已结题

单片机自学中遇到的问题


#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit dula=P2^6;
sbit wela=P2^7;
sbit RS=P3^5;
sbit EN=P3^4;
sbit RW=P3^6;
uchar count,shi,fen,miao;
uchar code table[]="  2021-8-26 THU";
uchar code table1[]="    23:59:30";
void delay(uint z)
{
    uint x,y;
    for(x=z;x>0;x--)
    for(y=110;y>0;y--);
}

void write_com(uchar com)
{
    RS=0;
    RW=0;
    EN=1;
    P0=com;
    delay(5);
    EN=1;
    delay(5);
    EN=0;
}

void write_date(uchar date)
{
    RS=1;
    RW=0;
    EN=0;
    P0=date;
    delay(5);
    EN=1;
    delay(5);
    EN=0;
}

void init()
{
    uchar num;
    dula=0;
    wela=0;
    EN=0;
    write_com(0x38);
    write_com(0x0c);
    write_com(0x06);
    write_com(0x01);
    write_com(0x80);
    for(num=0;num<15;num++)
        {
            write_date(table[num]);
            delay(20);
        }    
        write_com(0x80+0X40);
    for(num=0;num<12;num++)
        {
            write_date(table1[num]);
            delay(20);
        }    
        TMOD=0X01;
        TH0=(65536-50000)/256;
        TL0=(65536-50000)%256;
        EA=1;
        ET0=1;
        TR0=1;
}

void write_sfm(uchar add,uchar date)//дʮ·ÖÃë
{
    uchar shi,ge;
    shi=date/10;
    ge=date%10;
    write_com(0x80+0x40+add);
    write_date(0x30+shi);
    write_date(0x30+ge);
}

void main()
{
    init();
    while(1)
    {
    if(count==20)
        {
            count=0;
            miao++;
            if(miao==60)
            {
                miao=0;
                fen++;
                if(fen==60)
                {
                    fen=0;
                    shi++;
                    if(shi==24)
                        {
                            shi=0;
                        }
                    write_sfm(4,shi);
                }
                write_sfm(7,fen);
            }
            write_sfm(10,miao);
        }
    }
}

void timer0() interrupt 1
{
    TH0=(65536-50000)/256;
    TL0=(65536-50000)%256;
    count++;
}




为什么59分59秒不进位,分钟位变成了01?

  • 写回答

2条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      问题事件

      • 系统已结题 9月20日
      • 已采纳回答 9月12日
      • 创建了问题 8月26日

      悬赏问题

      • ¥20 python跨服务器实现复制 ,剪切的功能需求
      • ¥15 R语言,单因素cox检验,时间分层后,使用coz.zph()函数再次ph假设检验时报错,如何解决?
      • ¥15 关于#C语言冒泡排序型#的问题,如何解决?
      • ¥15 如何预处理存在负值的样本数据,使其能够全都成为正的
      • ¥15 SW画图拖影,平滑处理如何关闭
      • ¥15 请问怎么通过css改变图片颜色
      • ¥15 Blender: auto rig pro骨骼动画导出后变形穿模
      • ¥15 C51单片机的设计思路哈
      • ¥15 Linux脏牛提权漏洞
      • ¥15 为何我用uni-data-checkbox 标签在APP里调试无法显示?