久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 1919|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

怎么讓單片機(jī)計(jì)時(shí)器改成倒計(jì)時(shí),可以通過(guò)獨(dú)立按鍵設(shè)置倒計(jì)時(shí)(用的是普中板)

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1094758 發(fā)表于 2023-9-28 14:49 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include <reg52.h>

typedef unsigned int u16;
typedef unsigned char u8;

#define KEY_PRESS1 1
#define KEY_PRESS2 2
#define KEY_PRESS3 3
#define KEY_PRESS4 4
#define KEY_UNPRESS 0

#define SMG_SORT P0   
#define LED_SORT P2

void delay_10us(u16 ten_us)
{
     while(ten_us--);
}

u8 NUM_SMG[] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
                0x7f,0x6f,0x40};
u8 SELECT_SMG[] = {0x00,0x04,0x08,0x0c,0x10,0x14,0x18,0x1c};

void time0_init()
{
    TMOD |= 0x01;  //設(shè)置工作方式;定時(shí)器0的工作模式1
    TH0 = 0xFC;
    TL0 = 0x18;
    EA = 1;        //中斷總開(kāi)關(guān)
    ET0 = 1;    //定時(shí)器0允許位
    TR0 = 1;    //打開(kāi)定時(shí)器0
}

sbit LED1 = P2^0;
static u16 n = 0;

sbit KEY1 = P3^1;
sbit KEY2 = P3^0;
sbit KEY3 = P3^2;
sbit KEY4 = P3^3;

static u8 hour = 0;
static u8 min = 0;
static u8 time = 0;
static u8 scan_state = 0;

void Show_time(u8 ti, u8 loc)
{
    u8 a = ti/10;
    u8 b = ti%10;
    SMG_SORT = NUM_SMG;
   
P2 = SELECT_SMG[loc];
    delay_10us(100);

    SMG_SORT = NUM_SMG[a];
    P2 = SELECT_SMG[loc+1];
    delay_10us(100);
}

void show_line()
{
    SMG_SORT = 0x40;
    P2 = SELECT_SMG[2];
    delay_10us(100);

    SMG_SORT = 0x40;
    P2 = SELECT_SMG[5];
    delay_10us(100);
}

u8 key_scan() // 返回按鍵的狀態(tài)  0  1  2  3  4
{
        if(scan_state==0&KEY1==0||KEY2==0||KEY3==0||KEY4==0)
        {
        delay_10us(1000);
        scan_state = 1;
        if(KEY1==0 )return 1;
        if(KEY2==0 )return 1;
        if(KEY3==0 )return 1;
        if(KEY4==0 )return 1;
        }
         else if(KEY1==1&KEY2==1&KEY3==1&KEY4==1)
          {
          scan_state=0;      
          }
          return 1;
}

void time_ADD()
{
    if(KEY4==0)
    {

        delay_10us(20);
        while(!KEY4);
            Show_time();
            time++;
            if(time>59)
            {
                min++;
                time = 0;
                if(min>59)
                {
                    hour++;
                    min = 0;
                }
            }
    }
}
void time_SUB()
{
    if(KEY3==0)
    {
        delay_10us(20);
        while(!KEY3);        //判斷按鍵是否松手
            Show_time();
            if(min>0||time>0)
            {
                time--;
                if(time==0)
                {
                    min--;
                    time=59;
                }
            }   
    }
}

void main()
{
    time0_init();
    LED1 =0;
    while(1)
    {
        Show_time(time,0);
        Show_time(min,3);
        Show_time(hour,6);
        show_line();

    }
}



void time0() interrupt 1
{
    //注:每次進(jìn)入中斷意味著定時(shí)/和計(jì)數(shù)器已經(jīng)溢出,若要繼續(xù)重復(fù)工作,需要重新賦值
    TH0 = 0xFC;      
    TL0 = 0x18;
    n++;
    if(n==1000)
    {
        n = 0;
        time += 1;
        if(time >= 59)
        {
            time = 0;
            min +=1;
            if(min == 60)
            {
                min = 0;
                hour += 1;
                if(hour == 24)
                {
                    hour = 0;
                }
            }
        }
    }
}


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 亚洲欧美日韩国产综合 | 国产精品五月天 | 中文在线а√在线8 | 中文字幕在线网 | 亚洲天堂一区二区 | 亚洲一区二区三区免费视频 | www.av在线 | 福利网站在线观看 | 91av在线免费观看 | 精品国产一区二区三区久久久久久 | 美女久久久久 | 福利av在线 | 黑人成人网 | 国产美女自拍视频 | 奇米视频777| 国产精品国产精品国产专区不片 | 久久精品国产v日韩v亚洲 | 国产羞羞视频在线观看 | 日韩国产中文字幕 | 亚洲第一视频网站 | 午夜视频网站 | 国产精品片aa在线观看 | 成年人在线观看视频 | 99久久免费精品国产男女高不卡 | 日韩中文一区 | 欧美视频精品 | 欧美在线视频观看 | 成人久草 | 婷婷五月色综合 | 免费看黄视频网站 | 亚洲精品久久国产高清情趣图文 | 99在线免费观看视频 | 伊人网综合在线观看 | 龙珠z国语版在线观看 | 亚洲高清视频在线 | 亚洲精品第一国产综合野 | 中文字字幕一区二区三区四区五区 | 亚洲国产精品第一区二区 | 91精品国产乱码久久久久久 | 伦理午夜电影免费观看 | 亚洲一区二区在线播放 |