基于单片机的数字秒表设计课程设计

上传人:公**** 文档编号:458976055 上传时间:2022-09-14 格式:DOC 页数:34 大小:412KB
返回 下载 相关 举报
基于单片机的数字秒表设计课程设计_第1页
第1页 / 共34页
基于单片机的数字秒表设计课程设计_第2页
第2页 / 共34页
基于单片机的数字秒表设计课程设计_第3页
第3页 / 共34页
基于单片机的数字秒表设计课程设计_第4页
第4页 / 共34页
基于单片机的数字秒表设计课程设计_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《基于单片机的数字秒表设计课程设计》由会员分享,可在线阅读,更多相关《基于单片机的数字秒表设计课程设计(34页珍藏版)》请在金锄头文库上搜索。

1、 基于单片机的数字秒表设计 基于单片机的数字秒表设计目 录1 整体设计方案11.1 单片机的基本结构11.2 单片机的选择62.秒表的硬件设计82.1 LED显示电路82.2 键盘控制电路112.3 译码器的使用122.4 单片机晶振和复位电路133 秒表的软件设计153.1 C程序整体设计思路153.2 主程序设计163.3 中断设计174 软件调试和结果214.1软件调试与烧写214.2 硬件仿真23结 论25参考文献26附 录271 基于单片机的数字秒表设计1 整体设计方案1.1 单片机的基本结构单片机是一种可通过编程控制的微处理器,单片机芯片自身不能单独运用于工程或者产品上,它必须要依

2、靠外围数字器件或者模拟器件的协调才能发挥自身的强大功能。单片机内部包含中央处理器CPU、程序存储器ROM、数据存储器RAM、I/O口、定时计数器、外部中断、串行通信等内部结构。 1.中央处理器CPU中央处理器CPU是整个单片机的核心部件,是整个单片机最重要的部件。由运算与控制逻辑组成,还有终端系统与部分外部特殊功能寄存器等。是负责控制、指挥和调度整个单元系统的工作。2.运算器运算器的功能是进行算术运算和逻辑运算。可以对半字节(4位)、单字节等数据进行操作。例如能完成加、减、乘、除、加1、减1、BCD码十进制调整、比较等算术运算和与、或、异或、求补、循环等逻辑操作,操作结果的状态信息送至状态寄存

3、器。89C52运算器还包含有一个布尔处理器,用来处理位操作。它是以进位标志位C为累加器的,可执行置位、复位、取反、等于1转移、等于0转移、等于1转移且清0以及进位标志位与其他可寻址的位之间进行数据传送等位操作,也能使进位标志位与其他可移位寻址的位之间进行逻辑与、或操作。3.程序计数器PC程序计数器PC用来存放即将要执行的指令地址,共16位,可对64K程序存储器直接寻址。执行指令时,PC内容的低8位经P0口输出,高8位经P2口输出。4.指令寄存器指令寄存器中存放指令代码。CPU执行指令时,由程序存储器中读取的指令代码送入指令寄存器,经译码后由定时与控制电路发出相应的控制信号,完成指令功能。本设计

4、采用ATMEL的AT89C52微处理器,主要基于以下几个因素:1) AT89C52为51内核,仿真调试的软硬件资源丰富。2) 性价比高,货源充足。3) 功耗低,功能强,灵活性高。4) DIP40封装,体积小,便于产品小型化。5) 为EEPROM程序存储介质,1000次以上擦写周期,便于编程调试。6) 工作电压范围宽:2.7V6V,便于交直流供电。5.数据存储器RAM 数据存储器用于存放各种运算的中间结果,用作缓存和数据暂存,以及设置特征标志等。分为片内数据存储器和片外数据存储器。8052内部有128个8位用户数据存储单元和128个专用寄存器单元,他们是统一编址的。 6.程序存储器ROM程序存储

5、器用于存放程序代码和表格常数。像我们用的STC89C52单片机,它的ROM大小为8KB。7.I/O口 I/O口为4并行输入输出口。对于输入,是检测外部有没有在控制它。对于输入,是在写程序的时候控制其管脚的输出为高电平还是低电平。 8.T/C 对于89C52单片机,有2个16位的可编程定时/计数器,用来实现定时或者计数产生中断用于控制程序转向。 9.中断系统 8052要比8051的中断系统更加完善。有2个外部中断,2个定时/计数器中断和一耳光串行中断,可满足不同的控制要求,并且具有2级优先级别选择。 10.UART 一个全双工UART(通用于异步接收发送器)的串口I/O口。用于实现单片机间和单片

6、机与计算机之间的串口通信, 11.时钟电路片内振荡器与时钟产生电路,8052内置最高频率高达12MHZ的时钟电路,但是石英晶体与微调电容仍需外接。而且一般最高震荡频率取决于单片机的型号与性能。总线(BUS)是计算机各部件之间传送信息的公共通道。微机中有内部总线和外部总线两类。内部总线是CPU内部之间的连线。如图1所示,外部总线是指CPU与其它部件之间的连线。 外部总线有三种: 数据总线DB(Data Bus), 地址总线 AB(Address Bus)和控制总线 CB(Control Bus)。如图1,为8051内部结构。对于8051来说,ROM为4KB;对于8052来说,ROM为8KB。单片

7、机总共有40个引脚,如图2所示,每个引脚都有其不同的功能,有的引脚还有第二功能作用。8051时钟数据总线地址总线控制总线程序存储器数据存储器定时计数器并行I/O口串行通信口中断系统图1 8051内部结构 1I/O口引脚-P0口、P1口、P2口、P3口对于P0口是一双向8位三态I/O口,每个口可以独立控制。P0口内部没有上拉电阻,为高阻态,一般选择10欧姆的上拉电阻。对于其他的3组引脚,为准双向8位I/O口,每个口可以独立控制,内带上拉电阻。因为内带上拉电阻,所以这种借口输出没有高阻状态,输入也不能锁存,所以不是真正的双向I/O口。因为在使用前,要先进行写1操作,然后单片机内部才可以正确独处外部

8、信号,有一个准备的过程,所以称为准双向口。对于P3口,不仅有输入输出功能,还有第二功能。RXD为串口输入,RXD为串口输出。INR0为外部中断0输入,INT1为外部中断1输入。T0为定时器0外部输入,T1为定时器1外部输入,WR为外部写控制,RD为外部读控制。1)P0口P0 口是一组8 位漏极开路型双向I/O 口, 也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash 编程时,P0 口接收

9、指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。2)P1口 P1口是一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。与AT89C51 不同之处是,P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX)。3)P2口 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4

10、个TTL 逻辑 门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX DPTR 指令)时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX RI 指令)时,P2 口输出P2 锁存器的内容。 Flash 编程或校验时,P2亦接收高位地址和一些控制信号。4)P3口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口

11、写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能P3 口还接收一些用于Flash 闪速存储器编程和程序校验的控制信号 2电源和时钟、复位引脚RST为单片机的复位引脚。当输入连续两个时钟周期以上高电平有效,用来完成单片机的复位初始化操作。Vcc、GND为单片机的电源引脚,一个接高电平,一个接低电平。XTAL1和XTAL2为外接时钟引脚。一个是片内震荡电路输入端,一个是输出端。对于8052时钟有2种方式。一个为两个引脚外接石英晶体和震荡电容,另一个是1接地,2输入。P1.

12、0 VCCP1.1 P0.0P1.2 P0.1P1.3 P0.2P1.4 P0.3P1.5 P0.4P1.6 P0.5P1.7 P0.6RST/VPD P0.7P3.0/RXD /VPPP3.1/TXD P3.2/ P3.3/ P2.0P3.4/T0 P2.1P3.5/T1 P2.2P3.6/ P2.3P3.7/ P2.4XTAL2 P2.5XTAL1 P2.6 VSS P2.7STC89C5212345678910111213141516171819204030383736353433323130292827262524232221图2 单片机的引脚结构3全称是程序存储器允许输入控制端。在度

13、外部程序存储器时低电平有效,以实现外部程序存储器单元的读操作。当内部ROM读取时候,该引脚不动作;外部ROM读取时,每个机器周期会动作2次;外部RAM读取时,2个脉冲被跳过不会输出;外接ROM时,与ROM的OE脚相接。4ALE/ 在单片机扩展外部RAM时,ALE用于控制把P0口得输出低8位地址送锁存器锁存起来,以实现地位地址和数据的隔离。ALE为高电平时,允许地址锁存信号;ALE为低电平时,P0口上的内容和锁存器输出一致。为编程脉冲的输入端,单片机的内部有程序存储器,用来存放用户需要执行的程序,我们可以通过编程脉冲输入写入ROM。5/Vpp接高电平时,单片机读取内部程序存储器。当扩展有外部ROM时,当读取完内部ROM后自动读取外部ROM。接低电平时,单片机直接读取外部EOM。单片机内部本身就各种周期设置。像机器周期、指令周期等。如果单片机的定时器/计数器为定时功能的时候,计数器记录的就是单片机内部的机器周期。 1)振荡周期: 也称时钟周期, 是指为单片机提供时钟脉冲信号的振荡源的周期,TX实验板上为11.0592MHZ。 2)状态周期: 每个状态周期为时钟周期的 2 倍, 是振荡周期经二分频后得到的。 3)机器周期: 一个机器周期包含

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 大杂烩/其它

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号