课程设计(论文)说明书题目:计数器院(系):信息与通信学院专业:电子信息工程学生姓名: *******学号: ************指导教师:唐 * *职称:讲师2013 年 12 月 24 日注:论文附有原理图和PCB图。
点击下载摘要随着计数器技术的不断发展与进步,计数器的种类越来越多,应用的范围越来越广,现计数器的种类以增加到:电磁计数器、电子计数器、机械计数器(拉动机械计数器、转动机械计数器、按动机械计数器、测长机械计数器)、液晶计数器等。
本课设设计的是由AT89S52单片机控制的计数器.通过驱动电路驱动两个共阴数码管进行显示数字。
另外,在计数的方式上通过两个轻触开关进行控制是手动计数还是自动计数。
在计数过程中可以通过复位按键进行复位,然后在进行下一次的计数。
计数范围00~59,进行软件编程是本课设设计的是手动计数时从59开始,没按一次P3^7所接的轻触开关就减一,直到减到00又跳回59依次进行。
而当P3^6外接的轻触开关按下一次就进行自动从00~59的加一计数。
再按一次数值停止自动,保持显示原数,再按下接着进行自动计数。
关键词:单片机;计数器;数码管;AbstractAs technology continues to counter the development and progress, the type of the counter more and more increasingly wide range of applications, in order to counter the kind now: electromagnetic counters, electronic counters, mechanical counters (pulling mechanical counter, counter rotating machinery , pressing the mechanical counter, length measuring mechanical counter), LCD counters.This course is designed to set up controlled by the microcontroller AT89S52 counter through the drive circuit to drive two common cathode LED display numbers. Further, the count mode switch via two touch controls are counted manually or automatically counting. In the counting process can be reset by a reset button, and then during the next count. Count range 00 to 59, is a software program designed for this course is set up from the 59 to start the manual count, not the connected by a P3 ^ 7 touch switch on minus one, until reduced to 00 and 59 to jump back in turn. When P3 ^ 6 external touch switch is pressed once automatically from 00 to 59 plus one count. Press again to stop the automatic value, maintaining the original number is displayed, press followed by automatic counting.Keywords: microcontroller; counters; digital;目录1 硬件电路的设计 (1)1.1设计原理图 (1)1.2 主控部分的选择 (1)2系统的功能要求及方案选择 (1)2.1系统功能要求 (1)2.2方案选择 (2)3 硬件系统设计介绍.....................................................................23.1 系统芯片介绍 (2)3.1.1 单片机AT89S52功能介绍 (2)3.1.2数码管的介绍 (5)3.2 硬件设计 (6)3.2.1 复位电路 (6)3.2.2 晶振电路 (8)3.2.3 最小系统电路 (9)3.2.4 数码管显示电路 (10)3.2.5 数码管驱动电路 (10)3.2.6 单片机P0I/O上拉 (10)4 系统软件设计 (11)4.1主程序流程图 (11)4.2计数器程序 (12)4.3 Proteus仿真 (14)5 总结 (15)谢辞 (16)参考文献 (17)附录 (18)1硬件电路的设计1.1 设计原理图图(1)电路原理图1.2主控部分的选择本设计采用的主控部分是常见的单片机AT89S52,实现控制与处理的功能。
单片机具有资源丰富、速度快、编程容易等优点。
利用单片机内部的随机存储器(RAM)和只读存储器(ROM)及其引脚资源,外接数码管,通过轻触开关接地输入到P3^7实现计数脉冲的传输;另外,利用P3^6的高低电平和软件编程启动或停止定时器零进行00~59的计数。
每隔一秒记一次;2系统的功能要求及方案选择2.1系统功能要求要求:1.计数范围:00~592.精确显示数字应解决问题:基于单片机构成的产品自动计数器研究的主要内容包括:如果构成检测电路、51单片机用何种方式对外部计数脉冲进行计数显示控制、LED显示驱动模块的选择、51单片机的扩展。
在这个设计中主要需要解决的问题便是如何提高51单片机的抗干扰能力以及稳定性。
2.2方案选择方案一:采用多种数字逻辑电路来实现逻辑控制、主门、门控、计数单元的设计要求,这样设计的电路整体比较复杂,而且不宜完成发挥部分的功能要求。
所以方案一不采用。
方案二:可以采用FPGA来实现逻辑控制、主门、门控、计数单元的设计要求,并且设计方便,但由于对FPGA的技术原理掌握不够熟练,所以放弃方案二。
方案三:系统采用8051为核心的单片机控制系统,实现原理图中的逻辑控制、主门、门控、计数的设计要求单片机计数器的方式控制寄存器TMOD中的GATE位=1时,可以很方便的进行INT0引脚的外部输入信号的时间间隔测量。
且单片机的控制电路很容易实现扩展。
故采用方案三。
3 硬件系统设计介绍3.1 系统芯片介绍3.1.1 单片机AT89S52功能介绍AT89S52 是Atmel公司生产的一种低功耗、高性能CMOS 8位微控制器,具有8 位在系统可编程Flash存储器。
AT89S52使用Atme公司高密度非易失性存储器技术制造,与工业80C51 产品指令和引脚完全兼容。
片上Flash 允许程序存储器在系统可编程,也适于常规编程器。
在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
其主要功能列举如下:1、拥有灵巧的8位CPU和在系统可编程Flash2、晶片内部具时钟振荡器(传统最高工作频率可至12MHz)3、内部程序存储器(ROM)为8KB4、内部数据存储器(RAM)为256字节5、32 个可编程I/O 口线6、8 个中断向量源7、三个16 位定时器/计数器8、三级加密程序存储器9、全双工UART串行通道下面简单介绍AT89S52 所用到引脚的功能:图(2)AT89S52芯片AT89S52管脚图VCC:AT89S52电源正端输入,接+5V。
GND:接地。
XTAL1:单芯片系统时钟的反相放大器输入端。
XTAL2:系统时钟的反相放大器输出端,一般在设计上只要在XTAL1 和XTAL2 上接上一只石英振荡晶体系统就可以工作了,此外可以在两引脚与地之间加入一30PF 的小电容,可以使系统更稳定,避免噪声干扰而死机。
RESET:AT89S52的复位引脚,高电平动作,当要对晶片重置时,只要对此引脚电平提升至高电平并保持两个机器周期以上的时间,AT89S52便能完成系统重置的各项动作,使得内部特殊功能寄存器之内容均被设成已知状态,并且至地址0000H处开始读入程序代码而执行程序。
EA/Vpp:寻址外部ROM控制端。
低有效片内有ROM时应当接高电平。
故此课设中接高电平(VCC)P0.0~P0.7:端口0是一个8位宽的开路汲极(Open Drain)双向输出入端口,共有8个位,P0.0表示位0,P0.1表示位1,依此类推。
其他三个I/O端口(P1、P2、P3)则不具有此电路组态,而是内部有一提升电路,P0在当做I/O用时可以推动8个LS的TTL负载。
如果当EA引脚为低电平时(即取用外部程序代码或数据存储器),P0就以多工方式提供地址总线(A0~A7)及数据总线(D0~D7)。
设计者必须外加一锁存器将端口0送出的地址栓锁住成为A0~A7,再配合端口2所送出的A8~A15合成一完整的16位地址总线,而定址到64K的外部存储器空间。
此处外接上拉电阻,供代表十位的数码管使用;P2.0~P2.7:端口2是具有内部提升电路的双向I/O端口,每一个引脚可以推动4个LS的TTL负载,若将端口2的输出设为高电平时,此端口便能当成输入端口来使用。
P2除了当做一般I/O端口使用外,若是在AT89S52扩充外接程序存储器或数据存储器时,也提供地址总线的高字节A8~A15,这个时候P2便不能当做I/O来使用了。
此处外接代表个位的数码管。
P3.0~P3.7:端口3也具有内部提升电路的双向I/O端口,其输出缓冲器可以推动4个TTL负载,同时还多工具有其他的额外特殊功能,包括串行通信、外部中断控制、计时计数控制及外部数据存储器内容的读取或写入控制等功能。
用排针引出,用于扩展。
同时,P3^6,P3^7与轻触开关连接,用于控制计数器脉冲输入。
其引脚分配如下:P3.0:RXD,串行通信输入。
P3.1:TXD,串行通信输出。
P3.2:INT0,外部中断0输入。
P3.3:INT1,外部中断1输入。
P3.4:T0,计时计数器0输入。
P3.5:T1,计时计数器1输入。
P3.6:WR:外部数据存储器的写入信号。
P3.7:RD,外部数据存储器的读取信号。
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。