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

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

QQ登錄

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

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

關(guān)于51單片機(jī)流水燈程序累加問(wèn)題

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:1054576 發(fā)表于 2023-5-21 13:46 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
51單片機(jī)流水燈
有沒(méi)有簡(jiǎn)化的辦法讓流水燈每循環(huán)1次進(jìn)行累加點(diǎn)亮最后一個(gè),最后全部點(diǎn)亮
試過(guò)<<n和>>n
試過(guò)_crol_和_cror_
后來(lái)都失敗了
最后用最簡(jiǎn)單,最粗暴的方法算是完成了
就是程序太多 雜亂,8個(gè)燈都這么多程序,如果是16個(gè)以上就沒(méi)完沒(méi)了了,有沒(méi)有什么方法簡(jiǎn)化一下


sbit  a0 = P1^0;
sbit  a1 = P1^1;
sbit  a2 = P1^2;
sbit  a3 = P1^3;
sbit  a4 = P1^4;
sbit  a5 = P1^5;
sbit  a6 = P1^6;
sbit  a7 = P1^7;
void liushuideng_LJ()
{      
    a0=0;
                yanshi(200);//延時(shí)
                a0=1;a1=0;
                yanshi(200);               
                a1=1;a2=0;
                yanshi(200);               
                a2=1;a3=0;
                yanshi(200);
                a3=1;a4=0;
                yanshi(200);
                a4=1;a5=0;
                yanshi(200);
                a5=1;a6=0;
                yanshi(200);
                a6=1;a7=0;
                yanshi(200);                       

          a0=0;
                yanshi(200);
                a0=1;a1=0;
                yanshi(200);               
                a1=1;a2=0;
                yanshi(200);               
                a2=1;a3=0;
                yanshi(200);
                a3=1;a4=0;
                yanshi(200);
                a4=1;a5=0;
                yanshi(200);
                a5=1;a6=0;
                yanshi(200);                       

          a0=0;
                yanshi(200);
                a0=1;a1=0;
                yanshi(200);               
                a1=1;a2=0;
                yanshi(200);               
                a2=1;a3=0;
                yanshi(200);
                a3=1;a4=0;
                yanshi(200);
                a4=1;a5=0;
                yanshi(200);

          a0=0;
                yanshi(200);
                a0=1;a1=0;
                yanshi(200);               
                a1=1;a2=0;
                yanshi(200);               
                a2=1;a3=0;
                yanshi(200);
                a3=1;a4=0;
                yanshi(200);

          a0=0;
                yanshi(200);
                a0=1;a1=0;
                yanshi(200);               
                a1=1;a2=0;
                yanshi(200);               
                a2=1;a3=0;
                yanshi(200);

          a0=0;
                yanshi(200);
                a0=1;a1=0;
                yanshi(200);               
                a1=1;a2=0;
                yanshi(200);               

          a0=0;
                yanshi(200);
                a0=1;a1=0;
                yanshi(200);               

          a0=0;
                yanshi(200);
    P1=0xff;
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:73992 發(fā)表于 2023-5-21 17:26 來(lái)自觸屏版 | 只看該作者
0000 0001b,左移后加1。1000 0000b,右移后加0x80。,
回復(fù)

使用道具 舉報(bào)

板凳
ID:624769 發(fā)表于 2023-5-21 18:12 | 只看該作者
unsigned char code        Head[] = {0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};
unsigned char code        Tail[] = {0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
void        lsd()
{
        char        i,j;
        j = 7;
        while(j>=0)
        {
                i = 0;
                while(i <= j)
                {
                        P0        = Head[j] & Tail[i];
                        yanshi(200);//延時(shí)
                        i++;
                }
                j--;
        }
}
回復(fù)

使用道具 舉報(bào)

地板
ID:1054576 發(fā)表于 2023-5-21 18:57 | 只看該作者
188610329 發(fā)表于 2023-5-21 18:12
unsigned char code        Head[] = {0x01,0x03,0x07,0x0f,0x1f,0x3f,0x7f,0xff};
unsigned char code        Tail[] =  ...

謝謝大佬,我剛才COPY過(guò)去試了一下 完全沒(méi)問(wèn)題,我再研究一下原理查一下資料,主要是對(duì)“&”這個(gè)符號(hào)不了解,因?yàn)槲也艑W(xué)了一個(gè)多星期。再次感謝。
回復(fù)

使用道具 舉報(bào)

5#
ID:1054576 發(fā)表于 2023-5-21 19:00 | 只看該作者
lyonkon 發(fā)表于 2023-5-21 17:26
0000 0001b,左移后加1。1000 0000b,右移后加0x80。,

很抱歉我學(xué)的不久,有點(diǎn)看不懂,不過(guò)還是謝謝您的提議,等我學(xué)多一點(diǎn)我再回顧一下。還有二樓已經(jīng)幫我解決這個(gè)問(wèn)題了。
回復(fù)

使用道具 舉報(bào)

6#
ID:996773 發(fā)表于 2023-5-22 09:33 | 只看該作者
象數(shù)碼管顯示字符一樣做個(gè)數(shù)據(jù)表不就行了,按數(shù)字查表顯示,上百個(gè)都沒(méi)有問(wèn)題,這是基本功

都要會(huì)的
回復(fù)

使用道具 舉報(bào)

7#
ID:161164 發(fā)表于 2023-5-22 09:44 | 只看該作者
  1. void main()
  2. {       
  3.         u8 i,j, temp1;
  4.     while (1)
  5.     {
  6.                 temp1 = 0;
  7.                 for(i=0;i<8;i++)
  8.                 {
  9.                         for(j=0;j<(8-i);j++)
  10.                         {
  11.                                 P0 = ~(0x01<<j | temp1);
  12.                                 delayms(100);
  13.                         }
  14.                         temp1 |= 0x80 >> i;
  15.                 }
  16.                        
  17.     }
  18. }
復(fù)制代碼
回復(fù)

使用道具 舉報(bào)

8#
ID:526543 發(fā)表于 2023-5-22 13:23 | 只看該作者
void liushuideng_LJ()
{
    unsigned char pattern = 0x01;  // 初始模式,只點(diǎn)亮第一個(gè)燈
    int i;

    for (i = 0; i < 8; i++) {
        P1 = pattern;  // 設(shè)置燈的狀態(tài)
        yanshi(200);  // 延時(shí)
        pattern <<= 1;  // 將模式左移一位,使下一個(gè)燈點(diǎn)亮
    }

    P1 = 0xFF;  // 全部燈點(diǎn)亮
}
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 一区二区三区 在线 | 天天操天天干天天透 | 日韩成人在线一区 | 国产精品自产拍 | 国产日韩一区二区三区 | 天堂av免费观看 | 在线精品一区二区 | 青青久在线视频 | chengrenzaixian| 欧美日本韩国一区二区三区 | 国产1区2区在线观看 | 国产免费一区二区 | 91在线免费观看网站 | 日韩中文欧美 | 91视频网址| 日韩精品一区二区三区在线播放 | jlzzxxxx18hd护士 | 理论片午午伦夜理片影院 | 福利在线观看 | 国产在线视频一区二区董小宛性色 | 国产精品成人一区二区三区 | 亚洲在线一区二区三区 | 精品一区二区三 | 亚洲欧美视频一区 | 亚洲精品一区av在线播放 | 看a网站 | 成人午夜激情 | 一区二区视频 | 日韩中字幕 | 中文字幕11页 | 九九热久久免费视频 | 欧美日韩视频一区二区 | 精品久久久久久久久久久下田 | 成人国产精品久久 | 免费观看成人性生生活片 | 亚洲一视频| 最新国产精品视频 | 91精品一区二区三区久久久久 | 日韩在线中文字幕 | 99热这里有精品 | 亚洲精品亚洲人成人网 |