单片机原理与应用课程设计说明书
题 目: 基于单片机的数字秒表的设计 系 部: 信息与控制工程学院 专 业: 测控技术与仪器 班 级: 一 学生姓名: 刘先生 学 号: 指导教师:
2013年12月 10 日
单片机/微机接口课程设计说明书 目 录
1 设计任务与要求 ...................................................... 1 2 设计方案 ............................................................ 1
2.1 设计思路 ....................................................... 1 2.2 芯片及其功能 ................................................... 2
2.2.1 主控制器STC89C52 ......................................... 2 2.2.2 移位寄存器74LS164 ........................................ 3 2.2.3 三位共阳极数码管 ......................................... 4 2.2.4 串口下载芯片MAX232 ....................................... 4 2.2.5 看门狗芯片MAX813 ......................................... 5
3 硬件电路设计 ........................................................ 6
3.1 总体电路设计 ................................................... 6 3.2 单片机最小系统 ................................................. 6 3.3 显示电路 ....................................................... 7 3.4 串口下载电路 ................................................... 8 4 主要参数计算与分析 .................................................. 9 5 软件设计 ........................................................... 10
5.1 计数模块流程图 ................................................ 10 5.2 按键控制主控器流程图 .......................................... 10 5.3 源程序 ........................................................ 12 6 调试过程 ........................................................... 12
6.1 硬件调试 ...................................................... 12 6.2 软件调试 ...................................................... 12 7 结论 ............................................................... 13 8 附录 ............................................................... 14 9 参考文献 ........................................................... 18
单片机/微机接口课程设计说明书 1 设计任务与要求
利用51单片机的定时计数器设计一个秒表,其中设有一个按键,定时器工作在方式1。当第一次按下按键时,定时器开始计时。第二次按下按键时,停止计时并计算两次按键的时间间隔,送显示器显示。第三次按下按键时定时器清零,等待下一次按键。
2 设计方案
2.1 设计思路
本设计是以51单片机为依托设计一个秒表,确定系统由3个模块组成,包括主控器、数据传输电路、显示电路三部分,如设计流程图2.1所示。
控制器 按键 主控器 51单片机 数据传输 74LS164 显示数据 三位数码管 图2.1设计流程图
方案一:利用定时器T0模式,工作在方式1下,实现计时的功能。利用串行口的工作方式0。在方式0下,串行口作为同步移位寄存器用,以8位数据为一帧,先发送或接受最低位,每个机器周期发送或接受一位数据,串行数据由RXD引脚输出或输入,同步移位脉冲由TXD引脚送出。在设计中,单片机程序中的串行数据可由RXD引脚输出,同步移位脉冲由TXD引脚送出。串行口扩展并行输出口时,用“串入并出”的移位寄存器74LS164。并行输出到三位数数码管,显示数据。
方案二:利用设计程序的方式实现“串入并出”。将数据传入到74LS164中,再并行输出到数码管,显示数据。选择定时器T0,方式1,设定T0的定时时间为10ms,每隔10ms中断一次,中断10次即为0.1s。
考虑到51单片机串行口与PC的RS-232接口不能直接对接,必须进行电平转换,将TTL电平转换为RS-232电平。所以,串行通信接口需用到MAX232,此处也要用到RXD和TXD引脚。因此,设计秒表采取方案二,并用P2口实现串行输出。
1
单片机/微机接口课程设计说明书 2.2 芯片及其功能
2.2.1 主控制器STC89C52
STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有 8K 在系统可编程Flash存储器。STC89C52使用经典的MCS-51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8 位CPU 和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、有效的解决方案。
具有以下标准功能: 8k字节Flash,512字节RAM, 32 位I/O 口线,看门狗定时器,内置4KB EEPROM,MAX810复位电路,3个16 位定时器/计数器,4个外部中断,一个7向量4级中断结构(兼容传统51的5向量2级中断结构),全双工串行口。另外 STC89C52 可降至0Hz 静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU 停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。最高运作频率35MHz,6T/12T可选。
本次设计中主要用到它的定时器功能。另外,P0口作为位选口,P2用于口扩展串行口,通过74LS164实现串入并出,最终实现设计功能。STC89C52引脚如图2.2所示。
需要注意的是P0 口,P0 口是一个8 位漏极开路的双向I/O 口。作为输出口,每位能驱动8 个TTL逻辑电平。在Flash编程时,P0 口也用来接收指令字节;在程序校验时,输出指令字节。在程序校验时,需要外部上拉电阻。
2