欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

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

QQ登錄

只需一步,快速開始

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

求大神分析下代碼是如何實(shí)現(xiàn)左右流水燈的,小弟新手想不通。謝謝

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:225054 發(fā)表于 2017-8-6 14:09 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
#include<reg51.h>
typedef unsigned char uchar;
typedef unsigned int uint;
uchar i;
uchar temp;
uchar a,b;
void delay(void)
{
       ucharm,n,s;
       for(m=20;m>0;m--)
              for(n=20;n>0;n--)
                     for(s=248;s>0;s--);
}
void main(void)
{
       while(1)
       {
              temp=0xfe;
              P1=temp;
              delay();
              for(i=1;i<8;i++)
              {
                     a=temp<<i;
                     b=temp>>(8-i);
                     P1=a|b;
                     delay();
              }
              for(i=1;i<8;i++)
              {
                     a=temp>>i;


b=temp<<(8-i);
                     P1=a|b;
                     delay();
              }
       }
}
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:220770 發(fā)表于 2017-8-6 18:14 | 只看該作者
P1口驅(qū)動(dòng)8個(gè)LED.
回復(fù)

使用道具 舉報(bào)

板凳
ID:220770 發(fā)表于 2017-8-6 18:26 | 只看該作者
簡單的移位處理, 用軟件仿真看一下P1口的輸出值就很清楚了
回復(fù)

使用道具 舉報(bào)

地板
ID:225079 發(fā)表于 2017-8-6 21:11 | 只看該作者
引用intrins,里面有移位的函數(shù)直接用,也可以在你的這種方法左右移動(dòng)每次移動(dòng)移位,之后在自加一,也可行
回復(fù)

使用道具 舉報(bào)

5#
ID:111634 發(fā)表于 2017-8-6 23:09 | 只看該作者
左右流水燈即左右各4個(gè)流水燈活左右各n 個(gè)流水燈,依次亮燈或變化。
回復(fù)

使用道具 舉報(bào)

6#
ID:225403 發(fā)表于 2017-8-7 10:48 | 只看該作者
移位指令控制端口的高電平
回復(fù)

使用道具 舉報(bào)

7#
ID:225422 發(fā)表于 2017-8-7 12:25 | 只看該作者
原理啊,就是輪流點(diǎn)亮燈,就是這么簡單而已,先第一個(gè)亮,然后第二個(gè)亮,一次輪流
回復(fù)

使用道具 舉報(bào)

8#
ID:224682 發(fā)表于 2017-8-7 14:05 | 只看該作者
用P1口驅(qū)動(dòng)8個(gè)LED,第一個(gè)for循環(huán)是將所有的燈點(diǎn)亮,第一個(gè)for循環(huán)是依次將其中一個(gè)燈滅掉。
回復(fù)

使用道具 舉報(bào)

9#
ID:225460 發(fā)表于 2017-8-7 15:10 | 只看該作者
從程序來看這應(yīng)該是一個(gè)共陽極的流水燈,首先給P1口賦值0xFE,轉(zhuǎn)換成二進(jìn)制1111  1110,P1.0亮,然后給個(gè)延時(shí)再一個(gè)邏輯左移,將P1.1清零,在邏輯右移7位將P1.0置1,然后依次循環(huán)
回復(fù)

使用道具 舉報(bào)

10#
ID:225626 發(fā)表于 2017-8-7 22:58 | 只看該作者
首先0xfe,就是11111110,這個(gè)是P1.O口控制的燈亮,后邊的for語句就是將這個(gè)0依次向左邊移位,比如第一個(gè)循環(huán)就是11111101,這個(gè)你可以自己算算。第一個(gè)循環(huán)結(jié)束之后就是01111111,然后第二個(gè)循環(huán)就是移回去,這個(gè)方法比較基礎(chǔ),也不好理解,可以用intrins函數(shù)庫的位移函數(shù)

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 回帖助人的獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

11#
ID:225651 發(fā)表于 2017-8-8 08:36 | 只看該作者
是通過移位來實(shí)現(xiàn)的
回復(fù)

使用道具 舉報(bào)

12#
ID:225017 發(fā)表于 2017-8-8 20:52 | 只看該作者
i=1時(shí);a 1111 1100  b  0000 0011
回復(fù)

使用道具 舉報(bào)

13#
ID:225017 發(fā)表于 2017-8-8 20:53 | 只看該作者
剩下的依次,就可以了
回復(fù)

使用道具 舉報(bào)

14#
ID:225971 發(fā)表于 2017-8-9 09:56 | 只看該作者
IO口給個(gè)數(shù)據(jù)然后位移,就是給高電平亮,然后一直往左或者右移
回復(fù)

使用道具 舉報(bào)

15#
ID:226008 發(fā)表于 2017-8-9 10:55 | 只看該作者
運(yùn)用左移右移控制,循環(huán)起來
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

快速回復(fù) 返回頂部 返回列表