单片机秒表设计课程设计报告
更新时间:2024-04-10 20:10:01 阅读量: 综合文库 文档下载
单 片 机 课 程 设 计
单片机课程设计报告
一、实验题目
秒表系统设计——用两个数码管来显示秒表数据,一个显示秒,另一个显示十分之一秒。 二、系统总体功能
用两个数码管来显示秒表数据,一个显示秒,另一个显示十分之一秒。有一个按键来启动秒表的开始和结束。增加一个清零按钮,计时结束后可以清零。 三、实验目的
1、利用单片机定时器/计数器中断设计秒表,从而实现秒、十分之一秒的计时。
2、综合运用所学的《单片机原理与应用》理论知识,通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。
3、 通过本次课程设计加深对单片机掌握定时器、外部中断的设置和编程原理的全面认识复习和掌握,对单片机实际的应用作进一步的了解。
4、 通过本次试验,增强自己的动手能力。认识单片机在日
共9页 第1页
单 片 机 课 程 设 计
常生活中的应用的广泛性,实用性。 四、系统设计方案
本实验利用单片机的定时器/计数器定时和记数的原理,通过采用proteus仿真软件来模拟实现。模拟利用AT89C51单片机、LED数码管以及控件来控制秒表的计数以及计数的开启/暂停/继续与复位!
其中有两个数码管用来显示数据,一个数码管显示秒(两位),另一个数码管显示十分之一秒,十分之一秒的数码管计数从0-9,满十进一后显示秒的数码管的数字加一,并且十分之一秒显示清零重新从零计数。计秒数码管采用两位的数码管,当计数超过范围是所有数码管全部清零重新计数。
五、试验设计所需硬件(模拟硬件)
Atmel89C51单片机芯片一个、LED数码显示管三个,低压电源、开关(按钮)两个、电阻、电容及导线若干。
由于条件限制本实验采用软件模拟硬件系统,采用proteus软件进行模拟设计及调试工作。
共9页 第2页
单 片 机 课 程 设 计
图1 七段数码管引脚图
图
2 Atmel89C51单片机外部引脚图
六、试验设计原理图
共9页 第3页
单 片 机 课 程 设 计
图3 试验设计电路图
七、软件设计分析 程序流程图:
共9页 第4页
单 片 机 课 程 设 计
开始 程序开始 对定时器/计数器初始化始化 开中断并 启动定时器 定时器溢出中断 对定时器重新赋值 进行加一操作后重新计算时间 往P0口和P2口送显示时间 数码管显示 判断P0^4口是否有低电平信号 否 否 判断P0^7口是否有低电平信号 是 开始、暂停或者继续 是 计数置零 中断返回主函数
共9页 第5页
单 片 机 课 程 设 计
实验程序:
#include
sbit sta_end=P3^4; sbit reset=P3^7;
unsigned char code table0[]={0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f};
unsigned char code table1[]={0xc0,0xf9,0xa4,0xb0,0x99,
/*声明second10用于计数十分之一秒变化,second1用于记录秒的个*/ /*位,second2用于记录秒的十位*/ unsigned int second10,second1,second2; bit bdata flag;
/*以下是设置延时功能的函数*/ void delay() {
unsigned char i,j; for(i=90;i>0;i--) for(j=200;j>0;j--); } }
/*以下是设置时间的函数*/ void setTime()
0x92,0x82,0xf8,0x80,0x90};
共9页 第6页
单 片 机 课 程 设 计
{ second10++;
if(second10==10) /*当十分之一秒计数到十后从零重新计时*/ {
second10=0; /*同时秒计时个位加一*/ second1++;
if(second1==10) /*当秒计数个位到十后从零重新计时*/ { }
second1=0;
second2++; /*同时秒计时十位加一*/ if(second2==6) second2=0;
} }
/*以下是向LED管输数据并使之显示的函数*/
void dispact() {
P3=0xfe; P0=table1[second1]; delay(); P3=0xfd;
P0=table1[second2]; delay();
P2=table0[second10]; }
/*以下是设置时间函数和输数据函数被此函数调用实现,利用定时器中断*/ /*十分之一秒刷新一次,实现十分之一秒进一*/
共9页 第7页
单 片 机 课 程 设 计
Timer0 () interrupt 1 using 1 {
TH0 = (65535 - 50000)/256; TL0 = (65535 - 50000)%6; if(flag) setTime(); dispact(); }
void main(void) {
TMOD = 0x01;
TH0 = (65535 - 50000)/256; /* TL0 = (65535 - 50000)%6; flag = 0;
EA = 1; /*cpu TR0 = 1; /* ET0 = 1; /* do {
if(!sta_end) {
if(flag == 0) flag = 1; else flag = 0; }
if(!reset) /* {
flag = 0;
定时器赋初值*/ 开中断*/ 利用定时器0*/ 外部中断允许*/ 复位设置,全部清零*/ 共9页 第8页
单 片 机 课 程 设 计
second10 = 0; second1 = 0; second2 = 0; }
}while(1); }
八、实验总结
通过这次的试验设计,我对一些专业知识和电子设计有了更深的了解,同时也尝试着去应用自己的所掌握的知识。本次电子课程设计主要是对已学习的模拟电子技术、数字电子技术和单片机的综合应用。
单片机课程设计给我们提供了一个很好的展现应用自己所掌握的知识的平台。但在设计的过程中我们也不可避免的遇到了很多的问题,通过这次的课程设计,我也发现了不少自己不会的知识,通过查询各方面资料进步了很多,学会了很多上课时没掌握的东西。
共9页 第9页
正在阅读:
单片机秒表设计课程设计报告04-10
高支模架专项方案09-29
欧洲一体化尔雅课考试答案04-07
最新高等教育学试题及答案(AB)08-06
天上的街市(2)01-01
系统管理员面试考试试题(答案)10-27
马克思主义与社会科学方法论习题与答案07-08
幼儿园保育员2022年个人工作总结范文03-25
这么冷的天,这么痴的人心情日记10-29
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 设计
- 秒表
- 单片机
- 课程
- 报告
- 大学英语第一单元
- 足彩种类玩法
- 南宁某高层综合楼安全事故应急预案急预案 - secret
- 工作报告之软件工程实习报告
- vxworks系统及函数详解
- 作业 - 图文
- 2014杭电,过程控制复习
- 注会报名
- 2014年中考英语考前模拟试题及答案 - 图文
- 跨文化沟通
- 中国河流泥沙公报-黄河水利委员会 - 图文
- 21入厂安全须知、安全生产禁令和规定
- 第一课 爱国铸就中华魂
- 华南理工大学广州汽车学院为地震灾区赈灾捐款一览表
- 2017北师大版三年级下册《比大小》word教案 doc
- 大学生如何进行社会调研
- 高浓度氨氮废水处理技术
- 湖南大学工业设计考研01-12年论述简答题汇总
- 《大希庇阿斯篇》解读
- 北语网院15春《英语国家概况(II)》作业1满分答案