欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136
標題:
單片機LED流水燈左移是怎么實現的?
[打印本頁]
作者:
1245463159
時間:
2018-2-6 14:05
標題:
單片機LED流水燈左移是怎么實現的?
單片機新人自學有個問題啊
我想問下這里的左移是怎么實現的
for(i=0;i<7;i++) //將led左移一位
{
led=_crol_(led,1);
delay(50000); //大約延時450ms
}
/**************************************************************************************
* LED流水燈實驗 *
實現現象:下載程序后LED呈現流水燈效果進行左移右移滾動
注意事項:無
***************************************************************************************/
#include "reg52.h" //此文件中定義了單片機的一些特殊功能寄存器
#include<intrins.h> //因為要用到左右移函數,所以加入這個頭文件
typedef unsigned int u16; //對數據類型進行聲明定義
typedef unsigned char u8;
#define led P0 //將P0口定義為led 后面就可以使用led代替P0口
/*******************************************************************************
* 函 數 名 : delay
* 函數功能 : 延時函數,i=1時,大約延時10us
*******************************************************************************/
void delay(u16 i)
{
while(i--);
}
/*******************************************************************************
* 函 數 名 : main
* 函數功能 : 主函數
* 輸 入 : 無
* 輸 出 : 無
*******************************************************************************/
void main()
{
u8 i;
led=0x01;
delay(50000); //大約延時450ms
while(1)
{
/* for(i=0;i<8;i++)
{
P0=(0x01<<i); //將1右移i位,然后將結果賦值到P0口
delay(50000); //大約延時450ms
}
*/
for(i=0;i<7;i++) //將led左移一位
{
led=_crol_(led,1);
delay(50000); //大約延時450ms
}
for(i=0;i<7;i++) //將led右移一位
{
led=_cror_(led,1);
delay(50000); //大約延時450ms
}
}
}
復制代碼
作者:
kongxiaofuzi
時間:
2018-2-7 09:38
主要是這句,led=_crol_(led,1);,這個是左移函數,_crol_()是 內部函數,循環左移。整句的意思就是把某個輸出口數據循環左移一位。
作者:
你這個逗比
時間:
2018-2-7 10:55
led=_crol_(led,1);,這個是左移函數,_crol_()是 內部函數,循環左移。整句的意思就是把某個輸出口數據循環左移一位。
作者:
jiangkeqin_sy
時間:
2018-2-7 11:14
主要是這句,led=_crol_(led,1);,這個是左移函數,_crol_()是 內部函數,循環左移。整句的意思就是把某個輸出口數據循環左移一位
作者:
1245463159
時間:
2018-2-7 13:37
kongxiaofuzi 發表于 2018-2-7 09:38
主要是這句,led=_crol_(led,1);,這個是左移函數,_crol_()是 內部函數,循環左移。整句的意思就是把某個 ...
哦哦,看懂了,謝謝
作者:
zl2168
時間:
2018-2-7 15:01
還可應用數組實現。應用數組時可實現任意花樣。
作者:
xujuncheng
時間:
2018-2-7 16:31
_crol_(led,1)這個是單片機的內部左移函數,主要是通過這個函數實現的
作者:
meung
時間:
2018-2-7 16:44
通過左移函數led=_crol_(led,1)實現的~
作者:
eeeewu
時間:
2018-2-7 17:12
也可以采用位移操作符,就是你代碼中注釋那一段
/* for(i=0;i<8;i++)
{
P0=(0x01<<i); //將1右移i位,然后將結果賦值到P0口
delay(50000); //大約延時450ms
}
*/
注:注釋有點小錯誤,“<<”是左移
作者:
13886419675
時間:
2018-2-7 17:24
可以的
作者:
clfzuiniu
時間:
2018-2-7 18:17
可以采用位移操作符
作者:
王了得
時間:
2018-2-7 19:58
ed=_crol_(led,1);,這個是左移函數
歡迎光臨 (http://m.raoushi.com/bbs/)
Powered by Discuz! X3.1