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

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

QQ登錄

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

搜索
查看: 4403|回復(fù): 2
收起左側(cè)

PWM控制亮度的流水燈c51程序

[復(fù)制鏈接]
ID:91350 發(fā)表于 2015-10-1 00:20 | 顯示全部樓層 |閱讀模式


#include <Reg52.h>

//--重定義函數(shù)變量--//
#define uchar unsigned char
#define uint  unsigned int
#define ulong unsigned long
       
/* 定義常量 */
#define FOSC 12000000L                //主時(shí)鐘
#define T50us (65536-FOSC/12/1000000*50)        //12T 模式下,50us 時(shí)間的計(jì)算方法
#define T10ms (65536-FOSC/12/1000*10)                //12T 模式下,10ms 時(shí)間的計(jì)算方法

//--定義全局變量--//
uchar uTime1 = 0;                //脈沖寬度數(shù)值
uchar uMove = 0;                //移動(dòng)標(biāo)志
uchar uCount = 0;                //每 10ms 計(jì)數(shù)值
uchar LightLevel[8] = {64,32,16,8,4,2,1,0};//亮度級(jí)別表:PWM的脈沖寬度
//0、1、2、3、4、5、6、7、8、9、A、b、C、d、E、F的顯示碼
uchar code DIG_CODE[16]={0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7D, 0x07,
                         0x7F, 0x6F, 0x77, 0x7C, 0x39, 0x5E, 0x79, 0x71};

void TimeConfig();

void main(void)
{
        TimeConfig();
        while(1)
        {
                uchar Led = 0x00;                //當(dāng)前點(diǎn)亮的Led的值
                uchar i = 0;
       
                if (uCount >= 10)
                {
                        uCount = 0;
                        uMove++;
                }

                uTime1 %= 64;
                uMove %= 8;
                for(i = 0; i < 8; i++)
                {
                        if (uTime1 < LightLevel[(i+uMove)%8])       
                                Led |= 0x01 << i;
                        else
                                Led &= ~(0x01 << i);
                }
                P0 = Led;
        }
}

void TimeConfig()
{
        TMOD = 0x11;                //設(shè)置定時(shí)計(jì)數(shù)器0和定時(shí)計(jì)數(shù)器1工作模式1

        //--定時(shí)器0賦初始值,12MHZ下定時(shí)10ms--//  
        TL0 = T10ms;
        TH0 = T10ms >> 8;

        //--定時(shí)器1賦初始值,12MHZ下定時(shí)50us--//  
        TL1 = T50us;
        TH1 = T50us >> 8;

        TF0 = 0;                //清除TF0標(biāo)志
        ET0 = 1;                //開(kāi)啟定時(shí)器0中斷

        TF1 = 0;                //清除TF1標(biāo)志
        ET1 = 1;                //開(kāi)啟定時(shí)器1中斷
       
        EA  = 1;
        TR0 = 1;                //開(kāi)啟定時(shí)器 0       
        TR1 = 1;                //開(kāi)啟定時(shí)器        1
}

void Time0(void) interrupt 1    //0:外部中斷1; 1:定時(shí)器0中斷; 2:外部中斷2; 3:定時(shí)器1中斷; 4:串口中斷
{
        TL0 = T10ms;  //重新賦初值
        TH0 = T10ms >> 8;
       
        uCount++;
}

void Time1(void) interrupt 3    //0:外部中斷1; 1:定時(shí)器0中斷; 2:外部中斷2; 3:定時(shí)器1中斷; 4:串口中斷
{
        TL1 = T50us;  //重新賦初值
        TH1 = T50us >> 8;
       
        uTime1++;
}



回復(fù)

使用道具 舉報(bào)

ID:54731 發(fā)表于 2015-10-1 11:18 | 顯示全部樓層
謝謝樓主:資料很不錯(cuò)的,分享是一種美德
回復(fù)

使用道具 舉報(bào)

無(wú)效樓層,該帖已經(jīng)被刪除
ID:643751 發(fā)表于 2020-2-18 21:34 | 顯示全部樓層
雖然有一些代碼沒(méi)看懂 不過(guò)看了個(gè)大體流程 等徹底學(xué)完C之后再來(lái)看
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 久草热播 | 在线欧美亚洲 | 久久精品一区二区视频 | 亚洲午夜精品在线观看 | 亚洲91视频 | 精品一区电影 | 国产精品毛片一区二区在线看 | 黄网免费| 99久久精品一区二区成人 | 久久99深爱久久99精品 | 久久新视频 | 精品在线99 | 999久久久久久久久6666 | 亚洲精选一区 | 午夜欧美一区二区三区在线播放 | 国产一区三区视频 | 福利网站导航 | 亚洲人成人一区二区在线观看 | 国产精品久久久久久久久久免费看 | 久久精品中文字幕 | 人人干在线视频 | 成人妇女免费播放久久久 | 亚洲三级国产 | 91国语清晰打电话对白 | 中文字幕视频在线观看免费 | 自拍偷拍欧美 | 国产成人精品一区二区三区 | 国产一级一级毛片 | 午夜精品久久久久久久久久久久久 | 国产精品18久久久久久久 | 日韩av在线不卡 | 成人午夜电影在线观看 | 亚洲精品一区久久久久久 | 精品日韩一区二区三区av动图 | 在线精品一区二区三区 | 久久久噜噜噜久久中文字幕色伊伊 | 伊人性伊人情综合网 | 国产成人精品午夜视频免费 | 伊人网在线看 | 97精品国产97久久久久久免费 | 日韩午夜激情 |