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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2005|回復: 1
打印 上一主題 下一主題
收起左側

求一個stc8G1K08a單片機跑馬燈開暗到亮慢到快,關亮到暗快到滅,可切換亮燈模式

[復制鏈接]
跳轉到指定樓層
樓主
ID:1002664 發表于 2022-1-27 23:54 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
50黑幣
本帖最后由 菜鳥一個622 于 2022-1-28 15:58 編輯

現大佬教51以有,用在8g1k08a上有更好的嗎

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

使用道具 舉報

沙發
ID:1002664 發表于 2022-1-28 15:57 | 只看該作者
#include <STC8G.h>

typedef unsigned char u8;  //0 to 255
typedef unsigned int u16;  //0 to 65535
typedef unsigned long u32;  //0 to 4294967295
sbit key1 = P5 ^ 4;
u16 TMR_XX_ACC;
u16 TMR_XX_PRE = 500;
u8 PWM = 1;
u8 index = 0;
u8 MODE = 1;
bit Power_On = 1;
unsigned char dat1[4] = {0xfe, 0xfd, 0xfb, 0xf7};
unsigned char dat2[4] = {0xfc, 0xf9, 0xf3, 0xf6};
unsigned char dat3[4] = {0xf1, 0xf2, 0xf4, 0xf8};

void key_Proc()
{
    static u16 Delay_XD = 0;    //消抖計數
    static u16 Min_T = 25;
    static u16 Max_T = 2500;

    if(!key1)
    {
        if(Delay_XD < 0xFFFF)Delay_XD++;
       //else Delay_XD = 0;       //連按功能
        if(Delay_XD == Max_T)      //長按
        {
//            MODE = ++MODE % 3;
                                        ++MODE;
                                        if(MODE>3)
                                                MODE=1;
        }
    }
    else            //按鍵抬起
    {
        if(Delay_XD > Min_T && Delay_XD < Max_T)      //短按
        {
            Power_On ^= 1;
        }
        Delay_XD = 0;    //Delay_XD清0
    }
}
void delayus(u8 x)
{
    while(x--);
}
void main()
{
    while (1)
    {   
        if(PWM > 0) {
            switch (MODE)
            {
            case 0:
                P3 = 0xff;
                break;
            case 1:
                P3 = dat1[index];
                break;
            case 2:
                P3 = dat2[index];
                break;
                                                case 3:
                P3 = dat3[index];
                break;
            }
            delayus(PWM);
        }
        P3 = 0xFF;
        delayus(100 - PWM);
        key_Proc();
        if(++TMR_XX_ACC >= TMR_XX_PRE)
        {   TMR_XX_ACC = 0;
            if(Power_On)
            {
                if(PWM < 99) PWM++;
            } else {
                if(PWM > 0) PWM--;
            }
            index = ++index % 4;
            if(index == 0)
                if(Power_On)
                {
                    if(TMR_XX_PRE > 50) //固定到快
                    {
                        TMR_XX_PRE -= 50;
                    }
                } else {
                    if(TMR_XX_PRE < 500) //固定到快
                    {
                        TMR_XX_PRE += 50;
                    }
                }
        }
    }
}
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一级淫片007 | 国产不卡在线观看 | 一区二区三区视频在线观看 | 日韩欧美在线免费 | 成人午夜精品 | 亚洲喷水| 一本一道久久a久久精品综合蜜臀 | 在线观看黄色电影 | www..com18午夜观看 | 伊人网站视频 | 日韩成人在线免费视频 | 成人精品在线视频 | 欧美久久久久久 | 伊人在线 | 91精品国产一区二区 | 欧美日韩午夜精品 | www.中文字幕av | 成人伊人网 | 免费国产精品久久久久久 | 久久一区二区三区四区 | 久久草视频| 97精品国产97久久久久久免费 | 天天av综合 | 天天拍天天色 | 91精品www| 色婷婷一区二区三区四区 | 男女午夜激情视频 | 爱综合| a免费在线 | 国产欧美一区二区三区另类精品 | 91九色视频 | 国产一区日韩在线 | 亚洲高清在线免费观看 | 播放一级毛片 | 日韩av在线一区二区三区 | 二区不卡 | 亚洲综合小视频 | 日本超碰 | 91人人视频在线观看 | 草草视频在线播放 | 中文字幕免费观看 |