⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 51单片机最小系统用的C语言程序
💻 C
字号:
//******************************
//本程序所使用到的头文件
//******************************
#define main_c
#include "main.h"


//******************************
//主程序开始
//******************************
void main(void)
{
	uint i;
	uchar j;
	porta=0x00;
	portb=0xff;
	bitset(porta,3);
	bitclr(portb,4);
	award_num[1]=Rand();
	j=Check(i);
////////////////////
	Power_set();
    hour=0x13;
    minute=0x14;
//    second=0x00;
    while(1)
    {	
        Timer();
        Keyscan();
        Display();
        Clock();
		//
		if(sta>0x10){soft_reset();}	//软件复位示例
		//
		if(sta==sta2){sta1=sta;}	//important data 2:1
		else if(sta1==sta2){sta=sta1;}
		else if(sta==sta1){sta2=sta;}
		else{sta=sta1=sta2=0x00;}
        switch(sta)
        {
        case 0:     /*时钟走时 */
            dsbuf[0]=hour;
            dsbuf[1]=minute;
            if(seccounter&0x80)
            {dspoint|=0x06;}
            else
            {dspoint&=0xf9;}
            if(key.b.k3)
            {
                dspoint=0xc6;
                sta=0x02;
            }
            if(key.b.k0)
            {
                dspoint=0x06;
                sta=0x01;
            }
        break;
        case 1:     /*时钟显示秒*/
            dsbuf[0]=0xaa;
            dsbuf[1]=second;
            if(key.b.k0)
            {
                sta=0x00;
            }
        break;
        break;
        case 2:     /*时钟调整*/
            if(key.b.k2)
            {
                if(dspoint==0xc6)
                {
                    dsbuf[1]++;
                    if((dsbuf[1]&0x0f)==0x0a)
                    {
                        dsbuf[1]+=0x06;
                        if(dsbuf[1]==0x60)
                        {dsbuf[1]=0x00;}
                    }
                }
                else
                {
                    dsbuf[0]++;
                    if((dsbuf[0]&0x0f)==0x0a)
                    {
                        dsbuf[0]+=0x06;
                    }
                    if(dsbuf[0]==0x24)
                    {dsbuf[0]=0x00;}
                }
            }
            if(key.b.k1)
            {
                if(dspoint==0xc6)
                {
                    dsbuf[1]--;
                    if((dsbuf[1]&0x0f)==0x0f)
                    {
                        dsbuf[1]-=0x06;
                        if(dsbuf[1]==0xf9)
                        {dsbuf[1]=0x59;}
                    }
                }
                else
                {
                    dsbuf[0]--;
                    if((dsbuf[0]&0x0f)==0x0f)
                    {
                        dsbuf[0]-=0x06;
                        if(dsbuf[0]==0xf9)
                        {dsbuf[0]=0x23;}
                    }
                }
            }
            if(key.b.k0)
            {
                if(dspoint==0x36)
                {dspoint=0xc6;}
                else{dspoint=0x36;}
            }
            if(key.b.k3)
            {
                hour=dsbuf[0];
                minute=dsbuf[1];
                dspoint&=0x0f;
                sta=0x00;
            }
        break;
        }
        sta1=sta2=sta;
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -