模吧

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

7070查看 | 36回复

[开源教程] 看大家需要微型红外2路遥控教程么?需要就开始做教程。

[复制链接]
发表于 2016-12-28 13:42:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
根据萝丽课和其他地方学到的单片机知识,打算做1个2路红外线遥控:

主要用于87、72微车模型改造。

1、红外线发射:初步做按钮式的(无比例),后面视情况是否上摇杆电位器。材料:STC15W104-8脚、轻触开关、红外线发射管。
2、红外线接收:用L9110做双向电调(接收自带,输出电流最大1A),带左右转向灯接口。带一路舵机插口。材料:STC15W104-8脚、L911H、红外线接收管、2.54mm三插。

PS:1、因为暂时不会NRF模块,所以只能用红外线发射接收。但是单片机只用8脚足够。
     2、初步用微动开关做按钮,(因为用摇杆电位器,需要校准啥的需要引脚很多,暂时按此做。后期可能会改单片机,改为摇杆)

先发目标出来,正在做。如果需要的人多我就整理教程出来。
 楼主| 发表于 2016-12-28 13:46:13 | 显示全部楼层
发射端:单片机共8脚其中6脚可用,4脚用于前后左右按钮。1脚用于发射。1脚接蜂鸣器。
接收端:2脚控制电机正反转,1脚用于红外线接收。1脚用于舵机控制。剩下2脚打算用于左右转灯光控制。
 楼主| 发表于 2016-12-29 08:38:33 | 显示全部楼层
前言:
单片机我能学会么?
其实我从萝丽课开始学的,虽然以前学过VB、VBA。但是对于单片机我是陌生的,并且没有接触过C语言。但是靠的可能编程的逻辑,上手比较快。
所以:要是你觉得单片机太高深,我的学历不高,没接触过编程,可能学不会。其实我想说的是不要怕。
真正难的只是从想到开始的这个过程,而真正学习的过程其实也很简单也很享受的。

关于高低电平:
其实我刚开始学的时候对高低电平也很模糊。到底怎么样算高电平,怎么算低电平。
想通了很简单:
1、对于用电器来说(电阻,LED这些东西)他有两根脚,一根接正,一根接负。如果其中一个脚接到电源的正级,那么他是低电平工作。反之一样。如果是三极管之类,就是他需要正级工作,就是高电平工作,反之一样。
2、对于按钮之类的:他的一端接单片机,另外一边都会接电源负极。所以,单片机IO脚判断低电平就是按键按下。
.......
高电平输出可以简单的理解,就是单片机的输入电压,比如单片机输入5V,那么IO脚输出的高电平基本也是5V。低电平可以理解为0V就行。

点评

建议点帖子右下角“管理”把自己的帖子置顶到第一页 对课程有什么补充欢迎你提出来,像高低电平这样,可能有些概念我觉得好理解,实际上很多人并不理解  详情 回复 发表于 2016-12-30 02:59
 楼主| 发表于 2016-12-29 09:04:10 | 显示全部楼层
本帖最后由 田不辣 于 2016-12-29 09:32 编辑

硬件知识:(本制作涉及到的元件)
1、3MM发射管 940nm红外发射管(20只) 深圳优信电子科技
看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 6895
其实这玩意就是一个LED,只是发射的光人眼看不见而已。一般长脚为正,短脚为负。

2、0038 一体化万能接收头 塑封红外接收头 红外接收管
看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 8547
这个为什么有三根脚呢,因为以前的接收管也跟发射管一样,只有两根脚,但是需要在外部布置放大电路。所以就集成在一起了。因为有正负极输入,和一根输出脚。特别注意:输出脚输出低电平时是收到信号。下面是他的封装脚位。
看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 7794
 楼主| 发表于 2016-12-29 09:15:16 | 显示全部楼层
本帖最后由 田不辣 于 2016-12-29 09:16 编辑

3、L991H,这个是他的脚位信息。IO+/IO-是接单片机的两根引脚。M+,M-是接电机的两端。

4、STC15W104,为什么用这个,因为是宽电压,支持1S供电。价格也不贵。工作电压为2.4-5.5
脚位信息:


我为什么要把这张图贴出来呢。其实单片机的大部分信息在STC-ISP刷机软件里面就列出来了。很方便。要学会怎么去查。

看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 8992
看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 2304
 楼主| 发表于 2016-12-29 09:26:34 | 显示全部楼层
本帖最后由 田不辣 于 2016-12-29 09:31 编辑

轻触开关:
一共4支脚。对角接线肯定没问题。但是轻触开关还有个功能就是能做跳线用。
看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 5667
他的背面有一个深槽。如图所示:左边上下两脚是连在一起的。右边上下也连在一起。按下时4个脚全部导通。

发射端电路图:
(我是做的腐蚀,焊洞洞板对着焊就行。这个为正面图。焊接面需要镜像一下)

看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 218
 楼主| 发表于 2016-12-30 09:28:19 | 显示全部楼层
本帖最后由 田不辣 于 2016-12-30 09:39 编辑

程序思路:

红外线编码原则:
             0、引导码:(也可以叫设备识别码,避免误操作其他设备。)在此主要是告诉接收机检测到该引导码要开始解读信息码。
                   暂时构想为101,与后面编码区分开。总共1.5 MS。
             1、编码原则:因为只是两路控制,并且是开关控制,因此只需要2段调制信息即可,一段控制马达,一段控制舵机。
                  1.1、马达控制:正转0110,反转0101,不转0011。针对4位信息,每位信息花费500us,总共2000US=2MS。
                  2.2、舵机控制:舵量正0110,舵量负0101,舵量零0011。同上。总共2000US=2MS。
              2、结束码(在此不考虑,主要用于后期升级摇杆控制使用)
          总发射周期:1.5+2+2=5.5MS,因为是理论,需要后期验证,如果接收机容易误操作,将发送2次编码减少接收机误读。视情况而定。

发射端:
              1、红外线发射函数
                   void TX_IR()
                   {
                             ir=0;        //发射一个38KHz方波红外信号
                             Delay13us();
                             ir=1;
                             Delay13us();
                   }

              2、因为舵机每20ms必须接收一次指令信息,所以打开定时器0,每18-19ms中断一次。定时器0主要负责打开定时器2。(STC很多单片机都只有定时器0和定时器2,没有定时器1)
              AUXR=0x10;//打开定时器2

              3、定时器2主要职责:每50ms中断一次,告诉红外线转换一次发射状态。5.5MS的信息发送完成后,关闭定时器2,等待下次工作。

               其他:
              4、主程序基本啥事不做,最多就是检测一下低压。

              5、运用单片机的内部电压检测,低压时蜂鸣器报警。(不能显示实时电压,但是能检测到设置的报警电压达到临界值时发送提示信息)

              6、蜂鸣器主要是报警、按键提示用。

接收端:
              1、运用外部中断,收到红外线接收管的低电平信号后触发内部中断0,开始解码。

              2、码制记录:内部中断0,主要用于解码需要的计时信息,因为发送长度是5.5MS,0.5MS一个小片段,因此在0.48-0.49ms时中断一次,检测红外线接收管的电平信息。

              3、信息存放:不会存在单片机里,所以只能定义一个数组来放置读码的信息。

              4、解码:根据数组相应位数来读码解码。

              5、执行:L9110:需要两根IO脚控制,一脚是马达正转信号,一脚是马达反转信号。
                            舵机控制:根据萝丽的舵机控制仪来写即可。
              6、灯光控制:根据舵机控制仪的分离出来输出高低电平(萝丽课的电子开关部分)。

下面是接收机的电路图。



看大家需要微型红外2路遥控教程么?需要就开始做教程。 车模,舵机,电调 作者:田不辣 8674
发表于 2016-12-28 14:13:36 | 显示全部楼层
非常鼓励!做吧,做了自己想做的,还方便了大家
 楼主| 发表于 2016-12-28 14:26:13 | 显示全部楼层
我爱萝丽爱萝丽 发表于 2016-12-28 14:13
非常鼓励!做吧,做了自己想做的,还方便了大家

萝丽老师,看了你的课程,单片机基本算入门了。其实上次做的倒计时定时钟的时候就打算写教程,但是发现写教程太累了,所以半途而废了。这个肯定会做,只是看写不写教程。感谢。
发表于 2016-12-28 15:03:45 | 显示全部楼层
非常需要,感谢各位大神的贡献,请收下我的膝盖
发表于 2016-12-28 15:19:48 | 显示全部楼层
皮皮鲁西西大哥?
发表于 2016-12-28 18:59:01 | 显示全部楼层
顶顶顶顶
发表于 2016-12-28 19:37:00 | 显示全部楼层
顶帖!支持做教程
发表于 2016-12-28 23:04:35 | 显示全部楼层
顶贴是一种美德!
发表于 2016-12-29 10:58:55 | 显示全部楼层
顶顶顶顶顶
发表于 2016-12-29 21:00:44 | 显示全部楼层
顶!!!!
发表于 2016-12-30 02:59:57 | 显示全部楼层
田不辣 发表于 2016-12-29 08:38
前言:
单片机我能学会么?
其实我从萝丽课开始学的,虽然以前学过VB、VBA。但是对于单片机我是陌生的,并 ...

建议点帖子右下角“管理”把自己的帖子置顶到第一页
对课程有什么补充欢迎你提出来,像高低电平这样,可能有些概念我觉得好理解,实际上很多人并不理解
发表于 2016-12-30 14:55:37 | 显示全部楼层
非常支持楼主出此教程,谢谢楼主分享。
发表于 2016-12-31 00:26:44 | 显示全部楼层
好好好,学习了。
发表于 2017-1-9 10:44:40 | 显示全部楼层
田不辣 发表于 2016-12-30 09:28
程序思路:

红外线编码原则:

能给个源码教程吗,网上找了好多 但是 还是有点不理解啊   
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|关于模吧|APP下载|广告报价|小黑屋|手机版|企业会员|商城入驻|联系我们|模吧 ( 冀公网安备13080502000084号 )

© 2013-2020 Moz8.com 模吧,玩出精彩!