找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

请教:红外线遥控如何设置可以实现刚通电时所有LED均是熄灭(低电平)?

查看数: 4962 | 评论数: 10 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
YQS
发布时间: 2017-3-6 13:01

正文摘要:

在网上找到的红外接遥控程序改编,计划实现功能:K1,K2 “开”与“关”,K3 以后是“点动”。 但问题:刚通电后所有LED均是亮(高电平),K1按一次后(K2还要再按一次)K3以下的LED才熄灭,以后不断电,才正常工作 ...

回复

ID:167337 发表于 2017-3-7 08:39
哦,问题解决了!
原来单片机外围电路设计的时候,为了不让外围电路误动作,一般把外围电路设置成单片机IO口低电平的时候 尽心动作,点亮

LEd灯的时候应该是负电平有效,我现在的电路是正电平有效,自然就是费事了。好,将:供LED电源、LED极性反转,程序中相应

判断语句极性也反转,OK,一切正常。
看来只能自己基础不精哦!

谢谢s1g、mahshmj等指点!
ID:104825 发表于 2017-3-6 21:56
把发光二极管都反过来接,然后将公共端接到vcc试试看!
ID:7485 发表于 2017-3-6 20:22
进入主程序的第一条指令就应该是 P1=0xE0;或 P1=0x00;
ID:151348 发表于 2017-3-6 19:37
YQS 发表于 2017-3-6 15:20
@imxuheng,本人不是太熟悉C,只能依葫芦画瓢,能否更清楚说如何加上:P1=0x00;吗?谢谢!

main()
{
   IE = 0x84;                 //允许总中断中断,使能 INT1 外部中断
   TCON = 0x10;               //触发方式为脉冲负边沿触发
   IRIN=1;                    //I/O口初始化
  // delay1(10);                 //延时
    P1=0x00;
    while(1)        ;

}
ID:167337 发表于 2017-3-6 15:20
@imxuheng,本人不是太熟悉C,只能依葫芦画瓢,能否更清楚说如何加上:P1=0x00;吗?谢谢!
ID:167337 发表于 2017-3-6 14:55
@imxuheng,本人不是太熟悉C,只能依葫芦画瓢,能更清楚说如何加上P1=0x00;吗?谢谢
ID:167337 发表于 2017-3-6 14:43
现在程序及电路:是通电后所有LED均是亮的(高电平)。希望改进程序,要求是相反!
ID:151348 发表于 2017-3-6 14:37
通电后所有LED均是熄灭(低电平)?那就在初始化的时候加上P1=0x00;
ID:168431 发表于 2017-3-6 14:04
楼主是高手啊  程序编的6

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表