当前位置:文档之家› 基于单片机的教室人数统计

基于单片机的教室人数统计

基于单片机的教室人数统计
基于单片机的教室人数统计

沈阳航空航天大学

课程设计

(论文)

题目教室人数统计系统的设计

班级

学号

学生姓名

指导教师

沈阳航空航天大学

课程设计任务书

课程名称专业综合课程设计

院(系)自动化学院专业测控技术与仪器

班级04070101 学号姓名

课程设计题目教室人数统计系统的设计

课程设计时间: 2013 年12 月30 日至2014 年 1 月10日课程设计的内容及要求:

1.设计一个教室人数统计系统,系统功能如下:

①采用单片机作为控制核心电路;

②由安装于门口的两个光电传感器用于识别进出教室的人数;

③采用二位数码管显示教室里的人数。

2.设计硬件电路原理图。

3.焊接硬件电路并进行调试。

4.软硬件结合调试,系统能脱离开发系统单独运行。

指导教师年月日

负责教师年月日

学生签字年月日

沈阳航空航天大学

课程设计成绩评定单

课程名称专业基础课程设计

院(系)自动化学院专业测控技术与仪器

课程设计题目教室人数统计系统的设计

学号姓名答辩日期年月日指导教师(答辩组)评语:

课程设计成绩

指导教师(答辩组)签字

年月日

目录

0 前言 (2)

1 总体方案设计 (2)

2 硬件电路设计 (3)

2.1 单片机系统 (3)

2.1.1 AT89C51性能 (3)

2.1.2 AT89C51各引脚功能 (3)

2.1.3复位电路设计 (5)

2.1.4 时钟电路设计 (5)

2.3 LED显示系统设计 (7)

2.3.1LED基本结构 (7)

2.3.2 LED译码方式 (7)

3 软件设计 (8)

3.1工作原理 (8)

3.2程序流程图: (9)

3.3显示子程序 (9)

4 调试分析 (9)

参考文献 (11)

课设体会 (12)

附录1 电路原理图 (13)

附录2 程序清单 (14)

教室人数统计系统的设计

沈阳航空航天大学自动化学院

摘要

本方案为教室人数技术器系统设计,通过模拟教室人员的出入,当有同学进入时进行加计数,当有同学外出时进行减计数,并把现在教室人数通过LED显示出来。通过这个程序,教室可以很好的了解教室内的学生人数,既方便了学生的人数统计,同时也方便了老师的教学进展。本系统可以与智能教室系统结合到一体,根据教室人数多少只能调节光线等,达到节能环保的目的。

关键词单片机;数码管;光电传感器;

0 前言

本方案基于单片机80C51我们设计了一个教室人数自动统计系统。通过本次课设计加深了对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。掌握外部中断和LED显示的设置以及相应的传感器原理。通过此次课程设计能够将单片机软件结合起来,对程序进行编辑,校验。

1 总体方案设计

教室前门不开,只通后门。测量系统硬件框图所示。利用两个光敏二极管传感器,当有人从后门进出的时候,将产生电压脉冲,再利用单片机的外部中断功能进加减计数,最终显示出教室中的实际人数。

图1 系统原理框图

2 硬件电路设计

2.1单片机系统

2.1.1 AT89C51性能

AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含有4KB的可反复擦写的只读程序存储器和128字节的随机存储器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容,由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,它为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。

AT89C51功能性能:与MCS-51成品指令系统完全兼容;4KB可编程闪速存储器;寿命:1000次写/擦循环;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B内部RAM;32个可编程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片内震荡器和掉电模式。

2.1.2 AT89C51各引脚功能

AT89C51提供以下标准功能:4KB的Flash闪速存储器,128B内部RAM,32个I/O口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内震荡器及时钟电路,同时,AT89C51可降至0Hz静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时/计数器,串行通信口及中断系统继续工作,掉电方式保存RAM中的内容,但震荡器停止工作并禁止其他所有工作直到下一个硬件复位。AT89C51采用PDIP 封装形式,引脚配置如图2所示。

图2 AT89C51的引脚图

AT89C51芯片的各引脚功能为:

P0口:这组引脚共有8条,P0.0为最低位。这8个引脚有两种不同的功能,分别适用于不同的情况,第一种情况是89C51不带外存储器,P0口可以为通用I/O口使用,P0.0-P0.7用于传送CPU的输入/输出数据,这时输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入的可靠性;第二种情况是89C51带片外存储器,P0.0-P0.7在CPU访问片外存储器时先传送片外存储器的低8位地址,然后传送CPU对片外存储器的读/写数据。P0口为开漏输出,在作为通用I/O使用时,需要在外部用电阻上拉。

P1口:这8个引脚和P0口的8个引脚类似,P1.7为最高位,P1.0为最低位,当P1口作为通用I/O口使用时,P1.0-P1.7的功能和P0口的第一功能相同,也用于传送用户的输入和输出数据。

P2口:这组引脚的第一功能与上述两组引脚的第一功能相同即它可以作为通用I/O口使用,它的第一功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但并不是像P0口那样传送存储器的读/写数据。

P3口:这组引脚的第一功能和其余三个端口的第一功能相同,第二功能为控制功能,每个引脚并不完全相同,如下表1所示:

Vcc为+5V电源线,Vss接地。

ALE:地址锁存允许线,配合P0口的第二功能使用,在访问外部存储器时,89C51的CPU在P0.0-P0.7引脚线去传送随后而来的片外存储器读/写数据。在不访问片外存储器时,89C51自动在ALE线上输出频率为1/6震荡器频率的脉冲序列。该脉冲序列可以作为外部时钟源或定时脉冲使用。

/EA:片外存储器访问选择线,可以控制89C51使用片内ROM或使用片外ROM, 若/EA=1,则允许使用片内ROM, 若/EA=0,则只使用片外ROM。

/PSEN:片外ROM的选通线,在访问片外ROM时,89C51自动在/PSEN线上产生一个负脉冲,作为片外ROM芯片的读选通信号。

RST:复位线,可以使89C51处于复位(即初始化)工作状态。通常89C51复位有自动上电复位和人工按键复位两种。

XTAL1和XTAL2:片内震荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接89C51片内OSC(震荡器)的定时反馈回路。

2.1.3晶振电路设计

我们采用晶振电路来产生单片机工作所需的时钟信号,使用晶体震荡器时,C1、C2取值20~40pF,使用陶瓷振荡器时C1、C2取值30~50pF。在设计电路板时,晶振和电容应尽量靠近芯片,以减小分布电容,保证振荡器的稳定性。

图2 晶振电路图

2.1.4 复位电路设计

单片机中CPU每执行一条指令,都必须在统一的时钟脉冲的控制下严格按时间节拍进行,而这个时钟脉冲是单片机控制中的时序电路发出的。CPU执行一条指令的各个微操作所对应时间顺序称为单片机的时序。MCS-51单片机芯片内部有一个高增益反相放大器,用于构成震荡器,XTAL1为该放大器的输入端,XTAL2为该放大器输出端,但形成时钟电路还需附加其他电路。

本设计系统采用内部时钟方式,利用单片机内部的高增益反相放大器,外部电路简,只需要一个晶振和 2个电容即可,如图4所示。

图4 复位电路

电路中的器件选择可以通过计算和实验确定,也可以参考一些典型电路的参数,电路中,电容器C1和C2对震荡频率有微调作用,通常的取值范围是30±10pF,在这个系统中选择了33pF;石英晶振选择范围最高可选24MHz,它决定了单片机电路产生的时钟信号震荡频率,在本系统中选择的是12MHz,因而时钟信号的震荡频率为12MHz。

2.3 LED显示电路设计

2.3.1LED基本结构

LED是发光二极管显示器的缩写。LED由于结构简单、价格便宜、与单片机接口方便等优点而得到广泛应用。LED显示器是由若干个发光二极管组成显示字段的显示器件。在单片机中使用最多的是七段数码显示器。LED七段数码显示器由8个发光二极管组成显示字段,其中7个长条形的发光二极管排列成“日”字形,另一个圆点形的发光二极管在显示器的右下角作为显示小数点用,其通过不同的组合可用来显示各种数字。LED引脚排列如下图7所示:

图5 LED引脚排列

2.3.2 LED译码方式

译码方式是指由显示字符转换得到对应的字段码的方式,对于LED数码管显示器,通常的译码方式有硬件译码和软件译码方式两种。

硬件译码是指利用专门的硬件电路来实现显示字符码的转换。

软件译码就是编写软件译码程序,通过译码程序来得到要显示的字符的字段码,译码程序通常为查表程序。

本设计系统中为了简化硬件线路设计,LED译码采用软件编程来实现。由于本设计采用的是共阴极LED,其对应的字符和字段码如下表2所示。

相关主题
文本预览
相关文档 最新文档