基于STC15F104E的无线遥控

合集下载

STC15使用说明书启光电子

STC15使用说明书启光电子

朋友们大家好!感谢您购买启光电子STC15系列最小系统板耽误您几分钟请把以下的内容仔细阅读下谢谢首先强调下电子产品在运输过程中难免会出现点问题所以请收到板子的朋友不要着急去焊板子请先做下简单的烧录测试确定板子没有问题后在进行对板子的改动这样即使当板子出现问题我们也能更好的为您解决(包括退换)如果对板子进行焊接后测试出现问题我们只能提供帮助和技术支持但是此时就不能提供(退换)服务了希望朋友们能理解和支持!谢谢!如果着急使用请直接阅读下面的使用和下载方法开发板简介这款STC15F2K60S2 算是宏景(STC)在STC12的基础上的一个升级吧其实STC15早在两年前就一直说要出结果只是出了STC15F104E系列随后的STC12也将宏景的作品推向了高端不过管怎么说12比普通的8051要快12倍左右那STC15给我们又带来了什么呢这里我们只用它与STC12系列相比1 STC15虽然也是1T单片机但是它的速度要比STC12还要快20%左右2 STC15最闪亮的应该是它有内部晶振工作范围在5MHz—35MHz 这一点STC12是望尘莫及的3 PWM STC15位3通道而STC12为2路4 定时器/计数器STC156 STC12 45 串口方面均为双串口但是STC15可以通过切换使用分时复用的方法可以达到5个串口效果6RAM STC15 2K STC12 1K等等从以上这些不能看出STC15与STC12想比还是要胜出一筹最后希望它在你的手中能发挥的淋漓尽致!自动冷启动简介如果用我们板子的朋友一定知道我们板子有自动冷启动功能即不用重新开关只要保持板子供电状态就可以点击下载当然在STC15F2K60S2的板子上我们依然为它加了自动冷启动功能。

这里说一下自动冷气的开关问题如图在三极管M6的下面为自动冷启动设计了开关分别有左右两个框左边就一个字母K 右边能看到K G两个字母顾名思义K是开G 是关的意思也就是说在图上右边中间点和上边连焊并且左边也同时连焊就是开启自动冷启动功能中间点和下边连焊并且左边连点断开就是关闭自动冷启动功能为什么这样做呢因为如果要有一段时间调试程序开启自动冷启动会很方便如果调试完了要一直应用此程序就可以关闭冷启动降低总能量的消耗(虽然没用多少能量!)板子上的蓝灯和红灯简介红灯即靠近USB口的LED灯它为板子的电源指示灯也就是不管有没有开开关只要电源供电或者接好USB线板子上的红灯就会亮蓝灯为STC15运行指示灯它的所用IO为P5.5使用和下载方法1.要先给电脑安装驱动也就是PL-2303驱动这个要根据系统选择你的安装版本如果是W7系统建议直接用1.5.0驱动驱动安装好后应该还要进行重启按步骤执行即可2.安装KEIL编译软件这里我们给大家带的是KEIL4 版本也是目前最新的版本!安装后要用注册机注册一次然后就可以完全破解的3.当以上都弄好后就可以写一个自己想编译的程序并且生成HEX文件或者直接用我们资料的已经生成的HEX写入也可以4.得到HEX文件就可以下载到STC15中了这里要简单的说下打开下载软件在打开的对话框里选择好单片机的型号即STC15F2K60S2点击选择刚才编译好的HEX文件接下来将STC15系统板和电脑用USB连接如果驱动安装没有问题的话会在我的电脑设备管理器的端口上显示如图确定端口后在这里选择好已驱动成功的端口(我这里就是COM4)ps 其实这个不用查也没有关系新版的下载软件会自动搜索已经连接好的驱动接下来就是很重要的一点就是在最高和最低波特率选择里要尽量选择同样的波特率下载程序时才会比较稳定如图当一切准备好了以后看下板子的开关是不是处于开启的状态即波动开关拨到K位置头文件问题有的朋友可能还不太懂头文件(明白的朋友就不用浪费时间啦直接看头文件的安装方法)下面我就按我的理解简单给家解释一下说白了头文件就是驱动单片机的底层函数比如说P3口我们平时写程序时直接写P3=0xFF这样P3口的所有脚就都会拉高但这里面的P3就是在头文件里定义的!所以不管写什么样的单片机程序都要有它相应的头文件51单片机的头文件就是51.H我们在程序最上端只要加#include “reg51.h”就可以直接使用所以STC15F2K60S2也要有它的都文件当然了如果你要用51的头文件也能用必定STC15兼容51系列的所有功能但是STC15有自己的创新功能比如说AD通道的设置就要用到它自己的头文件头文件安装方法1首先要确定keil4 已经安装好2打开下载软件可以看到左边有一排对话框3 按动小箭头找到头文件选项这里就是stc15f2k60s2的整个头文件所在4选择选择上图然后点击确定这样整个的STC的头文件就安装到keil中了不妨我们可以去看一看这个STC文件夹就是刚安装的头文件里面的头文件有以上这些我们的板子是STC15F2K60S2所以我们选中它5然后复制然后返回INC文件夹并将刚才复制的STC15F2K60S2的头文件复制到INC文件夹的最下面里可以看出在INC文件夹里有很多.H文件也就是头文件把STC15F2K60S2复制到这里也方便了程序上的调用6这样做好后在程序上直接就可以了如果不把刚才的STC15头文件复制出来还要引用的话那就要这样不过都差不多看你喜欢哪一种方法若第一次在keil中创建项目在Keil中新建项目时选择芯片型号时,便会有“STC MCU Database”的选择项,如下图然后从列表中选择响应的MCU型号,所以我们在此选择“STC15F2K60S2”的型号,点击“确定”完成选择添加源代码文件到项目中,如下图:这里简单的介绍一下LCD1602 与 LCD12864的选择方式如图左上角 有三个焊点 中间点和左边连接 打开12864 和TFT功能 中间点和右边连接 打开1602功能并且这个STC15板子 多了可以加485芯片功能在对应的485焊盘上 焊好您要加的485 芯片 然后将图中485焊盘右边的 K 字母焊盘 和485芯片的第8脚 即对应K焊盘左边的焊盘连焊 就可以开起485芯片功能485所用单片机引脚 P3.0 P3.1 为串口P5.5为控制口这里的A B 就是485的输入输出口 如果接到485总线上 就可以进行485通讯了关于晶振和复位按键说明STC15F2K60S2有其内部R/C时钟及其复位功能但是它又同时支持外部晶振和外部复位其实相对而言外部晶振的稳定性要比内部高一些对于追求稳定性的项目来说用外部的晶振可能会更好一些所以在这里我们特意做了备用的外部晶振电路部分默认给大家带是22.1184MHz使用方法是上图晶振焊好的引脚附近都会有一个焊盘每一个焊盘都是直接连接到单片机的晶振输入口的如果是用外部晶振的时候就直接把晶振上下的焊盘和晶振引脚连接上即可同时下载程序时要把第一项的勾选去掉如上图这样就设置成了外部时钟复位按键也是同理在图中复位按键的右边也有个焊盘当用复位按键的时候将其用烙铁连接好即可同时在下载软件里的复位引脚做为I/O口勾选去掉如上图下载后重新上电就可以显示外部复位功能以上两个设置设置好以后下载第一次以后都要重新上电才能实现功能以后在下载就不用在重新上电了。

基于单片机的遥控控制电路设计

基于单片机的遥控控制电路设计

基于单片机的遥控控制电路设计遥控控制电路是一种通过无线信号传输控制设备的电路系统。

基于单片机的遥控控制电路设计可以实现对电器设备、机械装置等的无线控制,具有广泛的应用领域,如家电遥控、无线门禁等。

设计一个基于单片机的遥控控制电路需要考虑以下几个方面:1.硬件设计:首先,需要选择合适的无线通信模块。

常见的无线通信模块有红外遥控模块、射频遥控模块等。

根据具体的应用需求选择合适的模块。

在硬件设计中,还需要考虑单片机、电源、按键等元件的选择和连接。

在单片机的选择上,可以选择一些常见的MCU产品,如Arduino、STM32等,根据具体需求选择适合的型号。

选择低功耗的供电方式,如锂电池供电或电池组供电,确保电路的可靠性和使用寿命。

在按键的选取上,可以选择常见的手持遥控器按键、数字键盘等,根据具体的应用需求进行选择。

电源模块需要选择能够提供稳定电流和电压的模块,以确保单片机系统正常运行。

除了以上硬件元件,还需要考虑电路板布线、外设连接等。

合理布局电路元件,确保信号传输和电路工作的稳定性。

2.软件设计:遥控控制电路的软件设计涉及到单片机程序的设计和开发。

在软件设计中,首先需要定义单片机与无线通信模块的通信协议,如红外协议、射频协议等。

根据通信协议的要求,编写单片机程序,实现与无线通信模块的正常通信。

在软件设计中,还需要编写按键扫描程序,实现对按键的检测和处理。

通过按键扫描程序,可以实现对按键的触发和对应功能的执行。

此外,还需要编写电机控制程序、电磁阀控制程序等,根据具体的应用需求,实现对设备的无线控制。

3.测试和调试:在完成硬件和软件设计后,需要进行测试和调试。

首先进行硬件电路的测试,检查电路连接是否正确,供电是否正常,信号传输是否稳定。

然后进行单片机程序的测试,确保按键的检测和处理正常,与无线通信模块的通信正常。

最后进行整体系统的测试,模拟实际应用场景,测试遥控控制效果。

如果发现问题,需要进行相应的调试和优化。

原创STC15F104W3个按键控制3路PWM驱动全彩LED

原创STC15F104W3个按键控制3路PWM驱动全彩LED

原创STC15F104W3个按键控制3路PWM驱动全彩LED/*程序说明*///P3.3-P3.5输出3路频率500hz占空比1%-99%可调方波// //P3.0-P3.2有3个按键单独控制3路占空比输出长按加5%//短按加1%占空比#include#include#define uchar unsigned char#define uint unsigned intsbit red=P3^3; //红色LED输出口sbit green=P3^4; //绿色LED输出口sbit blue=P3^5; //蓝色LED输出口sbit k1=P3^0; //红色LEDpwm控制sbit k2=P3^1; //绿色LEDpwm控制sbit k3=P3^2; //蓝色LEDpwm控制uchar r_temp=1,g_temp=1,b_temp=1; //三色占空比数值缓存uchar flag; //定时器T2定时次数标志//延时函数,大约延时10ms.void Delay10ms() //@11.0592MHz{unsigned char i, j;i = 108;j = 145;do{while (--j);} while (--i);}//按键扫描程序void key(){uchar num1=0,num2=0,num3=0;if(k1==0) //按键K1处理程序{Delay10ms();if(k1==0){if(r_temp<99){r_temp++;while(!k1){num1++; //长按标志位加到10约100ms Delay10ms();if(num1==10&&r_temp<95){r_temp+=5;num1=0;}if(r_temp>=95) r_temp=1;}}else r_temp=1;}}if(k2==0) //按键K2处理程序{Delay10ms();if(k2==0){if(g_temp<99){g_temp++;while(!k2){num2++; //长按标志位加到10约100ms Delay10ms();if(num2==10&&g_temp<95){g_temp+=5;num2=0;}if (g_temp>=95) g_temp=1;}}else g_temp =1;}}if(k3==0) //按键K3处理程序{Delay10ms();if(k3==0){if(b_temp<99){b_temp++;while(!k3){num3++; //长按标志位加到10约100msDelay10ms();if(num3==10&&b_temp<95){b_temp+=5;num3=0;}if(b_temp>=95) b_temp=1;}}else b_temp =1;}}}//定时器T0 16位自动模式定时1ms 控制灯灭时间void InitTimer0() interrupt 1 // 1毫秒@11.0592MHz {IE2 = 0x00; //关闭定时器2中断AUXR=0XE4; //关闭定时器2计数TL0 = 0xCD;TH0 = 0xD4;red=1;green=1;flag=1;AUXR=0xF4; //开启定时器2计数IE2=0x04; //开启定时器2中断允许}//定时器T2 16位自动模式定时10us 控制等亮时间void InitTimer2() interrupt 12 // 10微秒@11.0592MHz {flag++;T2L = 0x91; //设置定时初值T2H = 0xFF; //设置定时初值if(r_temp==flag) red=0;if(g_temp==flag) green=0;if(b_temp==flag) blue=0;}void init(){AUXR =0XE4;//设置定时器0和2为1T模式TMOD= 0x00;TL0 = 0xCD;TH0 = 0xD4;T2L = 0x91; //设置定时初值T2H = 0xFF; //设置定时初值EA = 1;ET0 = 1;TR0 = 1;}void main(){init();{ key(); }}。

基于单片机的无线遥控移动机器人设计

基于单片机的无线遥控移动机器人设计

基于单片机的无线遥控移动机器人设计包志家【摘要】在这个智能化时代背景下,为了能够更好地发挥出机器人的价值,文章主要设计了一个多功能的履带式机器人,其是将手持移动设备作为主要控制端,控制方式采用分布式控制,而在这一整个系统当中,单片机属于核心,并且还拥有较多的功能模块,上位机软件则主要是在嵌入式Linux下运行,而对于移动手持设备和机器人之间的信息交互,则主要是利用了WiFi传输技术.通过这一系统,操作人员在实际使用过程中能有效地利用无线远程对机器人移动情况进行监控,更好地保障机器人应用的效果.【期刊名称】《无线互联科技》【年(卷),期】2018(015)001【总页数】2页(P20-21)【关键词】单片机;无线遥控;移动机器人【作者】包志家【作者单位】南京理工大学紫金学院,江苏南京 210000【正文语种】中文在社会不断发展过程中,对于机器人的研究也是越发地频繁,就目前机器人设计工作来看,无线远程控制移动属于设计研究热点之一,因为这一项设计和研究能够代替我们完成一些较为危险的行动,又或者是在一些较为恶劣的环境下工作。

而在无线传输过程中,目前应用较为普遍的就属于WiFi技术,这一项技术在应用过程中传输距离较长,并且网络也十分地稳定可靠,目前也成为人们生活以及工作中不可缺少的一项技术。

本文在设计研究过程中,其核心主要是单片机,之后在履带式小车基础上加上六自由度机械臂、风扇、摄像头等功能模块,最后利用WiFi传输技术来对机器人进行控制和监控,并且设计出了一个基于单片机的无线遥控移动机器人,希望能够将其有效地应用到各个领域当中。

1 机器人硬件组成在对机器人进行设计的过程中,本系统中主要是基于单片机来进行设计,设计过程中控制终端主要是使用了手持移动设备,WiFi这一技术的作用则是对控制对象进行遥控,以此来设计出了一个履带式机器人。

该机器人在控制过程中,要想实现控制这一目的,其主要是在控制过程中采用了分布式控制,核心则是STC89S52单片机,其次则包括了以下几个功能模块:小车电机驱动模块、灭火模块、机械臂模块、电磁炮模块、集成电源供电模块、通信接口模块、WiFi模块、摄像头模块等。

51单片机无线遥控应用教程

51单片机无线遥控应用教程

编码输出端(正常时为低电平)
表 1:编码电路 PT2262 管脚功能表
名称 管脚
说明
A0-A11 1-8、10-13
地址管脚,用于进行地址编码,可置为“0”,“1”,“f” (悬空),必须与 2262 一致,否则不解码
地址或数据管脚,当做为数据管脚时,只有在地址码与
D0-D5
7-8、10-13
2262 一致,数据管脚才能输出与 2262 数据端对应的高 电平,否则输出为低电平,锁存型只有在接收到下一数
PT2262 和接收端 PT2272 的地址编码完全相同,才能配对使用,遥控模块的生产
厂家为了便于生产管理,出厂时遥控模块的 PT2262 和 PT2272 的八位地址编码端
全部悬空,这样用户可以很方便选择各种编码状态,用户如果想改变地址编码,
只要将 PT2262 和 PT2272 的 1~8 脚设置相同即可,例如将发射机的 PT2262 的第
遥控发射器工作电压为 DC 12V(电池供电) ,尺寸(mm): 58*39*14 ,工作频率:315MHz , 工作电流(mA):13 编码类型: 固定码(板上焊盘跳接设置) 应用说明:与各类型带解码功能的 接收模块联合使用,解码输出后进行相应控制,如采用单片机进行读取接收并解码数据然后控制 相应的灯或电源开关。
编码芯片 PT2262 发出的编码信号由地址码、数据码、同步码组成一个完整 的码字。解码芯片 PT2272 接收到信号后,其地址码经过两次比较核对后,VT 脚 才输出高电平,与此同时相应的数据脚也输出高电平。PT2262 每次发射时至少 发射 4 组字码,因为无线发射的特点,第一组字码非常容易受零电平干扰,往往 会产生误码,所以 2272 只有在连续两次检测到相同的地址码加数据码才会把数 据码中的“1”驱动相应的数据输出端为高电平和驱动 VT 端同步为高电平。当发 射机没有按键按下时,PT2262 不接通电源,其 17 脚为低电平,所以 315MHz 的 高频发射电路不工作,当有按键按下时,PT2262 得电工作,其第 17 脚输出经调 制的串行数据信号,当 17 脚为高电平期间 315MHz 的高频发射电路起振并发射等 幅高频信号,当 17 脚为低平期间 315MHz 的高频发射电路停止振荡,所以高频发 射电路完全收控于 PT2262 的 17 脚输出的数字信号,从而对高频电路完成幅度键 控(ASK 调制)相当于调制度为 100%的调幅。

stc15f104w模拟串口使用

stc15f104w模拟串口使用

stc15f104w模拟串⼝使⽤
stc15f104w单⽚机体积⼩,全8个引脚完全够⼀般的控制使⽤,最⼩系统也就是个电路滤波----加上⼀个47uf电容和⼀个103电容即可,但因为其是⼀个5V单⽚机,供电需要使⽤5V左右电源。

接下来我们⽤keil软件打开,可以看到波特率默认设置为19200,这⾥我将它改为9600,这样波特率低虽然传输速率虽然会慢些,但传输稳定性会好很多,毕竟这是⼀款再便宜不过的单⽚机了,⽽且传输⽤的还⽤的是模拟串⼝。

接下来是程序的下载,这⾥有⼀个较⼤的坑,那就是要选择IRC频率应设置为22.1184MHz,因为这⾥的选择决定了该款单⽚机的晶振⼤⼩,⽽晶振⼤⼩和我们所设置的波特率息息相关,之前⽤的是默认的11.0592,在串⼝调试助⼿设置波特率刚好是代码设置的波特率的⼀半才能正确显⽰。

下载时断开然后再接上地线即可,完成。

STC15F104E单片机之串口、外部中断、掉电存储、定时器

STC15F104E单片机之串口、外部中断、掉电存储、定时器/************************************************************** ******单片机与PC机采用9针串口,MAX232通讯,波特率默认为9600.单片机接收PC机发送的数据码表如下:01、开:PC发送'A';02、关:PC发送'B';03、输出状态查询:PC发送C;单片机返回输出状态‘A’表示开‘B’表示关;04、继电器状态取反:PC发送D 继电器状态取反*************************************************************** ******/#include "reg52.h"#include#define uchar unsigned char //宏定义字符型变量#define uint unsigned int //宏定义整型变量/************************************************************** ******eeprom函数声明*************************************************************** ******/extern void IapIdle(); //操作函数extern uchar IapReadByte(uint addr); //读取函数extern void IapProgramByte(uint addr,uchar dat); //写入函数extern void IapEraseSector(uint addr); //擦除函数/********************************************************************波特率设定*************************************************************** ******///#defineBAUD0XF400//******************//#defineBAUD0XFA00//******************//#defineBAUD0XFD00//******************#defineBAUD0XFE80//******************//#defineBAUD0XFF40//*******************//#defineBAUD0XFFA0//*******************uchar miao,fen,times;uchar dat; //用于存储单片机接收发送缓冲寄存器SBUF里面的内容sbit P33=P3^3; //定义继电器控制输出脚/************************************************************** ******定义特殊寄存器*************************************************************** ******/sfr AUXR = 0x8E; //辅助寄存器sbit RXB=P3^0;sbit TXB=P3^1;/************************************************************** ******定义数据类型*************************************************************** ******/uchar TBUF,RBUF;uchar TDAT,RDAT;uchar TCNT,RCNT;uchar TBIT,RBIT;uint TING,RING;uint TEND,REND;void UART_INIT(); //声明函数uchar t,r; //定义数据类型uchar but[16]; //数据存储数组/************************************************************** ******延时函数*************************************************************** ******/void delay(uchar t){uchar i,j;for(i=0;i<t;i++){for(j=13;j>0;j--);{ ;}}}/************************************************************** ******定时器0初始化函数*************************************************************** ******/void TIMER0_INIT(void)TMOD=0X00; //定时器T0设定AUXR|=0X80; //辅助寄存器TL0=BAUD; //十六</t;i++)位寄存器TH0=BAUD>>8; //十六位寄存器TR0=1; //开定时器ET0=1;PT0=1;}/************************************************************** ******定时器1初始化函数*************************************************************** ******/void TIMER1_INIT(void){TH1=(65536-10000)/256; //对TH1 TL1赋值TL1=(65536-10000)%256;ET1=1;TR1=1; //开始定时}/************************************************************** ******外部中断0初始化*************************************************************** ******/void Init_exint(void)INT0=1; //下降沿触发IT0=1;EX0=1;}/************************************************************** ******功能:串口初始化,波特率9600,方式1*************************************************************** ******/void UART_INIT(){TING=0;RING=0;TEND=1;REND=0;TCNT=0;RCNT=0;}/************************************************************** ******主函数*************************************************************** ******/void main(){TIMER0_INIT(); //定时器0初始化模拟串口用TIMER1_INIT(); //定时器1初始化Init_exint();times=IapReadByte(0); //读取函数EA=1; //开总中断UART_INIT(); //串口初始化while(1){if(REND){REND=0;r++;//but[r++&0x0f]=RBUF;dat=RBUF;}if(TEND){if(t!=r){TEND=0;//TBUF=dat;switch(dat) //接收数据判断{uchar k;k=10;case 'A': P33=1;delay(k);TBUF = dat;dat=0xee;break; // 开case 'B': P33=0;delay(k);TBUF = dat;dat=0xee;break; // 关case 'C': if(P33==1)TBUF = 'A'; // 串口读输出口状态if(P33==0)TBUF = 'B';delay(k);dat=0xee;break;case 'D': P33=!P33;delay(k);TBUF = dat;dat=0xee;break; // 输出口取反case 'E': delay(k);TBUF = times;dat=0xee;break; // 串口读取当前设定值default:break;}t++;//TBUF=but[t++&0x0f];TING=1;}}/************************************************************** ******接收数据判断函数*************************************************************** ******/}}/************************************************************** ******定时器T0中断服务函数*************************************************************** ******/void tm0()interrupt 1 using 1 {if(RING){if(--RCNT==0){RCNT=3;if(--RBIT==0){RBUF=RDAT;RING=0;REND=1;}else{RDAT>>=1;if(RXB)RDAT|=0X80;}}}else if(!RXB){RING=1;RCNT=4;RBIT=9;}if(--TCNT==0){TCNT=3;if(TING){if(TBIT==0){TXB=0;TDAT=TBUF;TBIT=9;}else{TDAT>>=1;if(--TBIT==0){TXB=1;TING=0;TEND=1;}elseTXB=CY;}}}}/********************************************************************外部中断0服务函数*************************************************************** ******/void Extern0 (void) interrupt 0 using 0{times++;if(times==20) //最大设定时间40秒times=0;IapEraseSector(0); //擦除0地址数据IapProgramByte(0,times); //写入0地址数据}/************************************************************** ******定时1中断服务函数*************************************************************** ******/void t1(void) interrupt 3 using 2{miao++;if(miao==200) //2秒{miao=0;fen++;if(fen==times) // times秒{fen=0;P33=!P33; //继电器状态取反}}}/************************************************************** ******结束*************************************************************** ******/。

基于ESP8226与单片机的灯光无线控制系统设计

基于ESP8226与单片机的灯光无线控制系统设计邱荣华(四川信息职业技术学院,四川广元628040)摘要:随着产品智能化的快速发展,智能家居普及越来越广泛,在现有家居应用较成熟的电路基础上,设计了一套基于ESP8226与单片机的灯光无线控制系统。

主要通过ESP8226无线WIFI模块实现APP与单片机通信、红外收发二极管实现主单片机与从单片机之间通讯以及单片机外围继电器回路控带)。

采用Eclipse软件开发简易手机APP结合STC15F 104W单片机实现对灯光的无线控制,进一步促进自动化技术在智能家居的应用及发展。

关键词:ESP8226;单片机;APP;无线控制0引言随着电子信息技术、自动控制技术的高速发展,社会信息化的快速提升,不促使智在工业中应用,人们的生活习惯与工作方式也悄然被改变。

生活水平的不断提升,人们对物质生活的品质追求越来越高,在家居生活中开始追求享受智能化,对家居的要求不再只调的生活居住所,而是高度安全、舒适美观方便的居住环境,拥有先进的通信基础设施、完备高效的信息终端、智能化的家电产品、网络化的及购物方式%1。

J 化行业的快速发展,各种产品已朝着智能化方向发展,随着科技的进步和人们生活水平的提高,人们对家庭生活的舒适度、安全度的要求越来越高,智能家居应运而生囚。

但现有家居中电路都应用比较成熟,很少愿意对家用电路全部重新改造,因此本系统采用手机APP基机与技术对传统电路进行优化,即可实现简易智能家居控制,且成本低廉,性可靠。

智能灯光控制系统是对灯光进行智能控制与管理的系统囚,与传统照明相比,它主要可以实现对灯光的调节。

一键设置场景、遥控及分全开全⑷,并可以采用多种方式实现上述功能,、远程、…作者简介:邱荣华(1985-),男,四川广元人,硕士,助教,研究方向:自动化控制技术。

1总体设计本由APP模块、无线传输模块、主控制器模块、继电器模块四部分组成,总图如图1所示。

图1系统总体结构框图本系统由软件控制端和硬件控制端组成,系统总体结图1所示。

基于STC系列单片机的比例遥控系统

基于STC系列单片机的比例遥控系统
刘晓燕;蒋朝根
【期刊名称】《甘肃科技纵横》
【年(卷),期】2008(037)002
【摘要】本设计介绍了一种采用STC系列带A/D转换的单片机STC12C2052AD 设计的比例遥控系统.该系统主要包括发射机电路和接收机电路.其中,发射机电路采用多个电位器(可变电阻)分压作为比例控制信号,通过对发射端单片机的软件程序设计将输出的多路经过A/D转换后的数字信号进行编码并由串行口送到发射模块发射:接收机电路的任务则是把接收到的信号进行适当放大并从中解调出编码信号,然后通过对接收端单片机的软件程序设计将该信号转换成相应的电动机驱动控制信号,从而完成对模型的方向和速度的控制.
【总页数】3页(P15-16,123)
【作者】刘晓燕;蒋朝根
【作者单位】西南交通大学,信息科学与技术学院,四川,成都,610031;西南交通大学,信息科学与技术学院,四川,成都,610031
【正文语种】中文
【中图分类】TP3
【相关文献】
1.单片机STC12C2052AD的比例遥控系统 [J], 刘晓燕
2.基于STC8A系列单片机的高精度频率计设计 [J], 李彦秀
3.基于STC8系列单片机的继电器控制电路设计 [J], 李虹静; 李升辉
4.基于STC8系列单片机的继电器控制电路设计 [J], 李虹静; 李升辉
5.基于STC15系列单片机的智能垃圾桶的设计 [J], 黄鑫磊;谭艳;赵鑫虎;彭松青;李春亮;左静
因版权原因,仅展示原文概要,查看原文内容请购买。

基于51单片机的无线遥控技术

摘要:本文讲解了基于51单片机的无线遥控技术。

关键词:51单片机 无线遥控技术在无线遥控应用领域,P T 2272和P T2262为应用最为广泛,使用最为简单的无线编码解码芯片。

其中2272为解码芯片,2262为编码芯片。

如图1、2所示,P T2262/P T2272是台湾普城公司生产的一种C M O S工艺制造的低功耗低价位通用编解码芯片。

主要用于无线遥控发射电路。

编码芯片P T2262发出的编码信号由地址码、数据码、同步码组成一个完整的传输信号,解码芯片P T2272接到信号后,其地址码经过两次比较核对后,V T脚输出高电平,与此同时相应的数据脚也输出高电平,如果遥控器一直按住按键,编码芯片也会连续发射。

当遥控器没有按键按下时,P T2262不接通电源,其17脚为低电平;当有按键按下时,PT2262 工作,其第17 脚输出串行信号。

PT2272解码芯片有不同的后缀,表示不同的功能,有L4/M4/L6/M6之分,其中L表示锁存输出,M表示非锁存(点动)输出,后缀的6和4表示有几路并行的控制通道,当采用4路并行数据点动输出时(P T2272-M4),对应的地址编码应该是8位,如果采用6路的并行数据点动输出时(P T2272-M6),对应的地址编码应该是6位。

除了编码解码芯片的地址码相同才可以配对使用外,还需要它们对应的振荡电阻大小匹配,图1、2中的16脚和15脚使用时所连接的电阻为相应的振荡电阻。

下面以无线遥控小车为例介绍一下51单片机构成的多路控制遥控器,如图3所示,想实现复杂的遥控信号传输,在发射端必须进行单片机的程序控制才能进行复杂的按钮输出,本例分为8种情况的按钮输出,分别为前进、后退、左转、右转、前进加左转、前进加右转、后退加左转及后退加右转,需要注意的是单片机使用的晶振为4M H Z,否则将影响信号传输的稳定性。

其汇编程序为:S1 EQU P1.0;前进S2 EQU P1.1;左转S3 EQU P1.2;右转S4 EQU P1.3;后退TE EQU P3.0ORG 0000H JMP MAIN1ORG 0030H;****************MAIN1: MOV B,#0;MAIN: MOV A,P1;ANL A,#0FH ; CJNE A,B,L0 ; JMP MAIN;****************L0: CJNE A,#00001110B,L1 ;CALL Q1 L1: CJNE A,#00000111B,L2 ;CALL Q2 L2: CJNE A,#00001101B,L3 ;CALL Q3L3: CJNE A,#00001011B,L4 ;CALL Q4 L4: CJNE A,#00001100B,L5 CALL Q5 L5: CJNE A,#00001010B,L6 CALL Q6 L6: CJNE A,#00000101B,L7 CALL Q7 L7: CJ N E A,#00000011B,L8CALL Q8L8: JMP MAIN;****************Q1: MOV P3,#01 CALL FS MOV B,#00001110B RET Q2: M OV P3,#02 CALL FS MOV B,#00000111B RET Q3: MOV P3,#03 CALL FS MOV B,#00001101B RET Q4: MOV P3,#04 CALL FS MOV B,#00001011B RETQ5: M OV P3,#05CALL FS MOV B,#00001100B RET Q6: M OV P3,#06 CALL FS MOV B,#00001010B RET Q7: MOV P3,#07 CALL FS MOV B,#00000101B RET Q8: M OV P3,#08 CALL FS MOV B,#00000011B RET;****************FS: SETB TE CLR TE RETEND图3:遥控器原理图在遥控接收端,控制小车的2个电机,一个电机的正反转决定小车的前进或后退,另一个电机的正反转决定小车的左转或右转,实现的功能与遥控端相对应,分别为前进、后退、左转、右转、前进的同时左转或右转及后退的同时左转或右转。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档