標(biāo)題: 求助單片機(jī)簡單編程 [打印本頁]

作者: q3075105    時(shí)間: 2017-4-20 13:38
標(biāo)題: 求助單片機(jī)簡單編程
想弄成,按燈的數(shù)字順序點(diǎn)亮,然后閃爍5秒,再全亮3秒,但是,,學(xué)藝不精,就要交作業(yè)了。。求大神幫修改些程序,大二下剛開始學(xué)單片機(jī),,有些符號(hào)不是很懂,可以改改我能看的懂的最好啦, ,,防老師提問。。。

)0W{751[}HF~GV1T{}]6S9X.png (89.65 KB, 下載次數(shù): 89)

)0W{751[}HF~GV1T{}]6S9X.png

4}5724XY{TQ~88`6@1887MY.png (111.18 KB, 下載次數(shù): 85)

4}5724XY{TQ~88`6@1887MY.png

作業(yè).zip

58.4 KB, 下載次數(shù): 6


作者: q3075105    時(shí)間: 2017-4-20 13:41
#include <reg51.h>
#define unsigned int

sbit S1=P1^7;                                                                 //按下啟動(dòng)開關(guān)
void delay(ms)                                          //延時(shí)函數(shù)
{
    int i;
        while(ms--)
        {
                 for(i=0;i<120;i++);
        }
}
void main()
{
    int i=0,run=0;                                                 //定義變量
       
       
        while(1)
        {                                                                         
             if(S1==0)                                                 //延時(shí)去抖動(dòng)
                 {
                   delay(20);
                   if(S1==0)
                   {  
                      for(i=0;i<7;i++)
                             {
                             P1=P1&(~(1<<i));              //從P1.0口依次輸出點(diǎn)亮,L依次亮
                                   delay(50);
                          }
                             for(i=0;i<8;i++)
                          {
                                   P3=P3&(~(1<<i));                           //從P3.0口依次輸出點(diǎn)亮  E依次亮
                                 delay(50);
                          }
                             for(i=0;i<8;i++)
                          {
                                   P2=P2&(~(1<<i));                           //從2.0口依次輸出點(diǎn)亮   E依次亮
                                   delay(50);
                          }
                          for(i=0;i<8;i++)                                  
                          {
                             P0=P0&(~(1<<i));                           //從0.0口依次輸出點(diǎn)亮   D依次亮
                                 delay(50)        ;
                          }
                          delay(200);
                          for(i=0;i<8;i++)
                      {
                                 P1=0xff;P2=0xff;P3=0xff;P0=0xff;
                                 delay(250);
                                 P1=0x80;P2=0x00;P3=0x00;P0=0x00;
                                 delay(250);
                          }
                          
                                 P0=0xff;P1=0xff;P2=0xff;P3=0xff;          //端口設(shè)置為高電平
                             delay(500);
                   }
                 }

        }



}
作者: q3075105    時(shí)間: 2017-4-20 13:42
按燈的數(shù)字順序點(diǎn)亮,然后閃爍5秒,滅一秒,再從左往右全亮,L- E- D  ,后再全亮3秒
作者: ahshmj    時(shí)間: 2017-4-20 14:37
又幫你作弊的嫌疑。
作者: 374155928    時(shí)間: 2017-4-20 14:58
這個(gè)多花時(shí)間學(xué)習(xí) 還是不難的
作者: zl2168    時(shí)間: 2017-4-20 16:01
本帖最后由 zl2168 于 2017-4-20 16:05 編輯

隨便你怎么閃,只要編制相應(yīng)的亮燈數(shù)組。
實(shí)例9  鍵控花樣循環(huán)燈



花樣循環(huán)1


從兩邊到中心依次點(diǎn)亮,每次增加1個(gè),直至全亮;


從兩邊到中心依次暗滅,每次減少1個(gè),直至全暗;


閃爍1次;


重復(fù)上述過程,不斷循環(huán)(亮燈間隔0.5秒)。


花樣循環(huán)2


從中心到兩邊,每次亮2個(gè),并重復(fù)一次;


從中心到兩邊,每次亮3個(gè),并重復(fù)一次;


每次亮4個(gè),并重復(fù)一次;


重復(fù)上述過程,不斷循環(huán)(亮燈間隔0.5秒)。


花樣循環(huán)3


每次間隔亮4個(gè),并重復(fù)一次;


從上至下,每次亮2個(gè);


從上至下,每次增加亮2個(gè),直至全亮;


閃爍2次;


重復(fù)上述過程,不斷循環(huán)(亮燈間隔0.5秒)。


花樣循環(huán)4


全亮;


從上至下依次暗滅,每次減少一個(gè),直至全滅;


從上至下依次點(diǎn)亮,每次增加一個(gè),直至全亮;


重復(fù)上述過程,不斷循環(huán)(亮燈間隔0.5秒)。



Proteus仿真一下,確認(rèn)有效。
實(shí)例9 鍵控花樣循環(huán)燈.rar (36.47 KB, 下載次數(shù): 5)


以上摘自張志良編著《80C51單片機(jī)Proteus仿真設(shè)計(jì)實(shí)例教程》清華大學(xué)出版社ISBN 978-7-302-41682-1。書中電路和程序設(shè)計(jì)有詳細(xì)說明,程序語句條條有注解。




作者: q3075105    時(shí)間: 2017-4-20 17:31
ahshmj 發(fā)表于 2017-4-20 14:37
又幫你作弊的嫌疑。

只是個(gè)作業(yè)。。。怎么能算作弊呢。。。。。
作者: ahshmj    時(shí)間: 2017-4-21 07:04
q3075105 發(fā)表于 2017-4-20 17:31
只是個(gè)作業(yè)。。。怎么能算作弊呢。。。。。

好吧,你說的是。
作者: hgig    時(shí)間: 2022-11-9 15:27
解決了嗎?求教程




歡迎光臨 (http://www.torrancerestoration.com/bbs/) Powered by Discuz! X3.1