找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

請教:紅外線遙控如何設(shè)置可以實現(xiàn)剛通電時所有LED均是熄滅(低電平)?

查看數(shù): 4891 | 評論數(shù): 10 | 收藏 0
關(guān)燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
YQS
發(fā)布時間: 2017-3-6 13:01

正文摘要:

在網(wǎng)上找到的紅外接遙控程序改編,計劃實現(xiàn)功能:K1,K2 “開”與“關(guān)”,K3 以后是“點動”。 但問題:剛通電后所有LED均是亮(高電平),K1按一次后(K2還要再按一次)K3以下的LED才熄滅,以后不斷電,才正常工作 ...

回復(fù)

ID:167337 發(fā)表于 2017-3-7 08:39
哦,問題解決了!
原來單片機(jī)外圍電路設(shè)計的時候,為了不讓外圍電路誤動作,一般把外圍電路設(shè)置成單片機(jī)IO口低電平的時候 盡心動作,點亮

LEd燈的時候應(yīng)該是負(fù)電平有效,我現(xiàn)在的電路是正電平有效,自然就是費(fèi)事了。好,將:供LED電源、LED極性反轉(zhuǎn),程序中相應(yīng)

判斷語句極性也反轉(zhuǎn),OK,一切正常。
看來只能自己基礎(chǔ)不精哦!

謝謝s1g、mahshmj等指點!
ID:104825 發(fā)表于 2017-3-6 21:56
把發(fā)光二極管都反過來接,然后將公共端接到vcc試試看!
ID:7485 發(fā)表于 2017-3-6 20:22
進(jìn)入主程序的第一條指令就應(yīng)該是 P1=0xE0;或 P1=0x00;
ID:151348 發(fā)表于 2017-3-6 19:37
YQS 發(fā)表于 2017-3-6 15:20
@imxuheng,本人不是太熟悉C,只能依葫蘆畫瓢,能否更清楚說如何加上:P1=0x00;嗎?謝謝!

main()
{
   IE = 0x84;                 //允許總中斷中斷,使能 INT1 外部中斷
   TCON = 0x10;               //觸發(fā)方式為脈沖負(fù)邊沿觸發(fā)
   IRIN=1;                    //I/O口初始化
  // delay1(10);                 //延時
    P1=0x00;
    while(1)        ;

}
ID:167337 發(fā)表于 2017-3-6 15:20
@imxuheng,本人不是太熟悉C,只能依葫蘆畫瓢,能否更清楚說如何加上:P1=0x00;嗎?謝謝!
ID:167337 發(fā)表于 2017-3-6 14:55
@imxuheng,本人不是太熟悉C,只能依葫蘆畫瓢,能更清楚說如何加上P1=0x00;嗎?謝謝
ID:167337 發(fā)表于 2017-3-6 14:43
現(xiàn)在程序及電路:是通電后所有LED均是亮的(高電平)。希望改進(jìn)程序,要求是相反!
ID:151348 發(fā)表于 2017-3-6 14:37
通電后所有LED均是熄滅(低電平)?那就在初始化的時候加上P1=0x00;
ID:168431 發(fā)表于 2017-3-6 14:04
樓主是高手啊  程序編的6

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

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

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