找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

如果你自認為高手就來試試這個!

[復制鏈接]
跳轉到指定樓層
樓主
ID:3619 發(fā)表于 2008-8-25 21:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
最簡單的流水肯定難不倒自認為高手的您啦,題目也是非常的簡單,8個流水燈,要求第一個1/8亮,第二個2/8亮,第三個3/8亮第四個4/8亮,一直到第八個8/8亮也就是全亮!也許您說了,單片機是數(shù)字電路,沒有模擬的信號,不可能作到半亮半不亮的狀態(tài),其實也不完全是這個樣子的.好好想辦法還是有的!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:4574 發(fā)表于 2008-8-25 23:43 | 只看該作者
我不是什么高手,但感覺該題不是很難,
可以使用2 個不同的變量,一個控制8個流水燈的公共線電源,另一個變量控制相應部分的另一端就可以了吧
就象動態(tài)控制LED顯示一樣。
  
回復

使用道具 舉報

板凳
ID:4611 發(fā)表于 2008-8-27 14:37 | 只看該作者

可不可以用串電阻限流的方法!就好像電氣工程里電動機串電阻降壓啟動那樣? 有時間試試!樓主應該給點提示啊!

回復

使用道具 舉報

地板
ID:4649 發(fā)表于 2008-8-28 10:28 | 只看該作者
用方波占空比來控制LED亮度  LED視頻大屏幕就是這樣控制的
回復

使用道具 舉報

5#
ID:3271 發(fā)表于 2008-8-28 12:36 | 只看該作者
PWM技術
回復

使用道具 舉報

6#
ID:4689 發(fā)表于 2008-8-29 19:28 | 只看該作者
看看
回復

使用道具 舉報

7#
ID:5074 發(fā)表于 2008-9-8 16:55 | 只看該作者
其實我覺得用動態(tài)掃描就OK,
控制好亮燈的時間長度和滅燈的時間長度,
就應該可以控制亮度
回復

使用道具 舉報

8#
ID:5141 發(fā)表于 2008-9-10 10:52 | 只看該作者
看不懂  不過 過幾天就會了
回復

使用道具 舉報

9#
ID:891089 發(fā)表于 2021-4-9 11:22 | 只看該作者
pwm正解
回復

使用道具 舉報

10#
ID:856401 發(fā)表于 2021-4-10 07:59 來自手機 | 只看該作者
PWM脈寬調制
回復

使用道具 舉報

11#
ID:347856 發(fā)表于 2021-4-11 20:59 | 只看該作者
#include <REG52.H>
#define uchar unsigned char
#define uint unsigned int

sbit light1=P1^7;
sbit light2=P1^6;
sbit light3=P1^5;
sbit light4=P1^4;
sbit light5=P1^3;
sbit light6=P1^2;
sbit light7=P1^1;
sbit light8=P1^0;
                                                                                                                                                                                                                                                                                                                                                                               

void Timer0 () interrupt 1
{
    static uchar count;
        TH0=(65536-4500)/256; //裝初值12M晶振定時50ms數(shù)為5000
        TL0=(65536-4500)%256;
        count++;

        if(count==1){light1=1;light2=1;light3=1;light4=1;light5=1;light6=1;light7=1;light8=0;}         
        if(count==2){light1=1;light2=0;light3=0;light4=0;light5=0;light6=0;light7=0;light8=0;}  
        if(count==3){light1=1;light2=1;light3=1;light4=1;light5=1;light6=0;light7=0;light8=0;}  
        if(count==4){light1=0;light2=1;light3=0;light4=0;light5=0;light6=0;light7=0;light8=0;}  
        if(count==5){light1=1;light2=0;light3=1;light4=1;light5=1;light6=1;light7=0;light8=0;}  
        if(count==6){light1=1;light2=1;light3=0;light4=0;light5=0;light6=0;light7=0;light8=0;}  
        if(count==7){light1=1;light2=1;light3=1;light4=1;light5=0;light6=0;light7=0;light8=0;}  
        if(count==8){light1=1;light2=1;light3=1;light4=0;light5=0;light6=0;light7=0;light8=0;count=0;}  
}


void main()
{
        TMOD=0x11;        //將定時器0設置成工作方式1
        TH0=(65536-4500)/256; //裝初值12M晶振定時50ms數(shù)為5000
        TL0=(65536-4500)%256;


        EA=1; //開總中斷
        ET0=1; //開中斷
        TR0=1;//開關計時器0

        while(1)
   {

    }
}

評分

參與人數(shù) 1黑幣 +20 收起 理由
admin + 20 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

12#
ID:69115 發(fā)表于 2021-4-12 00:34 | 只看該作者
用PWM方法,8級分辨率就行了.
koboman 的PWM寫的不錯.
回復

使用道具 舉報

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

本版積分規(guī)則

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

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

快速回復 返回頂部 返回列表