第二章 光电计数器的方案设计
2.1 系统的设计要求
设计光控电路,当有物体通过光电传感器正对面,产生一个阴影,通过LM393比较器出输一个数字信号,单片机采集信号,通过数码管显示。计数器的最大计数容量是99。
硬件电路图如图2-1所示:
图2-1 光电计数器系统结构图
2.2 系统的组成与结构
整个光电计数器系统是由光电传感电路、运算比较电路、STC89C52RC单片机系统电路、显示计数电路、报警电路五个部分组成的,如图2-1所示。光电传感电路把被计数的物体的变化转换成电信号,由显示计数电路计数,再由数码显示管显示,当达到设定的报警值时,报警电路发出报警。
2.3 中断方式计数
由于光电技术电路需要在数码管上显示进入电影院的人数,因此可以在内部存储器空间定义它的显示缓存区,用来暂存数码管显示的当前值。
系统在初始化程序之中,分别设置外部中断0和外部中断1产生中断的中断标志T0和T1,并初始化值为0。当有外部中产生时,相应
的中断置1。
当外部中断0产生中断时,在中断服务程序之中将中断标志T1置1,并屏蔽外部中断1,然后在主程序中扫描T0是否为1。当T0为1时,调用光电计数子程序,将显示暂存变量加1,同时开外部中断1。当电影院中的人数达到99人时,系统发出声光警报,直至按复位键为止。
当外部中断1产生中断时,在中断服务程序之中将中断标志T1置1,并屏蔽外部中断0,然后在主程序之中扫描T1是否为1。当T1为1时调用光电计数子程序,将显示暂存变量减1,同时开外部中断0。
2.4 串行通信接口
串行通信与并行通信不同,并行通信是一次性传送8位数据,传输快捷方便,但硬件较复杂,远距离传输成本较高,串行通信是一位一位的传送,一个字节的八位二进制数至少需要传送8次,结构也比较简单,串行通信是通过串行口来实现的,MCS-51单片机有一个全双工的异步串行接口可以用于串行数据的数据通信,串行通信的两种基本方式有异步传送方式和同步传送方式。
MCS-51单片机采用异步通信的串行通信方式,有一个全双工的串行接口电路,整个串行通信可以通过编制的程序设定,串行接口电路的内部结构如图2-2所示。
图2-2 串行口内部结构
SBUF是独立的两个缓冲器,主要功能存放接收到的数据和存放将要发送的数据,起缓冲作用,TXD是发送引脚,数据从TXD一位一
位的向外设发送,RXD是接收引脚,数据从RXD一位一位的接收到单片机内。