文档库 最新最全的文档下载
当前位置:文档库 › 简易秒表的keil C程序

简易秒表的keil C程序

简易秒表的keil C程序
简易秒表的keil C程序

晶振设置为:12MHz

机器周期为:12*(1/12MHz)=1μs

用Atmel89c52完成,LED显示

用定时器0工作方式2

简易秒表的keilC程序?/span>

#include

unsigned char

led_code[]={0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7 F,0X6F};//共阴显示

unsigned long cnt=0;

unsigned int second=0,minute=0;

void delay(unsigned int n) //延时

{

unsigned long i;

while(n--)

for (i=0;i<100;i++);

}

t0_int() interrupt 1

{

if(cnt++==5000)//5000*200个机器周期=1S {

cnt=0;

second++;

if(second==60)

{

second=0;

minute++;

if(minute==60) minute=0;

}

}

}

main()

{

TMOD=0x02;//工作方式2

TH0=256-200;//初值计算,200个机器周期 TL0=256-200;

ET0=1;

EA=1;

TR0=1;

while(1)

{

P3=0;//动态扫描

P2=led_code[second%10]; P3_3=1;

delay(1);

P3=0;

P2=led_code[second/10]; P3_2=1;

delay(1);

P3=0;

P2=led_code[minute%10]; P3_1=1;

delay(1);

P3=0;

P2=led_code[minute/10]; P3_0=1;

delay(1);

}

}

简易数字秒表课程设计

《电子设计自动化》 课程设计报告 学校: 专业: 班级: 姓名: 指导教师: 二00九年12 月16 日

目录 1.课程名称 (2) 2.设计任务和要求 (2) 2.1设计任务 (2) 2.2设计要求 (2) 3.方法选择与论证 (2) 3.1方案选择 (2) 3.2方案论证 (2) 4.方案的原理图 (3) 4.1方案原理图 (4) 4.2总体电路图,布线图以及说明 (5) 4.3单元电路设计及说明 (5) 5.电路调试 (8) 6.收获体会、存在问题和进一步的改进意见 (9)

简易数字秒表 1.课程名称:《简易数字秒表》 2.设计任务和要求 2.1设计任务: 数字式秒表实现简单的计时与显示,按下启动键开始清零计时,按下停止键,计时停止。具有“ 分”(00—59)“秒”( 00—59)数字显示,分辨率为1 秒。计时范围从 00分 00 秒到 59 分 59 秒。 2.2设计要求: 阅读相关科技文献,上网搜索相关资料,设计多种方案设计,予以论证,最终选择最佳方案。 1、将提供的1024hz的方波源转换成1hz 的方波源。 2、秒表的范围为0-59分59秒。 3、最后用数码管显示。 3. 方法选择与论证 3.1.方案选择 在设计之初,我们有两个方案,都实现了59分59秒的结果,不过经过小组成员的讨论,一致选定采用方案二,该方案是在Proteus软件环境下实现的秒表计时功能,就制作上较方案一还是很不错的。 3.2. 方案论证 我们主要采用74LS90芯片和555计时器,74LS90 是二 -- 五十进制计数器,根据进制转换,很好的实现了六进制的功能,参考了各相关书籍及网上的一些资料,我们做好了现在的电路图,经过仿真,我们达到了预期的结果。

单片机简易秒表课程设计..

单片机课程设计 题目:简易秒表 系部:机电工程系 专业:机电一体化 班级: 0 9 4 班 姓名:张三 学号:2009044056 指导教师:杨富强

目录 一摘要 (1) 二绪论 (2) 2.1单片机的发展 (2) 2.2 MCS-51系列单片机介绍 (4) 三设计任务及要求 (5) 四工作原理 (5) 4.1 七段数码管概述 (5) 4.2 MCS--51的引脚及相关功能 (7) 五简易秒表电路图 (8) 六流程图 (9) 七源程序 (10) 八系统硬件设计 (11) 九总结 (12) 十课程设计心得 (13) 参考文献 (14)

一摘要 单片机自70年代问世以来得到蓬勃发展,目前单片机功能正日渐完善:单片机集成越来越多资源,内部存储资源日益丰富,用户不需要扩充资源就可以完成项目开发,不仅是开发简单,产品小巧美观,同时抗干扰能力加强,系统也更加稳定,使得它更加适合工业控制领域,具有更加广阔的市场前景;提供在线编程能力,加速了产品的开发进程,为企业产品上市赢得宝贵时间。此外单片机具有性能高、速度快、体积小、价格低、稳定可靠、应用广泛、通用性强等突出优点。单片机的设计目标主要是增强“控制”能力,满足实时控制的需要。 本文的主要内容是掌握各种单片机的结构、接口、片上外设的特点,并利用自行制作的单片机最小系统,完成一个简单应用(简易秒表)的设计与软件及硬件设计制作,让读者掌握数字单片机最小系统的设计及单片机系统的应用方法。

二绪论 当前社会信息化建设在各地蓬勃发展,作为信息发布的终端显示设备,LE D显示屏己经广泛应用于工作和生活的各个方面,主要用于显示文字、图像、动画等。L E D显示屏的应用涉及社会的许多领域,主要包括:金融证券、体育场馆、道路交通、邮政电信、商场购物中心等服务领域的业务宣传及信息显示。L ED 是发光二极管的简称(L ig ht Em it ti ng D io de)。由于它具有亮度高、响应速度快、低电压、功耗小、耐震动、寿命长等优点,使其成为室内外信息显示终端的主要发光器件。LE D显示屏是20世纪90年代出现的新型平板显示器件,由于其亮度高、画面清晰、色彩鲜艳,使它在公众多媒体显示领域一枝独秀,因此市场空间巨大。LE D显示屏的发展可分为以下几个阶段:第一阶段为1990年到1995年,主要是单色和16级双色图文屏。用于显示文字和简单图片,主要用在车站、金融证券、银行、邮局等公共场所,作为公共信息显示工具。第二阶段是1995年到1999年,出现了64级、256级灰度的双基色视频屏。视频控制技术、图像处理技术、光纤通信技术等的应用将LE D显示屏提升到了一个新的台阶。LE D显示屏控制专用大规模集成电路芯片也在此时由国内企业开发出来并得以应用。第三阶段从1999年开始,红、纯绿、纯蓝LE D大量涌入中国,同时国内企业进行了深入的研发工作,使用红、绿、蓝三原色LE D生产的全彩色显示屏被广泛应用,大量进入体育场馆、会展中心、广场等公共场所,从而将国内的大屏幕带入全彩时代。 2.1单片机的发展 单片机也被称为微控制器(M ic ro co nt r ol le r),是因为它最早被用在工业控制领域。单片机由芯片内仅有CP U的专用处理器发展而来。最早的设计理念是通过将大量外围设备和CP U集成在一个芯片中,使计算机系统更小,更容易集成进复杂的而对体积要求严格的控制设备当中。IN TE L的Z80是最早按照这种思想设计出的处理器,从此以后,单片机和专用处理器的发展便分道扬镳。单片机又称单片微控制器,它不是完成某一个逻辑功能的

单片机秒表程序代码

#include #include #include #define MAXC 5 bit isStart; bit isLock; bit isQuery; unsigned int Count; //0.1s unsigned int Counts[MAXC]={123}; unsigned char Countp; unsigned char Countp2; code char LEDTAB[]= { 0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, 0x00,}; void Delayms(int ms) { while(ms) { unsigned char i; ms--; for (i=0; i<240; i++); } } bit isKey; char KeyValue; unsigned int KeyDelay; bit bGlink; unsigned int T1msc; unsigned char Ledc; unsigned char Leds[]={8,6,0x13,5,1,2,3,4}; void display() { char v,c; P3=0x10; v=Leds[Ledc]; c=LEDTAB[v & 0x0f]; if (v&0x10) c|=0x80; if (v&0x80) c=0x00; if ((v&0x40) && (bGlink)) c=0x00; P2=c; P3=Ledc; Ledc++; if (Ledc>=8) Ledc=0; } void readkey() { char c; c=P1; c&=0x0f; if (c==0x0f)

简易秒表设计实验报告

实 验 报 告 系别 信工系 专业 班级 姓名 学号 简易秒表设计 实验目的: 1、 熟悉Keil C51软件的使用方法及proteus 仿真软件的使用; 2、 综合运用所学的理论知识(数码管、按键),通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。 3、 通过本次试验,增强自己的动手能力。认识单片机在日常生活中的应用的广泛性,实用性。 设计要求: 制作简易秒表,用三个按键分别实现秒表的启动、停止与复位,利用两位共阴级的数码管显示时间。 设计思路: 硬件设计:数码管部分采用2位共阴极的数码管,在P0口接上拉电阻,公共端低电平扫描。按键电路部分,将按键一侧与单片机任一I/O 口相连。 软件设计:模块化思想,使用定时器T0的工作方式1,编写显示子程序,延时子程序,初始化程序,主程序设计时注意按键消抖。 原理图: XTAL218XTAL119ALE 30EA 31PSEN 29RST 9P0.0/AD0 39P0.1/AD1 38P0.2/AD2 37P0.3/AD3 36P0.4/AD4 35P0.5/AD5 34P0.6/AD6 33P0.7/AD7 32P1.01P1.12P1.23P1.34P1.45P1.56P1.6 7P1.7 8P3.0/RXD 10P3.1/TXD 11P3.2/INT0 12P3.3/INT1 13P3.4/T0 14P3.7/RD 17P3.6/WR 16P3.5/T1 15P2.7/A15 28P2.0/A8 21P2.1/A9 22P2.2/A10 23P2.3/A11 24P2.4/A12 25P2.5/A13 26P2.6/A14 27U1AT89C51C1 1nF C21nF R110k C31uF 234567891 RP1 RESPACK-8 源代码: #include<>

单片机计时秒表程序设计[1]

pic单片机计时秒表程序设计(时钟显示范围00.00~99.99秒,分辨 度为0.01秒) 作者:来源:本站原创点击数:1676 更新时间:2008年07月12日 //此程序实现计时秒表功能,时钟显示范围00.00~99.99秒,分辨度:0.01秒 #include "p18f458.h" unsigned char s[4]; //定义0.01 秒、0.1 秒、1秒、10秒计时器 unsigned char k,data,sreg; unsigned int i; const table[11]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0XD8,0x80,0x90}; //不带小数点的显示段码表 const table0[10]={0X40,0X79,0X24,0X30,0X19,0X12,0X02,0X78,0X00,0X10}; //带小数点的显示段码表 void clkint(void); //TMR0初始化子程序 void tmint() { T0CON=0XCF; //设定TMR0L工作于8位定时器方式 //内部时钟,TMR0不用分频 INTCON=0X20; //总中断禁止,TMR0中断允许,清除TMR0的中断标志 INTCON2bits.TMR0IP=1; //TMR0中断高优先级 RCONbits.IPEN=1; //使能中断优先级 } //系统其它部分初始化子程序

void initial() { TRISA=0x00; //A口设置为输出 TRISB=0XF0; //RB1输出,RB4输入 TRISC=0x00; //SDO引脚为输出,SCK引脚为输出TRISE=0x00; //E口设置为输出 SSPCON1=0x30; //SSPEN=1;CKP=1,FOSC/4 SSPSTAT=0xC0; //时钟下降沿发送数据 PIR1=0; //清除SSPIF标志 data=0X00; //待显示的寄存器赋初值PORTBbits.RB1=0; PORTAbits.RA3=0; PORTE=0; //将K1,K2,K3,K4四条列线置0 } //SPI传输数据子程序 void SPILED(char data) { SSPBUF=data; //启动发送 do { ; }while(PIR1bits.SSPIF==0); PIR1bits.SSPIF=0; } //显示子程序,显示4位数 void dispaly() { PORTAbits.RA5=0; //准备锁存

基于单片机的简易计时器设计

南华大学电气工程学院课程设计 摘要:单片机自70年代问世以来得到蓬勃发展,目前单片机功能正日渐完善:单片机集成越来越多资源,内部储存资源日益丰富,用户不需要扩充资源就可以完成项目开发,不仅是开发简单,产品小巧美观,同时抗干扰能力强,系统也更加稳定,使它更适合工业控制领域,具有更广阔的市场前景;提供在线编程能力,加速了产品的开发进程,为企业产品上市赢得了宝贵时间。本设计通过STC89C51单片机以及单片机最小系统和三极管驱动以及外围的按键和数码管显示等部件,设计一个基于单片机的简易计时器。设计通过四位一体共阳极数码管显示,并能通过按键对秒进行设置。 关键词:STC89C51单片机,驱动,四位一体数码管

南华大学电气工程学院课程设计 Abstract:SCM be booming since since the 70 s, MCU functions are increasingly perfect at present: single chip microcomputer integrated more and more resources, internal storage resource increasingly rich, users do not need to expand resources can complete the project development, is not only the development of simple, small beautiful products, at the same time, strong anti-jamming capability, system is more stable, make it more suitable for industrial control field, has a broad market prospect; Provide online programming ability, speeded up the process of product development, product for the enterprise to win the precious time. This design and triode driven by STC89C51 microcontroller and the single chip microcomputer minimum system and peripheral keys and digital tube display components, design a simple timer based on single chip microcomputer. Design through the four digital tube display, a total of anode, and can through the button to set the seconds. Keywords: STC89C51 microcontroller, drive, Four digital tube

单片机的可调秒表时钟程序

#include unsigned char i=0,count,second,minute,hour,key; unsigned char time[8]; unsigned char const dofly[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};// 显示段码值012345679- unsigned char code seg[]={0,1,2,3,4,5,6,7};//分别对应相应的数码管点亮 //////////////////////////////////////////////////////// sbit LED0=P1^0; sbit LED1=P1^1; sbit LED2=P1^2; sbit LED3=P1^3; sbit LED4=P1^4; sbit LED5=P1^5; sbit LED6=P1^6; sbit LED7=P1^7; sbit S1=P3^0; sbit S4=P3^1; sbit S7=P3^2; void Init_Timer0(void) { TMOD |= 0x01; //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响 TH0=0x00; //给定初值,这里使用定时器最大值从0开始计数一直到65535溢出TL0=0x00; EA=1; //总中断打开 ET0=1; //定时器中断打开 TR0=1; //定时器开关打开 } void Init_Timer1(void) { TMOD |= 0x10; //使用模式1,16位定时器,使用"|"符号可以在使用多个定时器时不受影响 TH1=0x00; //给定初值,这里使用定时器最大值从0开始计数一直到65535溢出TL1=0x00; EA=1; //总中断打开 ET1=1; //定时器中断打开 TR1=1; //定时器开关打开 } void delay(unsigned int i)//延时函数 {

秒表C语言程序

#include "reg52.h" #include "intrins.h" sbitStart_Stop = P3^2; sbit Clear = P3^3; sbit Sel_A1 = P1^0; sbit Sel_B1 = P1^1; sbit Sel_C1 = P1^2; sbit Sel_D1 = P1^3; #define LED P0 #define DP 0x80 bdata unsigned char flag; sbitStatus_Flag = flag^0; sbit Is_KeyS_Hold=flag^1; unsigned char xiaoshu1 = 0 , xiaoshu2 = 0 , miao1 = 0 ; miao2 = 0 ; code unsigned char table[]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d, 0x7d,0x07,0x7f,0x6f,}; voidinit(); void display(); void delay(); void key(); void main() { init(); while(1) { key(); display(); } } void key() { if(Is_KeyS_Hold) if(Start_Stop) { Is_KeyS_Hold = 0 ; EX0 = 1 ; } }

void delay() { unsignedinti ; for(i = 0; i<300; i++); } void display() { Sel_A1 = 1; Sel_B1 = 1; Sel_C1 = 1; Sel_D1 = 0; LED = table[xiaoshu2];delay(); Sel_A1 = 1; Sel_B1 = 1; Sel_C1 = 0; Sel_D1 = 1; LED = table[xiaoshu1];delay(); Sel_A1 = 1; Sel_B1 = 0; Sel_C1 = 1; Sel_D1 = 1; LED=table[miao2]|DP;delay(); Sel_A1 = 0; Sel_B1 = 1; Sel_C1 = 1; Sel_D1 = 1; LED = table[miao1];delay(); voidKey_Start_Stop() interrupt 0 { EX0 = 0; Status_Flag = ~ Status_Flag ; Is_KeyS_Hold = 1; if(Status_Flag ) TR0 = 1; else TR0 = 0; } void time10ms() interrupt 1 { TL0 = 0XEF; TH0 = 0XD8; TR0 = 1 ; xiaoshu2+=1; if(xiaoshu2 == 10) { xiaoshu2 = 0 ; xiaoshu1 += 1;}

单片机电子秒表程序设计

沈阳工程学院课程设计设计题目:电子秒表程序设计

电子秒表程序设计 1.设计主要内容及要求: 要求:1)具有秒表基本功能。 2)显示最小数为0.1秒。 3)能够进行多路计数并分别显示。 2.对设计论文撰写内容、格式、字数的要求: (1).课程设计论文是体现和总结课程设计成果的载体,一般不应少于3000字。 (2).学生应撰写的内容为:中文摘要和关键词、目录、正文、参考文献等。课程设计论文的结构及各部分内容要求可参照《沈阳工程学院毕业设计(论文)撰写规范》执行。应做到文理通顺,内容正确完整,书写工整,装订整齐。 (3).论文要求打印,打印时按《沈阳工程学院毕业设计(论文)撰写规范》的要求进行打印。 (4). 课程设计论文装订顺序为:封面、任务书、成绩评审意见表、中文摘要和关键词、目录、正文、参考文献。 3.时间进度安排; 顺序阶段日期计划完成内容备注 1 1月2日教师讲解题目,学生查阅相关资料 2 1月3日查阅相关资料、进行方案论证 3 1月4日确定多路计数和显示方法 4 1月5、6、9 编写程序 日 5 1月10、11日调试程序 6 1月12日撰写论文 7 1月13日论文答辩

沈阳工程学院 单片机课程设计成绩评定表指导教师评审意见 评价内容具体要求权重评分 加权 分 调研论证能独立查阅文献,收集资料;能制定课程设计方案 和日程安排。 0.1 5 4 3 2 工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能 够独立完成设计工作, 0.2 5 4 3 2 工作量按期圆满完成规定的设计任务,工作量饱满,难度 适宜。 0.2 5 4 3 2 说明书的质量 说明书立论正确,论述充分,结论严谨合理,文字 通顺,技术用语准确,符号统一,编号齐全,图表 完备,书写工整规范。 0.5 5 4 3 2 指导教师评审成绩 (加权分合计乘以12) 分加权分合计 指导教师签名:年月日 评阅教师评审意见 评价内容具体要求权重评分 加权 分 查阅 文献 查阅文献有一定广泛性;有综合归纳资料的能力0.2 5 4 3 2 工作 量 工作量饱满,难度适中。0.5 5 4 3 2 说明书的质量说明书立论正确,论述充分,结论严谨合理,文字 通顺,技术用语准确,符号统一,编号齐全,图表 完备,书写工整规范。 0.3 5 4 3 2 评阅教师评审成绩 (加权分合计乘以8) 分加权分合计 评阅教师签名:年月日课程设计总评成绩分

基于单片机的简易秒表制作

华中科技大学 单片机原理及应用 课程设计报告 姓名:毅哥 学号:080108031113 学部(系):信息学部 专业年级:08自动化 指导教师:余愿 2011年6 月27日 目录

一.实验目的 (3) 二.实验任务 (3) 三.实现任务 (3) 四.程序流程图 (4) 五.程序 (4) 六.硬件原理图和PCB图 (9) 七.实验器件 (11) 八.参考文献 (12) 九.总结体会 (12)

简易秒表 一.实验目的 1.了解数码管与单片机的连接方式。 2.熟悉定时器.计数器.中断的综合应用技术。 3.熟悉键盘的使用。 二、实验任务 键盘是单片机应用系统中最常用的输人设备,用它输入数据或命令。数码管是单片机应用系统最常见的输出设备,用它显示单片机输出的视觉信息。本次实验制作的简易秒表,是利用按键控制LED数码管的显示,实现简易秒表的启动、停止与复位。 三、实现任务 需要解决如下问题: 1.如何实现计时; 2.如何显示时间; 3.如何利用按键实现对简易秒表的控制。 为此,可以采用单片机内部定时器T0 或Tl 的定时时间作为时钟计时的基准,实现计时。 用两个数码管动态显示时间,时间范围为0-60S,实现时间显示。用三个独立式按键实现秒表 的启动、停止和复位功能,实现控制。 具体实现: 1.实现计时。利用单片机内部T0计时器实现计时,首先给定时器工作方式寄存器TMOD赋值 0x01选定T0定时器工作在方式1。接着确定定时初值TH0=(65536—10000)/256;TL0=(65536—10000)%256实现10ms的定时,利用中断循环100次实现一秒的定时。中断控制条件为EA=1,ET0=1,TR0=1 2.实现时间显示。利用单片机P2端口控制数码管的位选,如:P2=0xfd;DS6时P2=0xfe利用 P0端口控制数码管的段选,如:共阳极时为P0= 0xc0,只要两个数码管位选段选间隔的时间适当,就可以实现动态显示时间。 3.实现按键控制。利用单片机P3复用端口输入按键控制命令,如:定义sbit key1=P3^2,可 以将与P3^2端口相连的按键定义为启动按键,与key2=P3^3为相连定义为暂停按键,与 key3=P3^5相连定义为复位按键。由原理图可知按键未按下时,相应端口为高电平,按下为低电平,因此可由条件key1/key2/key3是否为零来判断是否有键按下,有键按下就执行相应操作,实现按键的控制功能。

51单片机汇编秒表程序

ORG 0000H LJMP MAIN ORG 0003H LJMP INT_0 ORG 000BH LJMP T0_INT ORG 0013H LJMP INT_1 ORG 001BH LJMP T1_INT MAIN: MOV TMOD,#11H MOV TH1,#0D8H MOV TL1,#0F0H MOV TH0,#3CH MOV TL0,#0B0H SETB EA SETB ET1 SETB ET0 SETB EX0 SETB EX1 SETB IT0 SETB IT1 SETB TR1 MOV 32H,#00H MOV R1,#80H MOV 30H,#00H LOOP: MOV A,R4 CJNE A,33,Y MOV A,R5 CJNE A,32H,Y INC 30H Y: MOV A,P3 CJNE A,#0CFH,Y1 LJMP Y2 Y1: MOV A,30H CJNE A,#01H,LOOP CLR P1^0 LCALL DELAY2 SETB P1^0 LCALL DELAY2

LJMP LOOP Y2: JNB P3^5,Y2 JNB P3^4,Y2 MOV R3,#0AH LJMP Y3 Y3: MOV R4,33H MOV R5,32H MOV A,P3 CJNE A,#0DFH,Y5 Y4:JNB P3^4,OUT JNB P3^5,Y4 INC 32H MOV A,32H CJNE A,#10,Y3 INC 33H MOV 32H,#00H LJMP Y3 Y5: MOV A,P3 CJNE A,#0EFH,Y3 Y6: JNB P3^5,OUT JNB P3^4,Y6 MOV A,32H CJNE A,#00,JJ DEC 33H MOV 32H,#09H LJMP Y3 OUT:JNB P3^5,OUT JNB P3^4,OUT MOV R5,#00H MOV R3,#00H LJMP LOOP JJ: DEC 32H LJMP Y3 INT_0: CPL TR0 RETI INT_1: MOV R6,#00H MOV R5,#00H

简易秒表

课程设计 题目简易数字秒表的设计与实现学院信息工程学院 专业通信工程 班级 姓名 指导教师撒继铭 2016 年 6 月26 日

课程设计任务书 学生姓名:专业班级: 指导教师:撒继铭工作单位:信息工程学院 题目: 简易数字秒表的设计与实现 初始条件: 本设计主要使用集成译码器、计数器、定时器、脉冲发生器和必要的门电路等来完成,用一组数码管显示时间计数值。 要求完成的主要任务: (包括课程设计工作量及技术要求,以及说明书撰写等具体要求) 1、课程设计工作量:1周。 2、技术要求: 1)设计一个能测量3名100米跑运动员短跑成绩的数字秒表。要求用一组四位数码管显示时间,格式为00.00s,最大计数时间是99.99秒。 2)秒表设置3个开关输入(清零开关1个、记录开关1个、成绩开关1个)。按下“记录”开关第一次,将记录并储存第一名运动员的成绩,以此类推。当“记录”开关按下3次后,成绩计数结束。3)成绩计数结束之后,连续按动“成绩”开关,可以把3个运动员的成绩循环显示在数码管上。4)确定设计方案,按功能模块的划分选择元、器件和中小规模集成电路,设计分电路,画出总体电路原理图,阐述基本原理。 3、查阅至少5篇参考文献。按《武汉理工大学课程设计工作规范》要求撰写设计报告书。全文用A4纸打印,图纸应符合绘图规范。 时间安排: 1、年月日,布置课设具体实施计划与课程设计报告格式的要求说明。 2、年月日至年月日,方案选择和电路设计。 3、年月日至年月日,电路调试和设计说明书撰写。 4、年月日,上交课程设计成果及报告,同时进行答辩。 指导教师签名:年月日 系主任(或责任教师)签名:年月日

51单片机秒表程序

/* 实验说明: 实验接线: 1,动态数码管模块-->单片机管脚 参考动态数码管显示实验接线(开发攻略内在对应的实验章节内实验现象有接线说明) 实验现象: 数码管上显示秒表 */ #include "reg52.h" //此文件中定义了单片机的一些特殊功能寄存器 typedef unsigned int u16; //对数据类型进行声明定义 typedef unsigned char u8; sbit LSA=P2^2; sbit LSB=P2^3; sbit LSC=P2^4; u8 code smgduan[17]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};//显示0~F的值 u8 ssec,sec,min; //毫秒,秒,分 u8 DisplayData[8]; /****************************************************************************** * * 函数名: delay * 函数功能: 延时函数,i=1时,大约延时10us ******************************************************************************* / void delay(u16 i) { while(i--); } /****************************************************************************** * * 函数名: Timer0Init * 函数功能: 定时器0初始化 * 输入: 无 * 输出: 无 ******************************************************************************* /

简易秒表设计唐巧玲

本科学生设计性实验报告 学号:姓名: 学院:**学院专业、班级: 实验课程名称:简易秒表设计 教师:** 老师 开课学期:2013 至2014 学年第二学期填报时间:2014 年 6 月18 日

一、摘要 单片机自70年代问世以来得到蓬勃发展,目前单片机功能正日渐完善:单片机集成越来越多资源,内部存储资源日益丰富,用户不需要扩充资源就可以完成项目开发,不仅是开发简单,产品小巧美观,同时抗干扰能力加强,系统也更加稳定,使得它更加适合工业控制领域,具有更加广阔的市场前景;提供在线编程能力,加速了产品的开发进程,为企业产品上市赢得宝贵时间。此外单片机具有性能高、速度快、体积小、价格低、稳定可靠、应用广泛、通用性强等突出优点。单片机的设计目标主要是增强“控制”能力,满足实时控制的需要。 本文的主要内容是掌握各种单片机的结构、接口、片上外设的特点,并利用自行制作的单片机是最小系统,完成一个简单应用(简易秒表)的设计与软件及硬件设计制作,让读者掌握数字单片机最小系统的设计及单片机系统的应用方法。 关键字:AT89C51;数码管;设计制作; 二、引言 当前社会信息化建设在各地蓬勃发展,作为信息发布的终端显示设备,LED 显示屏已经广泛应用于工作和生活的各个方面,主要用于显示文字、图像、动画等。LED显示屏的应用涉及社会的许多领域,主要包括:金融证券、体育场馆、

道路交通、邮政电信、商场购物中心等服务领域的业务宣传及信息显示。LED 是发光二极管的简称(Light Emitting Diode)。由于它具有亮度高、响应速度快、低电压、功耗小、耐震动、寿命长等优点,使其成为室内外信息显示终端的主要发光器件,由于亮度高、画面清晰、色彩鲜艳,使它在公众多媒体显示领域一枝独秀,因此市场空间巨大。LED显示屏的发展可分为以下几个阶段:第一阶段为1990年到1995年,主要是单色和16级双色图文屏。用于显示文字和简单图片,主要用在车站、金融证券、银行、邮局等公共场所,作为公共信息显示工具。第二阶段是1995年到1999年,出现了64级、256级灰度的双基色视频屏。视频控制技术、图像处理技术、光纤通信技术等的应用将LED显示屏提升到了一个新的台阶。LED显示屏控制专用大规模集成电路芯片也在此时由国内企业进行了深入的研发工作,使用红、绿、蓝三原色LED生产的全彩色显示屏被广泛应用,大量进入体育场馆、会展中心、广场等公共场所,从而将国内的大屏幕带入全彩时代。 三、设计思想 该设计采用89C51单片机制作,P1口控制显示十位和各位,采用共阴极的方法,编写程序通过89C51的并口给单个七段数码管对应引脚提供相应电平,就可以显示内容了,需要注意的是因各段的发光二极管额定电流很小,所以需要限流保护数码管。 四、设计内容 根据生活中秒表的设计结构,可以得到如下整体的外围电路:

基于51单片机秒表的程序设计[1]

基于51单片机秒表的程序设计 1.设计目的: (1)利用单片机定时器中断和定时器计数方式实现秒、分定时。 (2)通过LED显示程序的调整,熟悉8155与8051,8155与LED的接口技术,熟悉LED动态显示的控制过程。 (3)通过键盘程序的调整,熟悉8155与矩阵式键盘的接口技术,熟悉键盘扫描原理。 (4)通过阅读和调试简易秒表整体程序,学会如何编制含LED动态显示、键盘扫描和定时器中断等多种功能的综合程序,初步体会大型程序的编制和调试技巧。 2.设计步骤与要求 (1)要求:以8位LED右边2位显示秒,左边6位显示0,实现秒表计时显示。以4×4矩阵键盘的KE0、KE1、KE2等3键分别实现启动、停止、清零等功能。 (2)方法:用单片机定时器T0中断方式,实现1秒定时;利用单片机定时器1方式3计数,实现60秒计数。用动态显示方式实现秒表计时显示,用键盘扫描方式取得KE0、KE1、KE2的键值,用键盘处理程序实现秒表的启动、停止、清零等功能。 (3)软件设计:软件整体设计思路是以键盘扫描和键盘处理作为主程序,LED动态显示作为子程序。二者间的联系是:主程序查询有无按键,无按键时,调用二次LED动态显示子程序(约延时8ms)后再回到按键查询状态,不断循环;有按键时,LED动态显示子程序作为按键防抖延时被连续调用二次(约延时16ms),待按键处理程序执行完后,再回到按键查询状态,同时兼顾了按键扫描取值的准确性和LED动态显示的稳定性。秒定时采用定时器T0中断方式进行,60秒计数由定时器1采用方式3完成,中断及计数的开启与关闭受控于按键处理程序。由上述设计思路可设计出软件流程图如图1.1所示。 (5)程序编制:编程时置KE0键为“启动”,置KE1键为“停止”,置KE2键为“清零”,因按键较少,在处理按键值时未采用散转指令“JMP”,而是采用条件转移指令“CJNE”,每条指令后紧跟着一条无条件跳转指令“AJMP”,转至相应的按键处理程序,如不是上述3个按键值则

简易秒表的keil C程序

晶振设置为:12MHz 机器周期为:12*(1/12MHz)=1μs 用Atmel89c52完成,LED显示 用定时器0工作方式2 简易秒表的keilC程序?/span> #include unsigned char led_code[]={0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7 F,0X6F};//共阴显示 unsigned long cnt=0; unsigned int second=0,minute=0; void delay(unsigned int n) //延时 { unsigned long i; while(n--) for (i=0;i<100;i++); } t0_int() interrupt 1

{ if(cnt++==5000)//5000*200个机器周期=1S { cnt=0; second++; if(second==60) { second=0; minute++; if(minute==60) minute=0; } } } main() { TMOD=0x02;//工作方式2 TH0=256-200;//初值计算,200个机器周期 TL0=256-200; ET0=1; EA=1; TR0=1;

while(1) { P3=0;//动态扫描 P2=led_code[second%10]; P3_3=1; delay(1); P3=0; P2=led_code[second/10]; P3_2=1; delay(1); P3=0; P2=led_code[minute%10]; P3_1=1; delay(1); P3=0; P2=led_code[minute/10]; P3_0=1; delay(1); }

秒表程序 汇编语言

; 定义计时单元地址 HOUR EQU 30H ;存放小时变量 MIN EQU 31H ;存放分钟变量 SEC EQU 32H ;存放秒钟变量 DEDA EQU 33H ;存放10ms计数值 ; 按键端口状况值 K1_N EQU 34H ;存放按键当前端口状况值 K1_P EQU 35H ;存放按键上次端口状况值 K1_C EQU 37H ;存放按键计数单元 X EQU 36H ;LCD 地址变量 ; 按键引脚定义 K1 EQU P3.3 ;按键1引脚定义 K2 EQU P3.4 ;按键2引脚定义 ;LCD 引脚定义 RS EQU P3.5 ;LCD RS引脚定义 RW EQU P3.6 ;LCD RW引脚定义 E EQU P3.7 ;LCD RS引脚定义 ORG 0000H ;程序由地址0开始执行 JMP MAIN ORG 0BH ;定时器0中断地址设置 JMP T0_INT ;―――――――――――――主程序――――――――――――――MAIN: ;开始 MOV SP,#60H ;堆栈指针指向60H CLR E ;E=0,禁止读/写LCM ACALL SET_LCD ;调LCD控制子程序 ACALL INIT ;初始化变量 MOV K1_P,#01H ;按键上次端口设置1 ACALL INIT_TIMER ;初始化定时器 ACALL MEU ;调用工作菜单子程序 LOOP:ACALL CONV ;时间计数处理 ACALL LOOP1 ;调用清零键子程序 ACALL KEY ;判断是否有键按下 JZ LOOP ;无键按下转LOOP MOV K1_P,K1_N ;交换数据 ACALL KEY0 ;调用按键功能子程序 JMP LOOP ;跳LOOP处循环 ; 初始变量清零子程序 INIT: ;初始变量清零 CLR A ;A清为零 MOV K1_C,A ;K1_C 初始为0 MOV DEDA,A ;DEDA初始为0 MOV SEC,A ;SEC初始为0 MOV MIN,A ;MIN初始为0

简易秒表

单片机课程设计说明书 简易秒表 学院:医药信息工程学院 专业:生物医学工程09 姓名:林胜义冯羡清黄玉娴 学号: 0907512162 0907512142 0907512147 完成时间:2011年6月

一、设计目的 1.单片机的基本原理及相关的简单应用。 2.掌握用单片机设计系统的一般步骤。 3.了解LED数码管的基本知识和驱动方法。 4.掌握单片机系统各个组成部分的作用以及分布位置。 5.学会运用单片机的硬件资源。 二、设计要求 1、要求设计一个秒表,精度为00.01秒; 2、显示位数为4位; 3、有启动、停止、清零功能 三、设计工具 PC机一台 四、元器件 4位共阳数码管(1个)、30P瓷片电容(2个)、12M晶振(1个)、复位按键(3个)、万能板(1块)、连接线(若干)、2K电阻(3个) 五、电路连接 1、本系统中“启动”按钮接在外部中断0口(P3.2)、“停止”按钮接在外部中 断1口(P3.3); 2、本系统中“清零”按钮接在P3.5口(第15管脚); 3、本系统的位选通信号接在P2口的低四位; 4、本系统的LED数据端口使用的是P1,采用了共阳码管,且所选用的万能板空间有限,未加扩流三极管,也未加外部上拉电阻。 详见下图 六、设计原理图 1、数码管脚位图

2、仿真电路图 七、程序流程图

(1)主函数(2)LED动态扫描

(3)外部中断0 八、C程序代码 //////////////////简易秒表////////////////////////////// //////////////////////////////////////////////////////// #include unsigned char led[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; unsigned char led1[]={0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10};//带小数点的位码 unsigned char temp;

基于8086的秒表设计与实现

郑州科技学院 微机原理课程设计(论文) 题目_基于8086的秒表设计与实现_ 学生姓名程昭昭 专业班级计科一班 学号201115003 所在系信息工程学院 指导教师王清珍 完成时间2013年12月13日

目录 摘要 (3) 1 99秒秒表设计背景及目的要求 (3) 1.1 99秒秒表设计背景 (3) 1.2设计目的 (3) 1.3硬件选择 (2) 1.4设计内容 (2) 2 设计方案及基本原理 (2) 2.1 预备知识 (2) 2.2 LED显示原理 (4) 2.3 元器件选择 (4) 2.4 系统设计 (4) 2.5硬件工作原理 (5) 2.6 硬件连接 (4) 3 设计流程 (5) 3.1设计步骤 (5) 3.2程序代码 (6) 4 程序 (7) 4.1 main.c主程序 (7) 4.2 key.asm ——键盘扫描子程序 (11) 5 调试结果及分析 (24) 5.1 调试结果 (24) 5.2 结果分析 (25) 6 结论与分析 (25) 7 参考与文献 (25)

摘要 本设计是设计一个芯片控制的多功能秒表系统。近年来随着科技的飞速发展,单的应用正在不断的走向深入,同时带动着传统控制检测日新月异更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,仅单片机方面的知识是不够的,还要根据具体的硬件结构,以及针对具体的应用对象的软件结合,加以完善。秒表的出现,解决了传统的由于人为因素造成的误差和不公平性。将软、硬件有机地结合起来,使得系统能够实现两位LED显示,显示时间为00~99秒,每秒自动加1,能正确地进行加、减(倒)计时,快加,快减,可以同时记录4个相对独立的时间,通过上翻下翻来查看这4个不同的计时值,可谓功能强大。其中软件系统采用汇编语言编写程序,包括显示程序,加减计数程序,快加快减程序,中断,延时程序,按键消抖程序等,并在WAVE中调试运行,硬件系统利用PROTEUS强大的功能来实现,简单切易于观察,在仿真中就可以观察到实际的工作状态。 关键词: AT89C51 99秒 【设计题目】99秒秒表设计 1 99秒秒表设计背景及目的要求 1.1 99秒秒表设计背景 目前,单片机正朝着高性能和对品种方向发展,趋势是进一步向着CMO化,低功耗,小体积,大存量,高性能,低价格和外国电路内装化等几个方面发展。 单片机应用的重要意义还在于他从根本上改变了传统的控制系统设计思想和设计方法。从前必须由模拟电路或数字电路实现的大部分功能功能,现在已能用单片机通过软件方法来实现了。这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。 单片机模块中最常见的是秒表、数字钟等显示时间类的装置,此装置是一种用数字电路实现时、分、秒计时的装置,与机械式时钟相比具有更高的准确性和直观性,且无机械装置,具有更长的使用寿命,因此得到了广泛的使用。 此设计利用凌阳科技公司的凌阳16位单片机SPCE061A为主控芯片,充分利用61板上面的三个按键,完成一个简易的现实系统——99秒秒表。 61板是一套完整的16位单片机开发系统,可直接把程序下载到61板上进行调试和封装。集成度高、运算速度快、体积小、运算可靠、价格低廉,在过程控制、数据采集、机电一体化、智能仪器仪表、网络技术等方面得到广泛应用。 1.2 设计目的

相关文档