目前在学单片机,已经学会做流水灯了,怎么做红外遥控灯? led灯太亮了很刺眼改造

时间:2022-05-17 15:19:56 作者:admin 55468
led灯太亮了很刺眼改造

目前在学单片机,已经学会做流水灯了,怎么做红外遥控灯?

已经会用单片机实现流水灯的功能,说明对单片机有了初步的入门知识,会配置单片机的GPIO口输出了,建议再学习以下单片机的GPIO的输入,比如按键输入。因为红外遥控会使用到GPIO输出和GPIO输入,还用会要定时器甚至中断。下面从硬件设计和程序设计介绍一下红外遥控的设计。

1.红外发射电路的设计

红外遥控涉及到一发一收,即一个红外发射管和一个红外接收管配合使用。红外发射管一般是透明的,跟发光二极管LED驱动方法一致。如下图所示,是设计的红外发射电路。单片机输出高电平时三极管导通,发射管工作发出红外光,这里也可以用按键来控制。

2.红外接收电路的设计

红外接收管用来接收发射管所发出的红外光,红外接收管可以用普通的接收管,也可以使用专用的红外接收头,如VS1838系列接收头,下图是使用1838接收头实现的红外电路。当接收到红外光后,1838输出低电平。

如果你是通过单片机开发板来学习的,那么板子上应该带有红外接收头,并且配有红外遥控器,尽可能的利用手边的资源。

3.简单红外遥控的实现

硬件电路设计好之后,就要设计程序了。你可以使用红外遥控控制板子上LED灯的亮灭、流水灯的花样变换、继电器的工作灯。这种简单的指令只需要检测红外输出的电平就可以。如果单片机检测到低电平,说明有人按了红外遥控器,把继电器打开即可,不需要走协议。

4.红外数据通信的实现

如果用通过红外来传输数据的话,就需要遵循一定的协议了。目前常用的红外通讯协议是NEC的协议,如下图规定了逻辑0和逻辑1的脉冲宽度。

逻辑0的时间为1.12ms,脉冲宽度为560us;逻辑1的时间为2.25ms,脉宽为560us,除此之外一帧完整的数据应该包括:引导码、8位的客户码、8位客户码的补码、8位的按键值、8位按键值的补码等。

在编写程序时可能用到单片机的定时器资源、中断资源、捕捉等。所以NEC协议的实现,对初学者来说还是比较复杂的。建议先从简单的遥控命令入手。

以上就是这个问题的回答,感谢留言、评论、转发。

更多精彩内容请关注本头条号:玩转嵌入式。感谢大家。

原创不易,转载请注明源于bitkiselyasammerkezi.com网~~

声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关推荐