基于单片机的遥控窗帘设计Word文件下载.docx
《基于单片机的遥控窗帘设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于单片机的遥控窗帘设计Word文件下载.docx(19页珍藏版)》请在冰豆网上搜索。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机与工业80C51产品指令和引脚完全兼容。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
P0口:
P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和
数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0不具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;
在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,p1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可
以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。
此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。
在flash编程和校验时,P1口接收低8位地址字节。
引脚号第二功能:
P1.0T2(定时器/计数器T2的外部计数输入),时钟输出;
P1.1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制);
P1.5MOSI(在系统编程用);
P1.6MISO(在系统编程用);
P1.7SCK(在系统编程用)
P2口:
P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。
对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。
在这种应用中,P2口使用很强的内部上拉发送1。
在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:
P3口是一个具有内部上拉电阻的8位双向I/O口,p3输出缓冲器能驱动4个TTL逻辑电平。
对P3端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。
在flash编程和校验时,P3口也接收一些控制信号。
端口引脚第二功能:
P3.0RXD(串行输入口);
P3.1TXD(串行输出口);
P3.2INTO(外中断0);
P3.3INT1(外中断1);
P3.4TO(定时/计数器0);
P3.5T1(定时/计数器1);
P3.6WR(外部数据存储器写选通);
P3.7RD(外部数据存储器读选通) 此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。
RST:
复位输入。
当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。
ALE/PROG:
当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。
一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。
要注意的是:
每当访问外部数据存储器时将跳过一个ALE脉冲。
对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。
如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。
该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。
此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
PSEN:
程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。
EA/VPP:
外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。
需注意的是:
如果加密位LB1被编程,复位时内部会锁存EA端状态。
如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。
FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1:
振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:
振荡器反相放大器的输出端。
2.3单片机选择及主机系统电路
2.3.1单片机介绍
单片机又称单片微控制器,它不是完成某一个逻辑功能的芯片,而是把一个计算机系统集成到一个芯片上。
概括的讲:
一块芯片就成了一台计算机。
它的体积小、质量轻、价格便宜、为学习、应用和开发提供了便利条件。
同时,学习使用单片机是了解计算机原理与结构的最佳选择。
单片机内部也用和电脑功能类似的模块,比如CPU,内存,并行总线,还有和硬盘作用相同的存储器件,不同的是它的这些部件性能都相对我们的家用电脑弱很多,不过价钱也是低的,一般不超过10元即可......用它来做一些控制电器一类不是很复杂的工作足矣了。
我们现在用的全自动滚筒洗衣机、排烟罩、VCD等等的家电里面都可以看到它的身影!
......它主要是作为控制部分的核心部件。
它是一种在线式实时控制计算机,在线式就是现场控制,需要的是有较强的抗干扰能力,较低的成本,这也是和离线式计算机的(比如家用PC)的主要区别。
单片机是靠程序的,并且可以修改。
通过不同的程序实现不同的功能,尤其是特殊的独特的一些功能,这是别的器件需要费很大力气才能做到的,有些则是花大力气也很难做到的。
一个不是很复杂的功能要是用美国50年代开发的74系列,或者60年代的CD4000系列这些纯硬件来搞定的话,电路一定是一块大PCB板!
但是如果要是用美国70年代成功投放市场的系列单片机,结果就会有天壤之别!
只因为单片机的通过你编写的程序可以实现高智能,高效率,以及高可靠性!
目前单片机渗透到我们生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。
导弹的导航装置,飞机上各种仪表的控制,计算机的网络通讯与数据传输,工业自动化过程的实时控制和数据处理,广泛使用的各种智能IC卡,民用豪华轿车的安全保障系统,录象机、摄象机、全自动洗衣机的控制,以及程控玩具、电子宠物等等,这些都离不开单片机。
更不用说自动控制领域的机器人、智能仪表、医疗器械了。
因此,单片机的学习、开发与应用将造就一批计算机应用与智能化控制的科学家、工程师。
2.3.2单片机最小应用系统图
图2AT89S51最小系统接线图
2.4基于单片机的遥控窗帘设计
2.4.1设计要求
1.控制窗帘的开关、利用直流电机正反转实现。
2.防过卷功能。
3.具有无线遥控和手动按键控制两种功能。
4.能够指示运行状态。
2.4.2各部分介绍
图3键盘电路
当无按键按下时,输出端口为高电平,当有按键按下的时候,则对应的端口为低电平,并且对应的发光二极管点亮。
从右到左依次为AB分别接单片机AT89S52的P2.0P2.1口。
图4远程遥控芯片接口图
对应的端口接对应的接口。
GND+5分别介于地与+5V上,D0D1分别接单片机AT89S52的P0.0P0.1口,D2D3悬空不用,VT端口接个发光二极管用来指示是否用无线遥控开关控制的。
当遥控器上的AB分别按下时D0D1分别置于1,且每次按下VT为1。
1.技术参数:
(1)工作电压(V):
DC5V
(2)静态电流(mA):
4.5MA
(3)调制方式:
调幅(OOK)
(4)工作温度:
-10℃~+70℃
(5)接收灵敏度(dBm):
-105DB
(6)工作频率:
315、433.92MHz(266-433MHZ频率段可任选)
(7)编码方式:
焊盘编码(固定码)
(8)工作方式:
M4(点动:
按住不松手就输出,一松手就停止输出)、L4(互锁:
四路同时只能有一路输出)、T4(自锁:
四路相互独立输出、互不影响,按一下输出再按一下停止输出)
(9)尺寸(LWH):
41*23*7mm
2.产品特点:
超再生接收模块采用LC振荡电路,内含放大整形,输出的数据信号为解码后的高电平信号,使用极为方便,并且价格低廉,所以被广泛使用。
带四路解码输出(同时也可改为六路点动或互锁输出),使用方便;
频点调试容易,供货周期短;
产品质量一致性好,性价比高。
接收模块有较宽的接收带宽,一般为±
10MHz,出厂时一般调在315MHz或433.92MHZ(如有特殊要求可调整频率,频率的调整范围为266MHz~433MHz。
)。
接收模块一般采用DC5V供电,如有特殊要求可调整电压范围。
3.脚位及使用说明:
脚位
名称
功能说明
1
VT
输出状态指示
2
D3
数据输出
3
D2
4
D1
5
D0
6
5V
电源正极
7
GND
电源负极
ANT
接天线端
表1脚位
接收模块一共有八个外部接口,上面有英文表示。
“5V”表示接电源正极,“D0、D1、D2、D"
3”表示输出,“GND”表示接电源负极,“ANT”表示接天线端。
使用前要接上50欧姆1/4波长的天线,并且天线应该是直的,以达到最佳的接收效果,波长=光速/频率。
4.应用环境(应用领域)
无线遥控开关、遥控插座、数据传输、遥控玩具、防盗报警主机、车库门、卷闸门、道闸门、伸缩门等门控业及其遥控音响领域等。
5.备注
VCC电压要与模块工作电压一致,且要做好电源滤波;
天线位置对模块接收效果亦有影响,安装时,天线尽可能伸直,远离屏蔽体,高压,及干扰源的地方;
使用时接收频率、解码方式应与发射匹配。
图5光耦驱动电路
端口1接+5V,当2端口为GND时,电压驱动发光二极管发光,同时光
敏三极感光,输出低电平;
当端口1为0时,发光二极管不导通,不发光,输出为电平为高电平。
光电耦合器主要起到光电隔离,防止相互干扰。
图6L298N管脚图
引脚
符号
功能
15
SENSINGA
SENSINGB
此两端与地连接电流检测电阻,并向驱动芯片反馈检测到的信号
OUT1
OUT2
此两脚是全桥式驱动器A的两个输出端,用来连接负载
Vs
电机驱动电源输入端
IN1
IN2
输入标准的TTL逻辑电平信号,用来控制全桥式驱动器A的开关
11
ENABLEA
ENABLEB
使能控制端.输入标准TTL逻辑电平信号;
低电平时全桥式驱动器禁止工作。
8
接地端,芯片本身的散热片与8脚相通
9
Vss
逻辑控制部分的电源输人端口
10
12
IN3
IN4
输入标准的TTL逻辑电平信号,用来控制全桥式驱动器B的开关
13
14
OUT3
OUT4
此两脚是全桥式驱动器B的两个输出端,用来连接负载
表2
L298的逻辑控制见如下表3.3。
其中C、D分别为IN1、IN2或IN3、IN4;
L为低电平,H为高电平,※为不管是低电平还是高电平。
输入
输出
Ven=H
C=H;
D=L
正转
C=L;
D=H
反转
C=D
制动
Ven=L
C=※;
D=※
没有输出,电机不工作
表3
L298对直流电机控制的逻辑真值表
图7L298N接线图
图为本次课程设计的L298N接线图,1815分别接地,469分别接+5V电源,23为输出,57为输入。
图8指示电路图
上图为指示电路图,当有一端输出时,也就是一个高电平一个低电平,发光二极管发光,当相反时,另一个二极管发光来达到指示电机正反转。
图9
如图所示,对应的端口分别接对应的地与+5V。
当有磁铁靠近时,输出为高电平。
当窗帘右移时,达到指定的位置时,对应的输出为高电平,电机停转。
当窗帘左移
时,到达指定的位置时,对应的输出为高电平,电机停转。
总电路接线图如下:
见附页。
3软件设计
3.1流程图
图10流程图
课程设计体会
通过本次课程设计,使我对单片机有了更深入的理解。
单片机是一门实践性较强的课程,为了学好这门课程,必须在掌握理论知识的同时,加强实践。
一个人的力量是有限的,要想把课程设计做的更好,就要学会参考一定的资料,吸取别人的
经验,让自己和别人的思想有机的结合起来,得出属于你自己的灵感。
程序的编写需要有耐心,有些事情看起来很复杂,但问题需要一点一点去解决,分析问题,把问题一个一个划分,划分成小块以后就逐个去解决。
再总体解决大的问题。
这样做起来不仅有条理也使问题得到了轻松的解决。
在这个过程中,我也曾经因为实践经验的缺乏失落过,也曾经仿真成功而热情高涨。
生活就是这样,汗水预示着结果也见证着收获。
劳动是人类生存生活永恒不变的话题。
虽然这只是一次的极简单的课程制作,可是平心而论,也耗费了我不少的心血,这就让我不得不佩服开发技术的前辈,才意识到老一辈对我们社会的付出,
为了人们的生活更美好,他们为我们社会所付出多少心血啊!
对我而言,知识上的收获重要,精神上的丰收更加可喜。
让我知道了学无止境的道理。
我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。
挫折是一份财富,经历是一份拥有。
这次课程设计必将成为我人生旅途上一个非常美好的回忆!
通过这次的课程设计我对于专业课的学习有了更加深刻的认识,以为现在学的知识用不上就加以怠慢,等到想用的时候却发现自己的学习原来是那么的不扎实。
以后努力学好每门专业课,让自己拥有更多的知识,才能解决更多的问题!
参考文献
[1]余发山,王福忠.《单片机原理及应用技术》.徐州:
中国矿业大学出版社,2008.6
[2]何立民.《单片机应用系统设计》.[M].北京:
北京航空航天大学出版社,1993
[3]楼然笛.《单片机开发》.[M].北京:
人民邮电出版社,1994
[4]董爱华.《检测与转换技术》.北京:
中国电力出版社,2009.4
[5]李光才.《单片机课程设计实例指导》.[M]:
北京:
北京航空航天大学出版社,2004
[6]姚福安.《电子电路设计与实践》.济南:
山东科学技术出版社,2005
[7]何西才、杨静、任丽英.《实用传感器接口电路实例》.北京:
中国电力出版社,2007
[8]刘守义.《单片机应用技术》.陕西:
西安电子科技大学出版社,2007
[9]王丽、杨伟丰.《电机无线遥控系统设计的研究大众科技》.2009,11124-125
[10]周航慈、朱兆优.《智能仪器原理与设计》.北京:
北京航空航天大学出版社,2005
[11]汪世明、周继明.《传感技术及应用》.中南大学出版社,2005
[12]付家才.《单片机控制工程实践技术》.[M]:
化学工业出版社,2004.3
附录一
附录二
实验程序
#include<
reg52.h>
#defineuintunsignedint
#defineucharunsignedchar
ucharresult;
uchara1=0,a2=0;
bita3;
bita4;
sbitshouzheng=P2^0;
//手动按键
sbitshoufan=P2^1;
sbitzheng1=P0^0;
//无线接收
sbitfan1=P0^1;
sbitzheng=P1^0;
//光耦端
sbitfan=P1^1;
sbitzheng2=P2^2;
//霍尔接收端
sbitfan2=P2^3;
voiddelay(uchara);
shou();
shou1();
voidmain()
{
P1=0;
P2=0;
P0=0;
P3=0;
if(zheng1==1)//无线接收//
{
a1=1;
a2=0;
}
elseif(fan1==1)
{
a2=1;
a1=0;
shou();
shou1();
if(zheng2==0)//霍尔接收端
a3=0;
if(fan2==0)
a4=0;
if((a1==1&
&
a2==0)||a3==1)//PWM波的产生,正转
while(fan2==1)
{
zheng=1;
delay(5);
zheng=0;
delay
(1);
}
zheng=1;
elseif((a2==1&
a1==0)||a4==1)//PWM波得产生,反转
while(zheng2==1)
fan=1;
fan=0;
fan=1;
}
voiddelay(uchara)//延时
ucharc,d;
for(c=a;
c>
0;
c--)
for(d=110;
d>
d--);
shou()//手动控制正反转扫描,消除抖动
if(shouzheng==1)
delay(10);
if(shouzheng==1)
a3=1;
returna3;
shou1()
if(shoufan==1)
if(shoufan==1)
a4=1;
returna4;
致谢
经过白龙老师细心教导和指点,加上我们小组的积极配合和参与,经过自己不断的搜索努力,本设计已经基本完成。
在这段时间里,老师严谨的治学态度和热忱的工作作风令我十分钦佩并受益非浅,在此对白老师表示深深的感谢。
通过这次毕业设计,使我深刻地认识到学好专业知识的重要性,也理解了理论联系实际的含义,并且检验了大学四年学习成果。
虽然在这次设计中对于知识的运用和衔接还不够熟练。
但是我将在以后的工作和学习中继续努力、不断完善。
这两周的设计是对过去所学知识的系统提高和扩充的过程,为今后的发展打下了良好的基础。