-
這是正常的,因為光的開和關是由微控制器的低電平驅動的(從你的程式中可以看出),而微控制器給出的高低電平負載能力不是很強,也就是說,雖然到了電壓,但電流比較小, 當我們編寫程式時,我們編寫相同的情況。沒問題,別擔心。
-
main 功能稍作改動,如下所示:
main()
init();
while(1) {
if(a == 100) a = 0;
if(a <= 50) p0 = 0x00;
else p0 = 0xff;
-
菜鳥哥哥。 我無語了! 我會在你的基礎上給你寫乙個,這樣就可以實現閃爍。
#include
#define uchar unsigned char#define uint unsigned intvoid init();
uchar a=0;
main()
init();
while(1)
p0=0xff;
if(a==50) //!!!50*50=2500ms.
p0=0x00;P0 控制 LED,在低電平下啟用。
init();刪除 init(),因為它已經初始化了,還有更多!
p0=0xff;P0 從低到高,只是乙個命令時間。 相當於動態顯示,當然微弱!
if(a==100)
a=0;p0=~p0;}
void init()
tmod=0x01;
th0=(65536-50000)/256;
tl0=(65536-50000)%256;
ea=1;tr0=1;
et0=1;
void timer0() interrupt 1th0=(65536-50000)/256;
tl0=(65536-50000)%256;
a++;
-
您的問題應該是 ls138 未正確啟用;
E1 和 E2 的邏輯使能要求電平相反,不能連線在一起。
改動如下:enled連線E1,addr3連線E2和E3(即E2和E3連線在一起);
-
如果微控制器有程式,肯定會閃爍,燈前有晶元,如果晶元的輸入不確定,輸入埠的電平還沒有處理,如果沒有上下,指標也會閃爍。
-
1、微控制器內沒有程式或雜亂的資料,可能會閃爍,這是微控制器自動復位造成的。
2.微控制器有程式控制LED閃爍。
3.開發板。
有問題,如電源不穩定、其他硬體問題等,也會出現閃爍。
-
微控制器裡有程式,程式控制燈閃爍。
-
動態顯示,顯示程式的呼叫,不能有條件。
它必須被稱為不間斷。
您的顯示程式,是的滿足了哪些條件而且只打一次電話?
這是乙個延遲。
顯示它時,首先顯示分鐘,僅幾毫秒,然後顯示秒。
秒,顯示幾毫秒,之後沒有空白,直到下一次呼叫顯示程式。
所以,幾秒鐘,顯示是穩定的,幾分鐘,乙個閃光燈消失了。
-
51、如果微控制器數碼管顯示器一直閃爍,也可能是故障,你把它帶到維修場所進行檢修。
使用兩個定時器的方法是使用定時器t0控制頻率,定時器t1控制占空比。 一般的程式設計思路如下:t0定時器中斷使i0埠輸出為高電平,在定時器t0的中斷中啟動定時器t1,此t1使io口輸出為低電平,因此改變定時器t0的初始值可以改變頻率,改變定時器t1的初始值可以改變占空比。 >>>More