基于单片机的遥控器设计与制作.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《基于单片机的遥控器设计与制作.pdf》由会员分享,可在线阅读,更多相关《基于单片机的遥控器设计与制作.pdf(30页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、目目 录录一、设计思路.11.设计思路.12.采取的技术方案.13.工具设备要求.1二、设计过程与说明.21.设计过程.21.1 设计的前期调研.21.2 设计要求.21.3 设计方案.21.4 无线遥控节日彩灯硬件总原理图设计.31.5 无线遥控节日彩灯软件设计.72.设计过程中碰到的问题与解决措施.82.1 设计过程中碰到的问题.82.2 解决措施.8三、设计成果简介.91.作品的特点.91.1 技术指标.91.2 性能特点.91.3 创新之处.91.4 实用性.92.归纳总结.93.设计成果.103.1 原理图.103.2 仿真图.103.3 PCB 图.113.4 程序编译及烧录图.1
2、13.5 实物图.123.6 程序代码.12五、参考文献.30第 1 页一、一、设计思路1.1.设计思路设计思路本系统的设计思路是以 STC89C52 单片机和 NRF24L01 无线模块为核心,通过电源模块及按键等元件设计一款基于 51 系列单片机的多控制、多闪烁方式的 LED 无线遥控彩灯控制器。2.2.采取的技术方案采取的技术方案实施步骤:收集资料,利用文献查询、图书借阅等方法查阅相关资料。系统的硬件设计:基于单片机的无线遥控节日彩灯通过按键控制电路、电源模块、彩灯显示电路、NRF24L01 无线模块以及单片机最小系统等模块组成,电路用 3.7V 锂电池电池驱动,通过电源模块使输出电压为
3、 5V,摁下电源开关,电源接通,使电源与信号指示灯亮起进入待操作状态;系统的软件设计:主程序、无线遥控子程序、Proteus 仿真、Altium Designer20 绘制原理图;完成整个系统所有功能的软硬件联调,并记录实验数据,整理所有设计材料,撰写毕业设计说明书,完成毕业设计。主要方法:根据任务书明确设计的目标与设计内容及相关要求进行文献资料检索、制定设计方案、元件设备选型。使用 Keil 程序开发软件、Altium Designer20 设计硬件、Proteus 仿真软件、电烙铁和万用表等工具进行软硬件模拟、调试及修改;(1)设计作品与设计成果论证;(2)撰写毕业设计说明书。3.3.工具
4、设备要求工具设备要求(1)Protues 8.9;(2)Altium Designer20;(3)Keil uVision4;(4)恒温烙铁;(5)数字式万用表。第 2 页二、设计过程与说明1.1.设计过程设计过程1.11.1 设计的前期调研设计的前期调研彩灯是我国普遍流行的传统的民间的综合性的工艺品。彩灯艺术也就是灯的综合性的装饰艺术。新中国成立后,彩灯艺术得到了更大的发展,特别是随着我国科学技术的发展,彩灯艺术更是花样翻新,奇招频出。而随着人们生活环境的不断改善和美化,在许多节日的气氛里可以看到彩色霓虹灯,这种 LED 彩灯由于其丰富的灯光色彩,低廉的造价以及控制简单等特点而得到了广泛的应
5、用。其将电子、建筑、机械、遥控、声学、光导纤维等新技术、新工艺用于彩灯的设计制作,把形、色、光、声、动相结合,思想性、知识性、趣味性、艺术性相统一。在当今的社会里,彩灯已经成为我们生活的一部分,能给我们带来视觉上的享受还能美化我们的生活。而在本次设计中采用的是单片机最小系统、LED 发光二极管、电源模块及按键等元件通过 NRF24L01 无线模块来完成多种控制和闪烁方式。软件编程语言是采用 C 语言来完成,各个模块通过编程来联动。实践证明,该设计电路简单,工作稳定,调试方便,能到达无线遥控的要求。1.21.2 设计要求设计要求设计一个简单实用的基于单片机无线遥控彩灯系统。熟悉 STC89C52
6、 单片机的串口相关功能。分配相关 I/O 口,画出硬件连接图,并进行连接,利用 Keil 4 软件开发平台和 Proteus软件仿真平台进行仿真编程调试,要求按下第 1 个按键,接通电源,8 个 LED 彩灯全部亮起来;按下第 2 个按键,8 个 LED 彩灯显示下一种模式;按下第 3 个按键,8 个 LED 彩灯显示上一种模式;模式显示中按下第 1 个按键,8 个 LED 彩灯全部熄灭。下载程序至开发板,调试程序,实现其功能。1.31.3 设计方案设计方案通过以单片机为核心控制,由单片机最小系统(时钟电路、复位电路、电源)、NRF24L01无线遥控电路、按键控制电路、LED 发光二极管彩灯电
7、路和 5V 直流电源组成来实现多种控制、多种闪烁方式的 LED 彩灯循环系统的设计,来达到本设计的要求。其硬件构成框图如图1-3 所示:第 3 页遥控端彩灯端图 1-3 无线遥控彩灯控制系统原理框图1.41.4 无线遥控节日彩灯硬件总原理图设计无线遥控节日彩灯硬件总原理图设计图 1-4-1 遥控端电路原理图STC89C52 单片机时钟电路复位电路按键控制电路5V 直流电源电路供电信号NRF24L01无线STC89C52 单片机时钟电路复位电路NRF24L01无线遥5V 直流电源电路供电信号LED彩灯电路第 4 页图 1-42 彩灯端电路原理图该系统采用单片机作为主控核心,并以按键控制电路、电源
8、模块、彩灯显示电路、NRF24L01 无线模块以及单片机最小系统等模块组成彩灯的核心主控制电路。1.4.11.4.1 直流稳压电源电路设计直流稳压电源电路设计对于一个完整的电子设计来讲,首要问题就是为整个系统提供电源供电模块,电源电路的稳定可靠是系统平稳运行的前提和基础。电子设备除用电池供电外,还采用市电(交流电网)供电。通过变压、整流、滤波和稳压后,得到稳定的直流电。直流稳压电源是电子设备的重要组成部分。本项目直流稳压电源为 USB 电源,它的输出电压是 5V,满足设计需要。如图 1-4-1 所示:图 1-4-1 直流稳压电源电路1.4.21.4.2 无线遥控模块无线遥控模块在此系统硬件设计
9、中,无线遥控电路设计这个模块是必不可少的一个部分。本设计所采用的是 NRF24L01 无线遥控模块,在数据传输方面实现相对 WiFi 距离更远,但传输数据量不如 WiFi(掉电模式和空闲模式)使节能设计更方便,并通过按键控制电路使无线模块发射信号让彩灯端无线模块接收,从而实现无线遥控彩灯的功能。电路如图 1-4-2 所示:第 5 页图 1-4-2 无线遥控模块1.4.31.4.3 单片机最小系统设计单片机最小系统设计要使单片机工作起来,最基本的电路的构成由单片机、NRF24L01 无线遥控电路、时钟电路、复位电路等组成。单片机最小系统如图 1-4-3 所示。时钟电路:本系统采用单片机内部方式产
10、生时钟信号,用于外接一个 12MHz 石英晶体振荡器和 2 个 30pF 微调电容,从而构成稳定的自激振荡器,其发出的脉冲直接送入内部的时钟电路。复位电路:确定单片机工作的起始状态,完成单片机的启动过程。单片机系统的复位方式有上电自动复位和手动按键复位。本设计采用手动按键复位,该复位方式同样具有上电自动复位功能。图 1-4-3 单片机最小系统1.4.41.4.4 LEDLED 彩灯显示电路设计彩灯显示电路设计LED 彩灯显示电路实际上是由 8 个发光二极管和 8 个电阻构成的电路。发光二极管与电阻对应串联,然后接在与之相对应的 P2 口上。通过软件编程对 P2 口输出高低电平来实现不同的闪烁花
11、型。由于发光二极管的导通电压一般为 1.7V 以上;另外,它的工作电流根据型第 6 页号不同一般为 1mA30mA,电阻选择范围为 100 欧姆3 千欧姆,在此我们这里选用 470 欧姆的电阻。如图 1-4-4 所示:图 1-4-4 LED 彩灯显示电路1.4.51.4.5 按键控制电路按键控制电路按键控制电路是由 3 个按键开关构成的,它们分别是 S1、S2、S3,开关 S1S3 分别接在单片机 STC89C52 的 P20P22 管脚,S1 为开灯/关灯按键,每按下按键 S2 一次时,LED 彩灯系统进入下一个彩灯花型;每按下按键 S3 一次时,LED 彩灯系统进入上一个彩灯花型。如图 1
12、-4-5 所示:图 1-4-5 按键控制电路1.4.61.4.6 电源模块电源模块本设计采用的是可充电式升压电源模块,可将一节 3.7V 锂电池升压为 5V,从而给设备提供必要的电源。如图 1-4-6 所示。第 7 页图 1-4-6 电源模块1.51.5 无线遥控节日彩灯软件设计无线遥控节日彩灯软件设计根据设计要求并综合各方面因素,本设计是以 STC89C52 单片机为核心的一种基于单片机的无线遥控节日彩灯设计与制作,采用 C 语言编程。接通电源后,电源指示灯与信号指示灯都将亮起来进入待操作状态,进行不同的按键操作便能够实现各种彩灯的闪烁方式。图 1-5 主程序流程图1.5.11.5.1 按键
13、扫描子程序流程图按键扫描子程序流程图单片机 STC89C52 为核心控制 8 个发光二极管 8 种闪烁方式的变换。程序启动时跳转到第 8 页键盘判断模块程序中,循环检测直到有按键按下的时候,程序指令 NRF24L01 无线模块的信号接收和发送,实现扫描子程序。如图 1-5-1 所示。图 1-5-1 按键扫描子程序流程图2.2.设计过程中碰到的问题与解决措施设计过程中碰到的问题与解决措施2.12.1 设计过程中碰到的问题设计过程中碰到的问题问题 1:在烧录程序时找不到所需烧录的程序文件。问题 2:电源模块输出与设备输入间需要使用电源线连接,导致使用起来及其不方便以及影响了美观度。问题 3:接通电
14、源后,电源指示灯正常亮起,但是信号指示灯未亮,按下按键没有任何的反应。2.22.2 解决措施解决措施解决问题 1:翻阅程序所在文件夹,发现文件夹里没有 HEX 文件,由于烧录程序需要 HEX文件,所以到 Keil4 软件中将程序输出选项中生成 HEX 文件选项勾上确定后,文件夹出现了HEX 文件,程序成功烧录到单片机,问题解决。解决问题 2:用两根导线两端分别从电源模块 USB 输出端正负极焊点处进行焊接,另外两端与设备输入端接口正负极焊接,使其正常连接供电,问题解决。解决问题 3:无线模块供电正极端所焊接在洞洞板上的铜薄片掉落,使无线模块未通电,用一根导线将正极端与供电输入正极端连接,问题解
15、决。第 9 页三、设计成果简介1.1.作品的特点作品的特点1.11.1 技术指标技术指标(1)工作电源:DC5V;(2)无线传输距离:50-100 米;(3)供电方式:3.7V 锂电池及升压电源模块。1.21.2 性能特点性能特点(1)采用 STC89C52 芯片,具有编程灵活,控制范围广等特点;(2)采用 NRF24L01 无线模块,具有较长的传输距离,抗干扰以及穿透性强等特点;(3)具有较多的彩灯花样模式;(4)使用 3.7V 锂电池及 5V 升压电源模块,能够保持较长的待机与续航时间;(5)该系统采用的都是低功耗器件,具有节能环保的特点。1.31.3 创新之处创新之处采用 NRF24L0
16、1 无线模块,利用 STC89C52 单片机实现多种花样控制彩灯,STC89C52 单片机具有较强的可编程性与移植性,从而使得无线遥控节日彩灯能够适用于各种所需灯光效果的场所。1.41.4 实用性实用性本设计工作原理简单,可进行自定义编程,控制的图案花样多,移植性好等。2.2.归纳总结归纳总结通过对这次毕业设计的制作,让我的学习能力得到了很大的提高,虽然在设计的过程中、在程序编写过程中以及设计电路等这些过程中,我遇到了很多的困难,但通过自己不懈的努力,不懂就问,翻阅书籍材料,上网查阅资料,一步步的将自己所遇到的各种问题一一去攻克,最终才能使自己的毕业设计完成,也正是因为这次毕业设计,让我不仅对
17、理论有了更进一步的认识,还培养了自学能力和分析解决问题的能力。第 10 页3.3.设计成果设计成果3.13.1 原理图原理图图 3-1 电路原理图3.23.2 仿真图仿真图图 3-2 电路仿真图第 11 页3.33.3 PCBPCB 图图图 3-3 PCB 图3.3.4 4 程序编译及烧录图程序编译及烧录图图 3-4 程序编译及程序烧录图第 12 页3.3.5 5 实物图实物图图 3-5 成品实物图3.3.6 6 程序代码程序代码名称:无线彩灯控制器-彩灯端程序系统功能:彩灯端共有八种点亮模式遥控端按键 NO1 按下,模式加一;遥控端按键 NO2 按下,模式减一;遥控端按键 NO3 按下,彩灯
18、端的彩灯全部点亮/熄灭。按键功能:NO1-彩灯模式加按键NO2-彩灯模式减按键NO3-彩灯全开/关按键*/#include#include typedef unsigned char uchar;typedef unsigned char uint;uchar flag=0;/LED 模式标志位/*NRF24L01 端口定义*第 13 页sbitMISO=P14;sbitMOSI=P13;sbitSCK=P12;sbitCE=P10;sbitCSN=P11;sbitIRQ=P15;/*NRF24L01*#define TX_ADR_WIDTH5/5 uints TX address width
19、#define RX_ADR_WIDTH5/5 uints RX address width#define TX_PLOAD_WIDTH20/20 uints TX payload#define RX_PLOAD_WIDTH20/20 uints TX payloaduint const TX_ADDRESSTX_ADR_WIDTH=0 x34,0 x43,0 x20,0 x10,0 x01;/本 地地址uint const RX0_ADDRESSRX_ADR_WIDTH=0 x34,0 x43,0 x20,0 x10,0 x01;/接 收地址/*NRF24 寄存器指令*#define REA
20、D_REG0 x00/读寄存器指令#define WRITE_REG0 x20/写寄存器指令#define RD_RX_PLOAD0 x61/读取接收数据指令#define WR_TX_PLOAD0 xA0/写待发数据指令#define FLUSH_TX0 xE1/冲洗发送 FIFO 指令#define FLUSH_RX0 xE2/冲洗接收 FIFO 指令#define REUSE_TX_PL0 xE3/定义重复装载数据指令#define NOP0 xFF/保留/*SPI(nRF24L01)寄存器地址*#define CONFIG0 x00/配置收发状态,CRC 校验模式以及收发状态响应方式#
21、define EN_AA0 x01/自动应答功能设置#define EN_RXADDR0 x02/可用信道设置#define SETUP_AW0 x03/收发地址宽度设置#define SETUP_RETR0 x04/自动重发功能设置#define RF_CH0 x05/工作频率设置#define RF_SETUP0 x06/发射速率、功耗功能设置#define STATUS0 x07/状态寄存器#define OBSERVE_TX0 x08/发送监测功能第 14 页#define CD0 x09/地址检测#define RX_ADDR_P00 x0A/频道 0 接收数据地址#define R
22、X_ADDR_P10 x0B/频道 1 接收数据地址#define RX_ADDR_P20 x0C/频道 2 接收数据地址#define RX_ADDR_P30 x0D/频道 3 接收数据地址#define RX_ADDR_P40 x0E/频道 4 接收数据地址#define RX_ADDR_P50 x0F/频道 5 接收数据地址#define TX_ADDR0 x10/发送地址寄存器#define RX_PW_P00 x11/接收频道 0 接收数据长度#define RX_PW_P10 x12/接收频道 0 接收数据长度#define RX_PW_P20 x13/接收频道 0 接收数据长度#
23、define RX_PW_P30 x14/接收频道 0 接收数据长度#define RX_PW_P40 x15/接收频道 0 接收数据长度#define RX_PW_P50 x16/接收频道 0 接收数据长度#define FIFO_STATUS0 x17/FIFO 栈入栈出状态寄存器设置/*24L01 相关子函数*void inerDelay_us(unsigned char n);void init_NRF24L01(void);uint SPI_RW(uint uchar);uchar SPI_Read(uchar reg);uint SPI_RW_Reg(uchar reg,uchar
24、 value);uint SPI_Read_Buf(uchar reg,uchar*pBuf,uchar uchars);uint SPI_Write_Buf(uchar reg,uchar*pBuf,uchar uchars);unsigned char nRF24L01_RxPacket(unsigned char*rx_buf);void nRF24L01_TxPacket(unsigned char*tx_buf);/*uintbdata sta;/状态标志sbitRX_DR=sta6;sbitTX_DS=sta5;sbitMAX_RT=sta4;/*延时函数(大约一毫秒)*/void
25、 delayms(uint z)uint x,y;for(x=0;x=76;x+)第 15 页for(y=0;y0;n-)_nop_();/*/*NRF24L01 初始化/*/void init_NRF24L01(void)inerDelay_us(100);CE=0;/chip enableCSN=1;/SpidisableSCK=0;/SPI_Write_Buf(WRITE_REG+TX_ADDR,TX_ADDRESS,TX_ADR_WIDTH);/写本地地址SPI_Write_Buf(WRITE_REG+RX_ADDR_P1,RX0_ADDRESS,RX_ADR_WIDTH);/写接收端
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 单片机 遥控器 设计 制作
![提示](https://www.deliwenku.com/images/bang_tan.gif)
限制150内