关于单片机的毕业设计.docx
《关于单片机的毕业设计.docx》由会员分享,可在线阅读,更多相关《关于单片机的毕业设计.docx(66页珍藏版)》请在冰豆网上搜索。
关于单片机的毕业设计
基于单片机控制的无线防盗系统
摘要
本设计主要目的是建立一个整体的家庭及仓库等重要物品放置地的安防监控系统,主要功能是实时监测一定区域的人体接近状况,并把当前监测状态无线传输到距离在20-30M以内的安装主机的房间中,实现无线的监控,降低了小区或者仓库管理员的工作强度,借此希望小区或工厂的贵重物品安全问题得到有效解决。
系统主要由二个模块组成:
一个人体接近动作模块,主要负责实时监控人体接近与否的状态,若人体接近则传感器立即向CPU发送标志数据,CPU接收到传感器数据后马上响应,向模块上的无线发送模块发送数据,无线发送模块接收到数据后以高速的方式向主机模块上的主机发送数据,实现实时监测人体接近与否的功能;一个主机模块,主要负责接收从机监测模块发送来的数据并处理送至液晶显示器显示以及当监测模块达到预设效果产生报警的功能,作为实时监控系统。
为了丰富系统的功能和有效的利用系统资源,在主机模块还加入了一个掉电不丢失的精确时钟显示以及用红外遥控控制时间修改和报警解除的功能。
考虑到软件的执行效果和系统整体的稳定性,本设计中的所有软件均在整体和局部的事物电路上调试成功。
因此,本次设计的方案具有可行性。
[Ⅰ]
关键字:
单片机;
无线传输;
人体接近;
红外遥控
[Ⅱ]
摘要...........................................................Ⅰ
关键字.........................................................Ⅱ
前言............................................................2
1.功能概述......................................................3
2.总体方案......................................................4
2.1总体分析...................................................4
2.2方案框图...................................................4
3.系统构成......................................................5
3.1人体接近模块...............................................5
3.1.1STC12C5410AD单片机介绍..............................5
3.1.2人体感应模块.........................................6
3.1.3NRF24L01无线通信模块................................8
3.2主机模块..................................................12
3.2.11602液晶显示器......................................12
3.2.2STC89C52RC+单片机介绍...............................14
3.2.3红外接收头及遥控....................................15
3.2.4DS12C887............................................17
4.软件设计......................................................19
4.1人体接近动作模块流程图....................................19
4.2主机模块流程图............................................19
结论............................................................20
致谢............................................................20
参考文献........................................................21
附录............................................................22
1.程序代码..................................................22
1.1人体接近模块C代码....................................22
1.2主机模块C代码........................................26
2.原理图和实物图............................................46
前言
随着现代电子技术计算通信技术的迅速发展,有关防盗报警方面的产品愈来愈丰富。
尤其红外技术得到了迅猛的发展,红外探测技术已渗透到国民经济的各行各业和人们生活的方方面面。
近年来,随着改革开放的深入发展,电子电器的飞速发展,人民的生活水平有了很大提高。
各种高档家电产品和贵重物品为许多家庭所拥有。
然而一些不法分子也是越来越多。
这点就是看到了大部分人防盗意识还不够强.造成偷盗现象屡见不鲜。
因此,越来越多的居民家庭对财产安全问题十分担忧。
防盗报警系统是在探测到防范现场有入侵者时能及时发出报警信号的专用电子系统,一般由探测器(报警器)、传输系统和报警控制器组成。
探测器检测到意外情况就产生报警信号,通过传输系统送入报警控制器发出声、光或其他报警信号。
探测器(报警器)的种类很多,按所探测的物理量的不同,可分为微波、红外、激光、超声波和振动等方式;按电信号传输方式不同,又可分为无线传输和有线传输两种方式。
由于红外线是不见光,有很强的隐蔽性和保密性,因此在防盗、警戒等安保装置中得到了广泛的应用,这时红外线报警器的简易、灵敏度高为人们解决了不少问题。
但是市场上的报警器大部分都是用于一些大公司财政机构,价格高昂,一般人们难以接受,如果再设计和生产一种价廉、性能灵敏可靠的防盗报警器,必将为大多数需求者所利用,在人们的防盗和保证财产安全方面发挥更加有效的作用。
本次设计采用性价比较高的51单片机作为处理器,在加上1602字符型液晶作为显示设备,采用NRF24L01无线传输模块作为主要无线传输模块,辅助采用双元热释电传感器作为检测器件。
在微控制器方面,51系列单片机虽然在处理速度上和AVR及ARM等系列单片机有一定差距,但作为8位单片机,51单片机的简单但实用的各种资源决定了它作为低速单片机的主流产品,而本次设计由于对单片机的速度没有特殊的要求,也将此款单片机作为首选控制芯片。
在显示器选用方面,由于考虑到数码管只能显示数字和少数简单的字母,达不到显示要求,因此决定采用液晶显示器。
又考虑到本次设计中可以精简到不用汉字显示,遂决定选用1602的字符型液晶。
此液晶虽不能显示汉字但可以显示全部的数字和英文字母及一些较复杂的字符,内部还存有字符库,编程上非常方便。
而在无线传输设备的选用上,NRF24L01这款无线模块内部有6路无线通道,可以实现1对6的无线传输,而且可以低速传入高速发送,非常适合和51系列低速单片机接口连接,而价格方面相对其他的无线模块要低得多。
通过对这些主要器件选用的严格控制,有效的减少了该系统的设计成本,虽然在性能上会弱于市面上的系统,但无疑对于家庭和仓库这些对灵敏要求不很高的地方使用,本系统是一个较好的选择。
1.功能概述
人体接近模块上的红外热释电传感器在通电后持续监控外部红外线热信号,当在其监控区域范围内产生了一定范围内变化的红外热信号(人体红外信号),热释电传感器将热信号转换为电信号通过其模块电路转化成单片机能区分的电平信号。
单片机检测到信号后转化为字符串发送到无线模块上,无线模块接收到数据后转化成数据包高速发送出去并立即转换为接收模式,等待主机发来确认信号,接收到确认信号后确认发送成功,传输模块进入待机模式,等待下一个数据的到来。
主机模块功能由时间产生芯片、显示时间和信号变化的显示器(液晶屏)、报警器件(蜂鸣器)、信号接收装置(无线模块)组成、时间修改装置(红外接收头和红外遥控器)。
其中时间芯片能内部产生精准的时间信号,并保存到其内部的寄存器中,单片机读取其寄存器时间数据然后经过处理后发送至显示器显示。
无线模块接收到从机模块发送过来的数据后,将人体接近模块的数据存储到无线数据模块中,然后通过SPI总线将数据传送到单片机中,单片机处理数据后送至液晶显示器上显示。
如果接收到的数据超过或者达到预设的效果,则蜂蜜器产生报警。
红外接收头主要接收红外遥控器通过外部中断发送过来的数据包,然后将数据包送至单片机中,单片机外部中断检测到数据后停止主程序的执行,转向执行中断程序,中断执行完毕后通过返回来的值实现时间的修改和蜂蜜器报警解除等功能。
人体接近无线报警实现过程为:
当人体接近到热释电传感器范围内时,传感器检测到信号动作并将信号传入从机模块的CPU中,CPU检测到信号传入便马上通过SPI总线向无线传输模块中发送预设标志数据。
传输完毕后,无线模块自动加上地址位、检验位、开始位等打包成一个数据包并在加强模式下高速发送出去。
主机模块检测到数据包并确认数据正确后去除发送模块添加的数据部分取出发送来的数据并发送至主机模块的CPU中,CPU检测是否是人体接近信号。
判别无误后,CPU向显示器发送显示'F'指令,刷新显示屏的初始化设置的'N'显示并控制蜂鸣器发声,借以通知主机安装房间有人进入检测区域。
当主机检测房间监控人员察觉后可以通过遥控键来解除报警,再去处理问题。
另外,主机模块上还附加了一个精确的万年历功能,主机开机后进入显示器自检界面,进入欢迎界面停留后进入时钟显示界面,该界面显示当前年、月、日、时、分、秒、星期并根据当前时间不断进行刷新。
该时钟具有两个较为明显的特点:
一是采用DS12C887这款时钟芯片来作为时间发生芯片,这款芯片的最大特点是它能在主机断电后持续工作长达10年的时间,而且时间精确度很高;其二是在调节时间日期的功能上取消了原有的用主机键盘调节的模式,改用红外遥控来修改时间,方便工作人员的同时也充分的利用了遥控的资源。
2.总体方案
2.1总体分析
本设计主要主要是实现通过对重要地区的人体接近检测达到人体接近重要地带时放置在重要地方附近的主机系统显示并报警,以及主机系统精确显示当前时间并能通过红外遥控修改当前的时间的功能。
整个系统采用单片机作为控制元件,辅助采用人体接近释电模块作为检测人体接近并将信号传入单片机作为检测传感器;用NRF24L01无线传输模块作为两系统间的无线传输设备;使用红外接收头作为红外信号接收设备。
整个过程通过传感器不断对外检测信号并传入到单片机实现对人体接近的实时监控,通过红外遥控的按键来修改当前时间及日期值并可以作为人体接近报警的解除开关。
2.2方案框图
人
体
接
近
检
测
模
块
STC
12C
5410AD
单
片
机
NRF24L01
无
线
发
送
模
块
LED信号显示灯
NRF24L01
无
线
接
收
模
块
STC89C52RC单
片
机
LED信号显示灯
蜂鸣器
DS12C887时钟芯片
74HC595锁存芯片
1602液晶显示器
红外接收头
带有红外发射电路的红外遥控
人体
3.系统构成
3.1人体接近模块
3.1.1STC12C5410AD单片机介绍
STC12C5410AD系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机。
指令代码完全兼容传统的8051单片机,但速度快8-12倍,内部集成MAX810专用复位电路。
4路PWM,8路高速10位A/D,D/A转换,针对电机控制,强干扰场合。
1,增强型8051CPU,1T,单时钟/机器周期,指令代码完全兼容传统的8051单片机。
2,工作电压:
5.5-3.3V。
3,工作频率范围为0-35MHZ,相当于普通单片机8051的0-420MHZ,实际工作频率可达到48MHZ。
4,10Kflash存储空间。
5,片上集成512字节的RAM。
6,15个普通I/O口,可设置成四种模式:
准双向口/弱上拉,推免/强上拉,仅为输入/高阻,开漏,每个I/O口驱动能力可达到20MA,但整个芯片最大不能超过55MA。
7,ISP(在线系统编程)/IAP(在应用可编程),无需专用编程器,无需专用仿真器,可通过串口直接下载用户程序,数秒即可完成一片。
8,EEPROM功能。
9,看门狗。
10,时钟源:
外部高精度时钟,内部R/C振荡器。
用户在下载程序时可选择使用内部振荡器还是外部时钟。
常温下内部振荡器的频率为5.2MHZ-6.8MHZ。
精度要求不高时,可选用内部时钟。
11,共2个16位定时/计数器,但可以用PCA模块再产生4个定时器。
12,2路外部中断,可选择下降沿触发和低电平触发两种方式。
13,4路PWM。
14,8路10位高精度A/D,D/A转换。
15,通用全双工异步串行口(UART),由于STC12系列是高速的,亦可以用定时器软件实现多串口。
16,SPI同步通信口,有主机/从机模式。
17,工作温度范围:
-40—+85。
3.1.2人体感应模块
基于红外线技术的自动控制产品,灵敏度高,可靠性强,超低电压工作模式,广泛应用于各类自动感应电器设备,尤其是干电池供电的自动控制产品。
模块电气参数:
电气参数
0丫厂-1^003人体感应模块
工作电压范围
004.5-20、
静态电流
〈50以八
电平输出
高3.3乂/低例
触发方式
^不可重复触发很重复触发
延时时间
58(默认〉可制作范围零点几秒-几十分钟
封锁时间
1.58(默认〉可制作范围零点几秒-几十秒
电路板外形尺寸
感应角度
〈100度锥角
感应距离
7米以内
工作温度
-15-+70度
感应透镜尺寸
直径32MM默认)
模块功能特点:
1.全自动感应:
人进入其感应范围则输出高电平,人离开感应范围则自动延时关闭高电平,输出低电平。
2^光敏控制(可选择,出厂时未设〉:
可设置光敏控制,白天或光线强时不感应。
温度补偿(可选择,出厂时未设、在夏天当环境温度升高至30〜321:
,探测距离稍变短,温度补偿可作一定的性能补偿。
4丨两种触发方式:
〔可跳线选择)
^不可重复触发方式:
即感应输出高电平后,延时时间段一结束,输出将自动从高电平变为低电平;
^可重复触发方式:
即感应输出高电平后,在延时时间段内,如果有人体在其感应范围活动,其输出将一直保持高电平,直到人离开后才延时将高电平变为低电平(感应模块检测到人体的每一次活动后会自动顺延一个延时时间段,并且以最后一次活动的时间为延时时间的起始点〉。
5^具有感应封锁时间(默认设置:
无封锁时间、感应模块在每一次感应输出后(高电平变成低电平〉,可以紧跟着设置一个封锁时间段,在此时间段内感应器不接受任何感应信号。
此功能可以实现“感应输出时间”和“封锁时间”两者的间隔工作,可应用于间隔探测产品;同时此功能可有效抑制负载切换过程中产生的各种干扰。
(此时间可设置在零点几秒一几十秒钟)。
6丨工作电压范围宽:
默认工作电压0以』^-20乂。
飞.微功耗:
静态电流〈50微安,特别适合干电池供电的自动控制产品。
8丨输出高电平信号:
可方便与各类电路实现对接。
模块感应范围:
3.1.3NRF24L01无线通信模块
概述:
nRF24L01是一款工作在2.4~2.5GHz世界通用ISM频段的单片无线收发器芯片。
无线收发器包括:
频率发生器、增强型SchockBurstTM模式控制器、功率放大器、晶体振荡器、调制器、解调器。
输出功率、频道选择和协议的设置可以通过SPI接口进行设置。
极低的电流消耗:
当工作在发射模式下发射功率为-6dBm时电流消耗为9mA,接收模式时为12.3mA。
掉电模式和待机模式下电流消耗更低。
原理图:
功能描述:
工作模式:
nRF24L01可以设置为以下几种主要的模式,
模式
PWR_UP
PRIM_RX
CE
FIFO寄存器状态
接收模式
1
1
1
-
发送模式
1
0
1
数据在TXFIFO寄存器中
发送模式
1
0
1→0
停留在发送模式,直至数据发送完
待机模式II
1
0
1
TXFIFO为空
待机模式I
1
-
0
无数据传输
掉电模式
0
-
-
-
表6
关于nRF24L01I/O脚更详细的描述请参见下面的表7。
nRF24L01在不同模式下的引脚功能
引脚名称
方向
发送模式
接收模式
待机模式
掉电模式
CE
输入
高电平>10us
高电平
低电平
-
CSN
输入
SPI片选使能,低电平使能
SCK
输入
SPI时钟
MOSI
输入
SPI串行输入
MISO
三态输出
SPI串行输出
IRQ
输出
中断,低电平使能
表7、nRF24L01引脚功能
待机模式:
待机模式I在保证快速启动的同时减少系统平均消耗电流。
在待机模式I下,晶振正常工作。
在待机模式II下部分时钟缓冲器处在工作模式。
当发送端TXFIFO寄存器为空并且CE为高电平时进入待机模式II。
在待机模式期间,寄存器配置字内容保持不变。
掉电模式:
在掉电模式下,nRF24L01各功能关闭,保持电流消耗最小。
进入掉电模式后,nRF24L01停止工作,但寄存器内容保持不变。
启动时间见表格13。
掉电模式由寄存器中PWR_UP位来控制数据包处理方式:
nRF24L01有如下几种数据包处理方式:
ShockBurstTM(与nRF2401,nRF24E1,nRF2402,nRF24E2数据传输率为1Mbps时相同)
增强型ShockBurstTM模式
ShockBurstTM模式:
ShockBurst模式下nRF24L01可以与成本较低的低速MCU相连。
高速信号处理是由芯片内部的射频协议处理的,nRF24L01提供SPI接口,数据率取决于单片机本身接口速度。
ShockBurst模式通过允许与单片机低速通信而无线部分高速通信,减小了通信的平均消耗电流。
在ShockBurstTM接收模式下,当接收到有效的地址和数据时IRQ通知MCU,随后MCU可将接收到的数据从RXFIFO寄存器中读出。
在ShockBurstTM发送模式下,nRF24L01自动生成前导码及CRC校验,参见表格12。
数据发送完毕后IRQ通知MCU。
减少了MCU的查询时间,也就意味着减少了MCU的工作量同时减少了软件的开发时间。
nRF24L01内部有三个不同的RXFIFO寄存器(6个通道共享此寄存器)和三个不同的TXFIFO寄存器。
在掉电模式下、待机模式下和数据传输的过程中MCU可以随时访问FIFO寄存器。
这就允许SPI接口可以以低速进行数据传送,并且可以应用于MCU硬件上没有SPI接口的情况下。
增强型的ShockBurstTM模式:
增强型ShockBurstTM模式可以使得双向链接协议执行起来更为容易、有效。
典型的双向链接为:
发送方要求终端设备在接收到数据后有应答信号,以便于发送方检测有无数据丢失。
一旦数据丢失,则通过重新发送功能将丢失的数据恢复。
增强型的ShockBurstTM模式可以同时控制应答及重发功能而无需增加MCU工作量。
图ⅠnRF24L01在星形网络中的结构图图ⅡnRF24L01接口图
nRF24L01在接收模式下可以接收6路不同通道的数据,见图4。
每一个数据通道使用不同的地址,但是共用相同的频道。
也就是说6个不同的nRF24L01设置为发送模式后可以与同一个设置为接收模式的nRF24L01进行通讯,而设置为接收模式的nRF24L01可以对这6个发射端进行识别。
数据通道0是唯一的一个可以配置为40位自身地址的数据通道。
1~5数据通道都为8位自身地址和32位公用地址。
所有的数据通道都可以设置为增强型ShockBurst模式。
3.2主机模块
3.2.11602液晶
实物图:
简介
1602液晶也叫1602字符型液晶,它是一种专门用来显示字母、数字、符号等的点阵型液晶模块。
它由若干个5*7或者5*11的点阵组成,每个点阵字符位都可以显示一个字符。
每位之间都有一个点距的间隔,每行之间也有间隔,起到了字符间距和行间距的作用,正因为如此,它不能显示图形。
液晶能显示两行字符,每行可显示16位。
模块编程简便,刷新速度快,是一款低端的高性能显示设备。
管脚功能
引脚说明
1602字符型LCD通常有14条引脚线或16条引脚线的LCD,多出来的2条线是背光电源线 VCC(15脚)和地线GND(16脚),其控制原理与14脚的LCD完全一样,其中:
引脚
符号
功能说明
1
VSS
一般接地
2
VDD
接电源(+5V)
3
V0
液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
4
RS
RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
5
R/W
R/W为读写信号线,高电平
(1)时进行读操作,低电平(0)时进行写操作。
6
E
E(或EN)端为使能(enable)端,下降沿使能。
7
DB0
低4位三态、双向数据总线0位(最低位)
8
DB1
低4位三态、双向数据总线1位
9
DB2
低4位三态、双向数据总线2位
10
DB3
低4位三态、双向数据总线3位
11
DB4
高4位三态、双向数据总线4位
12
DB5
高4位三态、双向数据总线5位
13
DB6
高4位三态、双向数据总线6位
14
DB7
高4位三态、双向数据总线7位(最高位)(也是busyflag)
15
BLA
背光电源正极
16
BLK
背光电源负极
寄存器选择控制表
RS
R/W
操作说明
0
0
写入指令寄存器(清除屏等)
0
1
读busyflag(DB7),以及读取位址计数器(DB0~DB6)值
1
0
写入数据寄存器(显示各字型等)
1
1
从数据寄存器读取数据