依舊是基礎的LED燈部分的實驗
說明:實現一排燈從左到右依次一個一個點亮熄滅,實現流水燈
工具/原料
proteus仿真軟件
keil軟件
proteus電路圖
元件清單:(分別是)
51單片機
電容
瓷片電容(也可用普通電容)
晶振
紅色二極管
電阻
電路圖的連接方法
程序清單
說明:本例有兩種程序寫法
第一種是入門級別比較基礎的寫法
先是依舊延時子程序,然後主程序利用直接賦值,與“>>”循環
第二種是稍微高級一些的寫法,調用了其他頭文件
主要是利用了一個intrins.h文件下的右循環語句”P0=_cror_(P0,1); “另也有左循環_crol_(),括號裡面是要循環移位的值。
【第一種】
#include
//延時
void delay()
{
int i;
for(i=0;i<=30000;i++);
}
void main()
{
char i;
int m;
m=0x80;
delay();
for(i=0;i<=7;i++)
{
P0=~m;
m=m>>1;
delay();
}
}
【第二種】
#include
#include
//延時
void delay()
{
int i;
for(i=0;i<=30000;i++);
}
//主程序
void main()
{
P0=0xfe;
while(1)
{
P0=_cror_(P0,1); //P0 的值向左循環移動
delay();
}
}
完成結果仿真圖
因為是靜態圖。。所以大家看看就好
注意事項
還是注意電阻值,太大不會亮,這是實際生活的嘗試,仿真中可能會忘記
有問題可評論