基于单片机的红外发射器遥控彩灯汇

上传人:灯火****19 文档编号:54038844 上传时间:2022-02-12 格式:DOCX 页数:10 大小:170.18KB
收藏 版权申诉 举报 下载
基于单片机的红外发射器遥控彩灯汇_第1页
第1页 / 共10页
基于单片机的红外发射器遥控彩灯汇_第2页
第2页 / 共10页
基于单片机的红外发射器遥控彩灯汇_第3页
第3页 / 共10页
资源描述:

《基于单片机的红外发射器遥控彩灯汇》由会员分享,可在线阅读,更多相关《基于单片机的红外发射器遥控彩灯汇(10页珍藏版)》请在装配图网上搜索。

1、哈尔滨理工大学测控技术与通信工程学院 通信工程系哈尔滨理工大学学年设计I姓名:谷允捷班级:通信13-1学号:1305030105评阅教师:成绩:说明:2016年1月8日内容:学习使用Arduino系统,使用ATmega328p组成的Arduino系统实现三色LED灯的变色,继电器通断,蜂鸣器鸣响,温度采集,光强采集等动作,对实习成绩欲获优秀者,使系统实现红外遥控编码,驱动红外二极管,控制任意色LED灯的变色开关等动作。成绩标准:1 .优秀:(1)报告完整清晰。(2)能够良好的完成对红外任意色LED灯的变色开关等多种动作。(3)答辩考核回答基本正确。2 .良好:(1)报告基本完整。(2)能够基本

2、完成对红外任意色LED灯的控制。(3)答辩考核回答部分正确。3 .中、及格:(1)报告基本完整。(2)能够基本将Arduino系统中三个以上功能配合运行。(3)答辩考核回答部分正确。4 .不及格:(1)多次无假条缺勤。(2)无报告,不参加考核。(3)报告及实验演示效果严重雷同。(4)实验无现象。(5)答辩考核不合格。设计要求1 .设计目的运用Arduino微云电子开发板进行红外遥控,代替彩灯遥控器按键功能,能够实现遥控器上彩灯的切换以及灯的亮灭。2 .设计背景本次学年设计是基于Arduino的红外模块的应用之一,红外遥控是一种无线、非接触控制技术,具有抗干扰能力强,信息传输可靠,功耗低,成本低

3、,易实现等显著优点,被诸多电子设备特别是家用电器广泛采用,并越来越多的应用到计算机系统中。发射机一般由指令键(或操作杆)、指令编码系统、调制电路、驱动电路、发射电路等几部分组成。当按下指令键或推动操作杆时,指令编码电路产生所需的指令编码信号,指令编码信号对载波进行调制,再由驱动电路进行功率放大后由发射电路向外发射经调制定的指令编码信号。3 .设计内容对Arduino进行较为全面的了解,先进行简单模块的开发利用,了解开发板的基本硬件架构,以及开发板的各个硬件元件之间的主从或者通信的关系。从而通过对开发板的较高级应用打下坚实的基础。全面了解红外接收,红外发射模块,并使用单片机代替遥控器,对彩灯进行

4、遥控。将课堂上学到的理论知识与实际应用结合起来,对电子电路、电子元器件、印制电路板等方面的知识进一步加深认识,同时在软件编程、排错调试、相关仪器设备的使用技能等方面得到较全面的锻炼和提高。在使用时应该注意以下几点,对于Arduino部分的应用,如果需要下载程序或者进行串口监控的时候,需要将2*20端子排的RXU-TXATXU-RXA使用跳线帽连接起来,即使用Arduino的IDE进行下载程序之前,需要将RXU-TXATXU-RXA四个排针端子使用跳线帽短路连接起来,然后使用手机线连接开发板和电脑,同时电脑需要安装CH340G的驱动,即常见的Arduino串口驱动。4 .设计器材PC、keil软

5、件、st-link驱动程序、单片机学习板、遥控灯,遥控灯遥控器、数字示波器、st-link仿真器、电源线、杜邦线若干遥控灯与遥控器配合使用,能够实现灯亮、灯灭、亮度增强、亮度减弱、R(红光)、G(绿光)、B(蓝光)、W(白光)、FLASH(闪烁)、SMOOTH(渐变),以及各种颜色光的功能。三.关键程序及其注释#defineADD0x00宏定义,用户码是不变的,所以可以在宏定义中将他定义为ADDintIR_LED=2;接arduino2号引脚,2号引脚是学习板连接红外发射贴片的引脚voidsetup()初始化设置,本函数只执行一次pinMode(IR_LED,OUTPUT);将2号引脚写成输出

6、形式void100Pouint8_tdat,temp=0xc8;定义八位存储变量,dat与temp均为八位2进制变量,注意可在前面加上0x表示16进制书写形式Send38KHzsquare(280,1);发送9ms的起始码,本起始码是38Khz载波,持续时间是9MS,通过示波器调整,9MS需要连续280次发送。Send38KHzsquare(140,0);发送4.5ms的结果码,持续时间是4.5MS,通过示波器调整,4.5MS需要连续140次发送。Sendcode(ADD);/用户识别码这里调用了IR_Sendcode(uint8_tx)函数dat=ADD;Sendcode(dat);/用户识

7、别码反码,该码是对用户码的取反Sendcode(temp);/操作码dat=temp;Sendcode(dat);/操作码反码Send38KHzsquare(21,1);/发送结束码持续时间为560ms的载波信号delay(200);voidSend38KHZsquare(intx,inty)/产生38KHz红外脉冲for(inti=0;ix;i+)通过示波器调整发现该函数运行15次循环时间为386US,也就是1次为25.7ms这样,也就实现了38Khz码的发送。if(y=1)digitalWrite(IR_LED,1);delayMicroseconds(9);digitalWrite(IR

8、_LED,0);delayMicroseconds(9);当输出为1时,根据NEC协议要发送载波,38Khz,经过示波器连续调整发现调整延时时间为9时为实现26us最佳时间。同样,该值可以取10,11,甚至12,但大于11时表见极其不灵敏。elsedigitalWrite(IR_LED,0);delayMicroseconds(20);当输出为0时,根据NEC协议要发送载波,38Khz,经过示波器连续调整发现调整延时时间为20时为实现26us最佳时间。同样,该值可以取21,22.但大于23后变现极其不灵敏。voidSendcode(uint8_tx)发送8位字符函数,通过此函数发送用户码,操作

9、码及其反码。for(inti=0;i8;i+)8次循环逐位比较if(x&0x80)=0x00)判断每位数字是否为0,当是0时进行以下操作Send38KHzsquare(23,1);/560ms载波Send38KHzsquare(21,0);/560ms低电平这两句表示发送0码,elseSend38KHzsquare(23,1);560ms载波Send38KHzsquare(64,0);/1680ms低电平这两句表示发送1码。x=x,高8位用户识别码(9ms-18ms),8位操作码(9ms18ms)和这8位操作码反码(9ms18ms),共32位的“0”、“1”遥控码组成,因此,只要了解遥控器编码

10、标准,就可接收、解调红外信号,然后编写程序由单片机解码。编码采用脉时调制方式(PTM。遥控码的“0”和“1”二进制“0”:用脉宽为0.56ms,间隔为0.56ms,周期为1.12ms的组合表示;二进制的“1”:以脉宽为0.56、间隔1.68ms、周期为2.24ms的组合表示。接收器输出的信号与发射器的信号正好反向。上述“0”和“1”组成的32位二进制码经38kHz的载频进行二次调制以提高发射效率,达到降低电源功耗的目的。然后再通过红外发射二极管产生红外线向空间发射。(二)38KHz方波生成方式1 .计算周期38KHz方波是通过延时函数构造出来的,而并不是由单片机的定时器分频出来的,这点需要注意

11、,在一般Arduino板上,红外LED贴片会被镶嵌在第三脚上,但是在我们的学习板上,它镶在2号脚,而2号脚是不带PWM输出引脚,也就是说我们如法通过设定定时器的方法来进行在2号脚输出方波。只能通过延时函数来构造。31042PD232InfragLED(红外LED驱动)4I0L3PD31蜂鸣器驱动引脚通过计算38KHz方波周期是26us,则高低电平时间各位13us,则在延时函数中,我们把2号引脚置高一段时间,再置低一段时间,且都是微秒级别则会构成方波,但需要注意的是,不是简简单单的将引脚置高延时13微秒,再讲引脚置低延时13微秒。任何计算机在运行过程中都会有一定误差,单片机在低电平到高电平跳变需

12、要一定时间,执行每一条语句也需要一定时间,比如,学习板上12Mhz晶振,则每条语句执行所需要的时间是1us,这就说明在设定延时函数时要进行微调。在此,我们选择delayMicroseconds(9)或10,11,均可作为能使灯接收到信号逻辑1”的最佳跳变延时时间。同样,逻辑0电平不需要跳变,我们可以选择delayMicroseconds(20),21,22,作为能使灯接收到信号的最佳延时时间。2 .连接方式通过循环函数可以将一个个高低电平连接起来,这样就构成了连续不断的38KHz方波,560的高电平大约由21个高电平构成,所以循环次数可以写入21,22,或23,再发送22次低电平这构成了逻辑“

13、0”,同样,先发送21个高电平再发送64个低电平可构成逻辑“0”。3.字符发送方式字符可以通过二进制的方式输入,但是在此我们为了避免书写错误,我们可以通过把字符写成0X16进制形式,而且根据所给资料,我们可知用户码是00000000而用户反码是11111111,所以在开始进行宏定义是,ADD=0X00,所以在改变发射带码时,我们只需要改变用户码就可以了五.具体使用到的芯片:(1)CH340通信硬件电路低端的单片机是不支持USB的,只有串口,所以CH340芯片的作用就是连接了单片机和上位机,以完成通信。USB接口上的DM和DP是通信的两个接口。UART-USB-DP连接至UUSB总线的D+数据线

14、,UART-USB-DM连接到USB总线的D强据线,它们是CH340芯片(USB转串口芯片)的输入。(2)电源供电电路ASM1117USB串口提供5V电源,ASM1117是用于交换式电源5V至3.3V的线性稳压器。通过此电路可以将5V的电源电压转换成3.3V。在本电路中使用3.3V的电压对STM8VDD引脚供电,并且在以后使用的各种芯片上也都是有3.3V电压供电的(3)反相器电路ULN2003AULN2003A是一个7路反向器电路,即当输入端为高电平时ULN2003A输出端为低电平,当输入端为低电平时ULN2003A输出端为高电平。在本电路中,我们用到的芯片被焊接在U7处,通过protel99

15、观察PCB板结构,我们可以了解到,红外灯电路是通过芯片引脚连接到5脚上。也就通过该芯片的12脚输出到红外发射灯处。(4)ArduinoATMGA328芯片本次设计使用的芯片为ATMGA328,3.3V供电,主频12MHz,主要用来提供PTM调制方波,或者使用延时函数提供方波。本次试验把2脚作为输出弓|脚,也就是方波信号由2引脚输出。序号ArdykinAVRMtU PINSnurtHD时座位1I0L-0PN加咖蒋针弓制2I0L4PD131TXAR/口排粉引脚)3IQLQpm32Ifllnn-LED t红外 UD 串动j4IOL-1PH1峥*勤聚动引脚5I0UPD42雄电器及井皇示LD聚动引脚6I

16、DL-5PQ59三基色彩色5口一踹制动7IQL4P阴10三基色超色1。一躇里动aionPD711三善心彩色一路聚动9PW12量空无建赛WIOH-SPfil13最空无连撞FiiIDH-Wni14N累口川棒针引删12I0HU哨15NKM停加新网胤1 BI0H-12PM16M旧住”0蟀针引P14I0H-BP8517CKA 12*20捧针引脚由rdulM的L灯】15ACM?PCO23MH-AVRJ1 的第 7 期(tUOttiS16AD-1PCI24ADJ AVRJ1的NU脚,默U度传感也P17AD-2paIS最空无连撞UazK3u悬空无逢徒AD-4PC427SDA 1-2020禺口鸟PCS居5CA

17、(2*20#ttel其它电路请参照电路原理图六.实习心得1 .这次课程设计中,我首次接触到Arduino单片机,并能通过芯片功能图准确地判断哪个引脚可以执行那个功能,有些引脚的输出功能是不相同的,比如说3,11,9,5等可以带有定时器输出功能,然而其他引脚多数不具备这个功能,所以当需要用到这些功能时,一定要注意把这些引脚连接到应该的位置上。2 .学会了如何通过PCB电气连接看各个引脚的位置,比如说,红外引脚连接在了2号脚上,并且通过反相器输出。闪灯引脚是13号,可以根据pcB图看出他的位置具体在哪里。3 .学会了区分数字引脚和模拟引脚,有些引脚的功能可以通过digitalwrite来书写,而有

18、些却可以通过analongwrite来书写,前者只能把引脚置高置低,而后者却可以把它按照模拟引脚去写,使电压呈现连续变化,用于做呼吸灯等实验。4 .学会一种通信协议NEC协议,它是建立在38Khz方波为载波的情况下传输代码的方式,采用调制方式为PTM调制而非PWM调制,且发送过程一定要遵守起始码,用户码,用户反码,操作码,操作反码,结束码的方式进行书写,以38Khz的方式输出是为了提高发射功率5 .学会了如何使用protel软件对电路图进行处理6 .认识到了理论与实际误差之间的关系,理论上延时13ms,然而在实际中必须要考虑机器周期,考虑电平上升时间,同时要考虑芯片温度偏移因数导致时间误差,而

19、且使用时间越长,误差越大,越容易出现时间上的缩进或增长。7学会了红外解码。虽然在本次设计中没有涉及到解码程序部分,但是在灯内储存了一个红外接收管,和一个专门用来处理接受信息用的芯片,它将收到的信息吗译码即可得到相应的灯光颜色。A0 1010000020 0010000060 01100000E0 1110000090 1001000050 0101000010 00010000D0 11010000B0 1011000030 0011000070 01110000F0 11110000A8 1010100028 0010100069 01101000E8 1110100098 1001100018 0001100058 01011000D8 1101100088 1000100008 0000100048 01001000C8 11001000附录按键上的所有密码:1,1变凫1,2变暗1, 3OFF1,4ON2,1变红2, 3蓝色2,2绿2, 4白色3, 1橙3,2天蓝13, 3淡紫3, 4FLASH4,1中橙4,2浅蓝4, 3深紫色4,4STROB底光灯5,1浅橙色5,2中蓝5, 3中紫5,4FADEB6,1黄6,2亮蓝6,3紫红6,4SMOOTH

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!