用LED数码管显示的秒表设计

课程设计说明书用LED数码管显示的秒表设计专业新能源科学与工程学生姓名班级学号指导教师完成日期用LED数码管显示的秒表设计摘要:对采用LED数码管显示的秒表进行了设计。

所设计的秒表,可通过两位数码管显示00-59。

每秒自动加一。

在对系统功能分析的基础上,采用AT89C52单片机。

相对而言比较简单,贴近书本,比较熟悉。

对所要实现的功能也能很好地满足,焊接也比较简单。

设计主要采用硬件和软件两部分。

硬件包含数码管按钮模块、单片机控制模块、数码管显示模块、驱动电流放大模块。

按钮模块采用独立式按键,控制模块选用AT89C52单片机,显示模块采用两位数码管,放大模块选用NPN三极管。

软件采用模块化的程序,分为主程序和定时器计时服务子程序。

在多孔板上制作了LED数码管显示的秒表,使用protus完成了系统仿真,对硬件和软件部分分别进行了调试,进行了软硬件联调,最后调试成功样机实物,完成了毕业设计任务书的要求。

关键词:单片机;数码管;秒表A stopwatch design with LED digital tube displayAbstract: For the LED digital tube display of a stopwatch is used for design. The stopwatch, designed by two digital tube display 00 ~ 59. Automatically add a per second.On the basis of the analysis of system function, using the AT89C52 single chip microcomputer. Relatively simple, close to the book, familiar with. To in order to realize the function also can well satisfy, welding is more simple. The design mainly adopts two parts of hardware and software. Hardware consists of digital tube button module, single-chip microcomputer control module, digital tube display module, the drive current amplifier module. Button module USES the independent type key, choose AT89C52 single chip microcomputer control module, using two digital tube display module, amplifier module selects the NPN transistor. Software adopts the modular program, main program and timer timing service subroutine.On the perforated plate made of LED digital tube display a stopwatch, use protus completed system simulation, the hardware and the software part, has carried on the debugging, the software and hardware alignment, the final debugging success physical prototype, completed the graduation design specification requirements.Key Words:Single chip microcomputer; Digital tube; A stopwatch.用LED数码管显示的秒表设计目录1. 概述 (1)1.1 课题研究背景与意义 (1)1.2 课题设计内容 (1)2. 系统设计 (1)2.1 设计方案论证 (1)2.2 系统硬件设计 (2)2.2.1 主控模块 (2)2.2.2 秒表按钮模块 (4)2.2.3 LED数码管显示模块 (5)2.2.4 放大模块 (6)2.3.1 主程序模块 (6)2.3.2 定时器中断程序 (6)3. 系统调试 (8)3.1 硬件调试 (8)3.1.1 静态检查 (8)3.1.2 通电检查 (8)3.2 软件调试及软硬件联调 (8)3.2.1仿真调试 (8)3.2.2 实物调试 (9)3.2.3 实验结果 (9)4. 结束语 (11)附录1:用LED数码管显示的秒表设计原理图图纸 (15)附录2:用LED数码管显示的秒表设计的元器件目录表 (16)附录3:用LED数码管显示的秒表设计程序清单 (17)盐城工学院课程设计说明书( 2015)用LED数码管显示的秒表设计1.概述1.1 课题研究背景与意义随着电子技术的发展,电子技术在各个领域的运用也越来越广泛。

特别是进入21世纪,由于信息产业的高速发展,秒表的用途也越来越广泛。

作为一个重要的计时工具,秒表在电器制造、电力、工业自动化控制、国防、实验室及科研单位都有广泛运用。

正是由于它的便捷、准确、可比性高等优点,大大减轻了操作人员的负担,降低了错误率。

近年来,计算机技术和半导体技术高速发展,传统的硬件电路设计方法已大大落后于当今技术的发展。

一种崭新的、采用硬件描述语言的设计电路方法悄然兴起。

这是电子设计自动化领域的一次重大迈进。

单片机就是以可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方法。

通过有关的开发软件,自动完成用软件方式设计。

在设计中还运用到数码管,数码管通常是由多个发光二极管封装在一起组成“8”字型器件,数码管的段加上特定的电压后,这些特定的段就会亮,显示出特定信息。

因而,在楼体墙面、广告招牌、夜总会、会所的门头广告牌中运用到数码管可产生彩虹般绚丽的效果。

本次设计主要完成具备基本功能的电子秒表的理论设计。

1.2 课题设计内容本课题内容是设计并制作一个LED数码管显示的秒表,运用“开始”、“暂停”、“复位”按钮实现秒表的00-59的计时。

设计LED数码管显示的秒表的硬件电路与软件控制程序,对硬件电路与软件程序分别进行调试,并进行软硬件联调,要求获得调试成功的实物。

2 .系统设计2.1 设计方案论证根据设计内容,提出采用单片机芯片为主控电路的设计方案。

由于单片机体积小,重量轻,控制功能强,便于模块化,价格便宜,为学习、应用和开发提供了便利条件。

并且在运行中单片机的可靠性较高,出错几率很小,保证系统运行的安全性。

同时,单片机的使用领域已经十分广泛,也为以后的产品的升级换代提供了便利。

方案设计框图如图2-1所示。

用LED数码管显示的秒表设计图2-1 LED数码管显示的秒表设计系统结构图2.2 系统硬件设计LED数码管显示的秒表设计系统的电路原理图如2-2所示。

系统由主控模块、秒表按钮模块、LED数码管显示模块、放大模块四部分组成。

图2-2 LED数码管显示的秒表设计电路原理图2.2.1 主控模块主控模块原理图如图2-3所示。

主控制器采用STC89C52。

STC89C52是一种带盐城工学院课程设计说明书( 2015)8K字节闪烁可编程可檫除只读存储器的低电压,高性能CMOS 8位的以80C51为内核的单片机。

图2-3 主控模块原理图主控模块里面,除单片机外,还包括时钟电路和复位电路两部分。

A. 时钟电路STC89C52内部有一个用于构成振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是此放大器的输入端和输出端。

时钟可以由内部方式产生或外部方式产生。

内部方式的时钟电路如图2-4(a) 所示,在XTAL1和XTAL2引脚上外接定时元件,内部振荡器就产生自激振荡。

定时元件通常采用石英晶体和电容组成的并联谐振回路。

晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。

外部方式的时钟电路如图2-4(b)所示,XTAL2接地,XTAL1接外部振荡器。

对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。

+5V(a)内部方式时钟电路(b)外部方式时钟电路图2-4 时钟电路B. 复位电路RST引脚是复位信号的输入端。

复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。

若使用颇率为6MHz的晶振,则复位信号持续用LED数码管显示的秒表设计时间应超过4us才能完成复位操作。

产生复位信号的电路逻辑如图2-5所示。

整个复位电路包括芯片内、外两部分。

外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。

RST/VPDVCCVSS2-5复位信号的电路逻辑图复位操作有上电自动复位相按键手动复位两种方式。

上电自动复位是通过外部复位电路的电容充电来实现的。

这样,只要电源Vcc 的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。

按键手动复位有电平方式和脉冲方式两种。

其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的;而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的。

2.2.2 秒表按钮模块按钮用按键模块来模拟,按键用独立式按键表示,电路如图2-6所示。

图2-6 秒表按钮模块在没有按键按下时,P1口输入的是高电平。

当有键按下时,相应的端口引脚输入低电平。

2.2.3 LED数码管显示模块盐城工学院课程设计说明书( 2015)A.电路连接显示模块采用两位共阳极的数码管,电路连接图如图2-7所示。

图2-7 LED数码管显示模块B.数码管介绍本设计中运用的是3261BS两位共阳极数码管,其引脚图如图2-8所示。

图2-8 3261BS 数码管外部引脚用LED数码管显示的秒表设计数码管按段数分为七段数码管和八段数码管,八段数码管比七段数码管多一个发光二极管单元,即一个小数点。

数码管的8个显示比划“a,b,c,d,e,f,g,dp”;按能显示多少个“8”可分为1位、2位、4位等数码管。

本设计中发光二极管单元的连接方式为共阳极数码管。

共阳数码管是指将所有发光二极管的阳极接在一起形成公共阳极(COM)的数码管。

合集下载

制作一个LED数码管显示的秒表

制作一个LED数码管显示的秒表

计算机科学与工程系实验报告实验题目:制作一个LED数码管显示的秒表班级:姓名:学号:日期:一、实验目的掌握单片机使用定时计数器控制LED数码管的设计与软件编程二、实验要求1、用2位数码管显示计时时间,最小计时单位为“百毫秒”,计时范围0.1~9.9s;2、当第1次按下并松开计时功能键时,秒表开始计时并显示时间;3、第2次按下并松开计时功能键时,停止计时,计算两次按下计时功能键的时间,并在数码管上显示;4、第3次按下计时功能键,秒表清0,再按1次计时功能键,重新开始计时。

5、如果计时到9.9s时,将停止计时,按下计时功能键,秒表清零,再按下重新开始计时。

三、实验要求提交的实验报告中应包括:电路原理图、实验设计思路、C51源程序(含注释语句)、运行效果(含运行截图与说明)、实验小结三、硬件电路原理图的设计四、编程思路及C51源程序编程思路:使用外中断服务处理程序处理按键,内部设计一个计数器,记录按键按下的次数,根据按键次数完成相应的功能。

用数码管显示计时时间,根据按键的次数以及其功能来显示数字。

#include<reg51.h> //包含8051单片机寄存器定义的头文件unsigned char code discode1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef} unsigned char code discode2[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};unsigned char timer=0; //记录中断次数unsigned char second; //存储秒数unsigned char key=0; //记录按键次数main() //主函数{TMOD=0x01; //定时器T0方式1定时ET0=1; // 允许定时器T0中断EA=1; // 总中断允许second=0; //设初始值P0=discode1[second/10]; //显示秒位P2=discode2[second%10]; //显示0.1S位while(1) //循环{if((P3&0x80)==0x00) //当按键被按下时{key++; //按键次数加一switch(key) //根据按键次数分三种情况{case 1: //第一次按下为启动秒表表示TH0=0xee; //TL0=0x00; //TR0=1; //break; //case 2: //按下两次暂停秒表TR0=0; //break; //case 3: //按下三次秒表清零key=0; //second=0; //P0=discode1[second/10]; //P2=discode2[second%10]; //break;}while((P3&0x80)==0x00); //如果按键时间过长在此循环}}}}void int_t0() interrupt 1 using 0 //定时器T0中断子程序{TR0=0; //停止计时,执行以下操作(计时出现误差)TH0=0xee; //向TH0写入初值的高8位TL0=0x00; //向TL0写入初值的低8位,定时5mstimer++; //记录中断次数if (timer==20) //中断20次,20*5ms=100ms=0.1s{timer=0; //中断次数清0second++; //加0.1sP0=discode1[second/10]; //根据计时时间,即时显示秒位P2=discode2[second%10]; //根据计时时间,即时显示0.1s位}if(second==99) //当计时到9.9s时{TR0=0; //停止计时second=0; //秒数清0key=2; //按键数置2,当再次按下按键时,key++,即key=3,秒表清0复原}else //计时不到9.9s时{TR0=1; //继续计时}}五、仿真运行效果展示1、第一次按键,秒表开始计时,并计时到9.92、2次按键,停止计时,将计时的时间值送到数码管显示3、第3次按下计时功能键,秒表清零六、实验小结在实验的过程中,出现过几次错误,自己对理论知识了解的还不够透彻,所幸,通过自己思考解决了。

LED显示及秒表计时器设计

LED显示及秒表计时器设计

LED秒表计时器实验实验目的:1、掌握QuartusII6.0等EDA工具软件的基本使用;2、熟悉VHDL硬件描述语言编程及其调试方法;3、学习用FPGA控制LED电路实现显示器设计。

实验内容:基于LED显示器可以进行电子表、秒表计时器、出租车计价器、频率计等复杂电路系统设计,本实验以秒表计时器为例,继续介绍Quartus编程环境以及VHDL语言与原理图混合编程应用。

仅给出设计思路和必要的程序,请大家参照LED译码器实验的步骤完成。

本秒表计时器用于体育竞赛及各种要求有较精确时的各领域。

此计时器是用VHDL语言描述的在FPGA上实现。

它具有开关、计时、时钟和显示功能。

计时器的设计功能:(1)精度应大于1/100s(2)计时器的最长计时时间为1小时,在一般的短时间计时应用中,1小时应该足够了。

为此需要一个6位显示器,显示最长时间为59分59.99秒。

(3)设置复位和启/停开关复位开关用来使计时器清0。

启/停开关的使用方法与传统的机械计时器相同,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关计时终止。

复位开关可以在任何情况下使用,即使在计时过程中,只要按一下复位开关,计时进程应立即终止,并对计时器清零。

整体设计方案:为了便于描述,将整个计时控制芯片分成4个子模块:分频器子模块(fpq),十进制计数器子模块(cnt10),六进制计数器子模块(cnt6),和译码显示子模块(decorder4_7),各模块之间信号连接关系的方框图如下:程序设计:各模块程序及生成的符号文件如下:1、分频器子模块fpq模块设计--本程序实现由4MHz晶振分频得到100Hz计数脉冲信号--分频数计算:4000000/100=40000library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity fpq isgeneric(framlenr:integer:=40000);Port (clk:in std_logic;bclk:out std_logic);end fpq;architecture Behavioral of fpq isbeginprocess(clk)variable cnt:integer;beginif rising_edge(clk) thenif cnt>=framlenr then cnt:=0; bclk<='0';elsif cnt>=framlenr/2 then cnt:=cnt+1;bclk<='1';else cnt:=cnt+1; bclk<='0';end if;end if;end process;end Behavioral;生成的符号:2、十进制计数器子模块(cnt10).LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cnt10 ISPORT (reset,en,clk:IN STD_LOGIC;carry:OUT STD_LOGIC;q :OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END CNT10;ARCHITECTURE rtl OF cnt10 ISSIGNAL qs :STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL ca :STD_LOGIC;BEGINPROCESS(clk)BEGINIF(clk'EVENT AND clk='1')THENIF(reset='1')THENqs<="0000";ELSIF(en='1') THENIF(qs="1001") THEN --计数到9qs<= "0000";ca<='0';ELSIF(qs="1000") THEN --计数到8qs<= qs+1;ca<='1';ELSE qs<= qs+1;ca<='0';END IF;END IF;END IF;END PROCESS;PROCESS(ca)BEGINq<=qs;carry<=ca AND en;END PROCESS;END rtl;生成的符号:仿真波形:1、六进制计数器子模块(cnt6)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cnt6 ISPORT (reset,en,clk:IN STD_LOGIC;carry :OUT STD_LOGIC;q :OUT STD_LOGIC_VECTOR(3 DOWNTO 0)); END CNT6;ARCHITECTURE rtl OF cnt6 ISSIGNAL qs :STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL ca :STD_LOGIC;BEGINPROCESS(clk)BEGINIF(clk'EVENT AND clk='1')THENIF(reset='1')THENqs<="0000";ELSIF(en='1')THENIF(qs="0101") THENqs<= "0000";ca<='0';ELSIF(qs="0100") THENqs<= qs+1;ca<='1';ELSEqs<=qs+1;ca<='0';END IF;END IF;END IF;END PROCESS;PROCESS(ca,en)BEGINq<=qs;carry<=ca AND en;END PROCESS;END rtl;生成的符号:仿真波形:4、译码显示子模块(decorder4_7)参考实验一5、顶层文件设计完整的顶层原理图如图所示:按图完成电路设计,编译通过正确后,分配器件管脚,如下表格:分配完管脚信息,再次编译使之生效,最后下载程序到FPGA实验箱进行结果验证。

LED数码管秒表的制作

LED数码管秒表的制作

LED数码管秒表的制作
一、课程设计要求及原始资料:
制作一个LED数码管显示的秒表,用2位数码管显示计时时间,最小计时单位为“百毫秒”,计时范围0.1~9.9s。

当第一次按下并松开计时功能键时,秒表开始计时并显示时间;
当第二次按下并松开计时功能键时,停止计时,计算两次按下计时功能键的时间,并把时间值送入数码管显示;
当第三次按下计时功能键时,秒表清零,等待下一次按下计时功能键。

如果计时到9.9s时,将停止计时,按下计时功能键,秒表清零,再按下重新开始计时。

二、课程设计进度:
三、主要参考文献:
[1]张毅刚.单片机原理及应用[M].北京:高等教育出版社,2010
[2]张毅刚.单片机原理及接口技术[M].北京:人民邮电出版社,2008
[3]张毅刚.基于Proteus的单片机课程的基础实验与课程设计[M].北京:人民邮
电出版社,2013
专业班级学生课程设计工作起止时间
课程设计评语。

LED数码管秒表

LED数码管秒表

单片机课程设计说明书课题名称专业电气工程学生姓名班级学号指导教师完成日期2012年6月10日LED数码管秒表设计目录1 概述----------------------------------------------------------------31.1 总体设计方案------------------------------------------3 1.2 硬件设计与焊接----------------------------------------3 1.3 软件设计方案------------------------------------------32 系统总体方案及硬件设计----------------------------------42.1 硬件总体设计------------------------------------------4 2.2 单片机基本电路设计------------------------------------6 2.3 秒表时间显示电路设计----------------------------------7 2.4 独立按键电路设计--------------------------------------9 2.5 蜂鸣器电路设计---------------------------------------103 软件设计-------------------------------------------------11 3.1 程序设计思路-----------------------------------------11 3.2 秒表程序构成-----------------------------------------11 3.3 源程序代码与流程图-----------------------------------124 实验仿真-------------------------------------------------145 设计总结-------------------------------------------------15附录1-----------------------------------------------------------------16附录2-----------------------------------------------------------------22附录3-----------------------------------------------------------------23盐城工学院课程设计说明书(2012)1 概述1.1 总体设计方案先进行系统板的基本焊接,即先将晶振电路和复位电路焊接完成。

用单片机AT89C51设计一个2位的LED数码显示作为“秒表”—单片机课程设计

用单片机AT89C51设计一个2位的LED数码显示作为“秒表”—单片机课程设计

一、设计题目和要求: (1)二、设计目的: (2)三、设计内容: (2)四、课程设计心得体会 (26)五、参考文献 (27)六、课程设计指导教师评审标准及成绩评定 (28)附件1:秒表原理图(实际接线图) (30)附件2:仿真图1 (31)附件3:仿真图2 (32)一、设计题目和要求:题目三:秒表应用AT89C51的按时器设计一个2位的LED数码显示作为“秒表”:显示时刻为()()〜99s,每秒自动加1,设计个“开始”键,按下“开始”键秒表开始计时。

设计一个“复位”键,按下“复位”键后,秒表从()开始计时。

任务安排:李座负责绘制电路原理图;梁宗林负责搜集资料及电子版整理;付忠林负责程序和仿真。

二、设计目的:1.进一步掌握AT89C51单片机的结构和工作原理;2.掌握单片机的接口技术及外围芯片的工作原理及控制方式;3.进一步掌握单片机程序编写及程序调试进程,掌握模块化程序设计方式;4.掌握PROTEUS仿真软件的利用方式;5.掌握LED数码管原理及利用方式。

6.掌握按时器、外部屮断的设置和编程原理。

7.通过这次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。

8.该课程设计通过单片机的按时器/计数器按时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零、复位功能, 并同时能够用数码管显示。

三、设计内容:了解8051芯片的的工作原理和工作方式,利用该芯片对LED数码管进行显示控制,实现用单片机的端口控制数码管,显示分、秒,并能用按钮实现秒表起动、停止、清零功能,精准到1秒。

AT89C51单片机的主要工作特性:•内含4KB的FLASH存储器,擦写次数1000次;•内含28字节的RAM;•具有32根可编程I/O线;•具有2个16位可编程按时器;•具有6个屮断源、5个屮断矢量、2级优先权的屮断结构;•具有1个全双工的可编程串行通信接口;•具有一个数据指针DPTR;•两种低功耗工作模式,即空闲模式和掉电模式;•具有可编程的3级程序锁定定位;AT89C51的工作电源电压为5 (1土)V且典型值为5V,最高工作频率为24MHz.AT89C51各部份的组成及功能:中断控制内部总线总线扩展控制器可编程串行口外部中断扩展控制POPl P2 P3 RXD TXD——1.单片机的屮央处置器(CPU)是单片机的核心,完成运算和操作控制,主要包括运算器和控制器两部份。

2LED数码显示的秒表

2LED数码显示的秒表

三、设计内容
• 了解芯片的工作原理和工作方式,使用该芯片对LED数码 管进行显示控制,实现用单片机的端口控制数码管,显示 分、秒,并能用按钮实现秒表起动、停止、清零功能,精 确到1秒。
四、主电路设计
五、主程序流程图
六、秒表汇编程序
• • • • • • • • • • • • • • • • • • • • K_S BIT P1.0 Z_T BIT P1.1 Q_L BIT P1.2 F_W QU 34H ORG 00H SJMP START ORG 0BH LJMP INT_T0 START:MOV DPTR,#TABLE MOV SECOND,#0 MOV TCNT,#0 MOV TMOD,#01H SETB P1.0 SETB P1.1 SETB P1.2 SETB P1.3 JB K_S,$ MOV TH0,#3CH • • • • • • • • • • • • • • • • • • • MOV TL0,#0B0H MOV IE,#82H SETB TR0 A1: LCALL DISPLAY MOV A,SECOND CJNE A,#99,A1 CLEAR: MOV SECOND,#0 INT_T0: JNB Z_T,ZT NEXT: MOV TH0,#3CH MOV TL0,0B0H INC TCNT MOV A,TCNT CJNE A,#20,RETUNE INC SECOND MOV TCNT,#0 MOV A,SECOND CJNE A,#99,RETUNE MOV SECOND,#0 RETUNE:RET1
2位LED数码显示的秒表
组员:42912118 严磊 42912139 蔡则豹
秒表的设计
• • • • • 一、AT89C51单片机 二、设计题目和要求 三、设计内容 四、主电路设计 五、主程序流程图

LED数码管显示电子秒表设计


设 计 工 作 量
1、汇编或 C51 语言程序设计; 2、在 Proteus 上进行仿真成功; 3、提交一份完整的课程设计说明书,包括封面,中文摘要,目录,正文(正 文主要包括:设计原理、程序设计、程序分析、仿真分析、调试过程,调试 结果等部分) ,参考文献、设计总结等。 起止日期(或时间量) 设计内容(或预期目标) 课题介绍,答疑,收集材料,C51 介绍 设计方案论证,练习编写 C51 程序 程序设计 程序调试、仿真 系统测试并编写设计说明书 备注
《单片机原理及应用》课程设计任务书 1
系(部):电信系 课题名称 1、课题内容: 设 计 内 容 及 要 求 设计一种基于 AT89S52 单片机的电子计时秒表,要求如下: (1) 、能正确显示时间,时钟由八位数码管显示,显示格式为: XX 分 XX 秒XX(十分之一、百分之一)秒。 (2) 、设置一个独立式按键,首次按键计时开始,再次按键暂停,第三 次按键清零。 2、要求: 完成该系统的硬件和软件的设计,在 Proteus 软件上仿真通过,并提 交一篇课程设计说明书。 设 计 工 作 量 1、汇编或 C51 语言程序设计; 2、程序调试; 3、在 Proteus 上进行仿真成功; 4、提交一份完整的课程设计说明书,包括设计原理、程序设计、程序 分析、仿真分析、调试过程,参考文献、设计总结等。 起止日期(或时间量) 第一天 进 度 安 排 第二天 第三天~第六天 第六天~第八天 第九天~第十天 设计内容(或预期目标) 课题介绍,答疑,收集材料,C51 介绍 设计方案论证,练习编写 C51 程序 程序设计 程序调试、仿真 系测试并编写设计说明书 备注 专业:2012 级电子信息工程 LED 数码管显示电子秒表设计
教研室 意见
年
月
日

LED数码管动态稳定秒表设计与制作


LED数码管
LED引脚
6.1.1 LED数码管结构
LED工作原理
从内部结构上看,LED 可分为共阳极和共阴极两种结构。
共阳极LED的8个LED 阳极连接在一起, 作 为公共控制端(com), 阴极作为“段”控制 端。当公共端为高电 平,某段控制端为低 电平时,这段对应的 LED导通并点亮。
共阴极LED的8个LED 阴极连接在一起, 作 为公共控制端(com), 阳极作为“段”控制 端。当公共端为低电 平,某段控制端为高 电平时,这段对应的 LED导通并点亮。
Y 1 0 0 1 0 0 0 1 91H 0 1 1 0 1 1 1 0 6EH
- 1 0 1 1 1 1 1 1 BFH 0 1 0 0 0 0 0 0 40H
. 0 1 1 1 1 1 1 1 7FH 1 0 0 0 0 0 0 0 80H
熄灭 1 1 1 1 1 1 1 1 FFH 0 0 0 0 0 0 0 0 00H
请阅读三段中断服务程序,并写出其功能
void int_0() interrupt 0 {
if(b==0){TR0=0;b=1;} else {TR0=1;b=0;} } void int_1() interrupt 2 { sec=0; msec=0; TH0=(65536-50000)/256; TL0=(65536-50000)%256; TR0=1; }
5 1 0 0 1 0 0 1 0 92H 0 1 1 0 1 1 0 1 6DH
6 1 0 0 0 0 0 1 0 82H 0 1 1 1 1 1 0 1 7DH
7 1 1 1 1 1 0 0 0 F8H 0 0 0 0 0 1 1 1 07H
8 1 0 0 0 0 0 0 0 80H 0 1 1 1 1 1 1 1 7FH

用单片机AT89C51设计一个2位的LED数码显示作为“秒表”—单片机课程设计

暂存器1和暂存器2是ALU的两个输入,用于暂存参与运算的数据。ALU的输出也是两个:一个是累加器,数据经运算后,其结果又通过内部总线返回到累加器;另一个是程序状态字PSW,用于存储运算和操作结果的状态。
累加器是CPU使用最频繁的一个寄存器。ACC既是ALU处理数据的来源,又是ALU运算结果的存放单元。单片机与片外RAM或I/O扩展口进行数据交换必须通过ACC来进行。
一、设计题目和要求:
题目三:秒表
应用AT89C51的定时器设计一个2位的LED数码显示作为“秒表”:显示时间为00~99s,每秒自动加1,设计一个“开始”键,按下“开始”键秒表开始计时。设计一个“复位”键,按下“复位” 键后,秒表从0开始计时。
任务安排:李座负责绘制电路原理图;梁宗林负责收集资料及电子版整理;付忠林负责程序和仿真。
·P3 8位、准双向I/O口,具有内部上拉电阻。
P3口可作为普通I/O口。用作输入时,应先将输出锁存器置1。在编程/校验时,P3口接收某些控制信号。它可驱动4个TTL负载。
(2)控制信号线
·RST 复位输入信号,高电平有效。在振荡器稳定工作时,在RST脚施加两个机器周期以上的高电平,将器件复位。
·EA/VPP 外部程序存储器访问允许信号EA.
7.通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。
8.该课程设计通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零、复位功能,并同时可以用数码管显示。
三、设计内容:
了解8051芯片的的工作原理和工作方式 ,使用该芯片对LED数码管进行显示控制,实现用单片机的端口控制数码管,显示分、秒,并能用按钮实现秒表起动、停止、清零功能,精确到1秒。
(3)存储器

led上显示秒表程序

ge=0;
shi++;
if(shi==10) {
shi=0;
bai++;
if(bai==10)
{
bai=0;
qian++;
if(qian==10)
qian=0;
}}} }}
void displ() {
unsigned char i,j;
j=0x20;
for(i=0;i<6;i++) { /*display subprogrammer*/
outbit=0;
outseg=ledbuf[i];
outbit=j;
delay(1);
j>>=1;
}
outbit=0;
}
void main()
{
s1=1;
num=0;
TMOD=0x02; /*定时器方式2,自动重装载*/
TH0=0xce;
TL0=0xce; /*计数初值为206,定时时间为100us*/
sbit s1=P1^0; /*开始键与停止键*/
sbit s2=P1^1; /*清零键*/
unsigned char qian,bai,shi,ge; /*分辨率为0.01miao*/
unsigned char num;
unsigned int tt; /*累计100次为0.01秒*/
unsigned char ledbuf[6]; /*display buffer*/
{
TR0=0;
qian=0;
bai=0;
shi=0;
ge=0;
}
ledbuf[0]=0x00;
ledbuf[1]=0x00; /*一直循环*/
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档