用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数码管秒表
单片机课程设计说明书课题名称专业电气工程学生姓名班级学号指导教师完成日期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数码显示作为“秒表”—单片机课程设计
一、设计题目和要求: (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数码显示的秒表
三、设计内容
• 了解芯片的工作原理和工作方式,使用该芯片对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数码管显示的秒表设计
课程设计说明书用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 课题研究背景与意义随着电子技术的发展,电子技术在各个领域的运用也越来越广泛。
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数码管显示电子秒表设计
设 计 工 作 量
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数码管秒表制作
应用工程学院单片机应用技术实训报告专业: 应用电子学号: 1504150137姓名: 许林日期: 2016/12/24项目二: LED数码管秒表制作一、任务目的1.了解并掌握数码管静态与动态显示原理。
2.掌握秒表计时原理与编程思想。
3.了解并掌握单个按键次数的识别。
二、任务要求a)上电后数码管最右边显示自己学号。
b)按下功能键后,右边6个数码管上显示秒表定时初值,格式为00-00、0。
c)第二次按下功能键后,以一百毫秒为最小计时单位从0开始计时,第三次按下功能键后暂停计时,第四次按下功能键后时间清0。
三、硬件电路设计四、软件设计#include<regx51、h>unsigned char sec,mmiao,miao,fen; sbit K=P3^2;unsigned char a=0;void delayms(unsigned int i){unsigned char k;while(i--)for(k=0;k<120;k++);}void time1() interrupt 1{TH0=0x3c;TL0=0xb0;sec++;if(sec==2){mmiao++;sec=0;if(mmiao==10){miao++;mmiao=0;if(miao==60){fen++;miao=0;if(fen==60){fen=0;}}}}}void time2() interrupt 0{unsigned char n;if(K==0)for(n=0;n<1200;n++);if(K==0){ while(K==0);for(n=0;n<1200;n++);a++;switch(a){case 1:mmiao=0;miao=0;fen=0;break;case 2:TR0=1;break;case 3:TR0=0;break;case 4:mmiao=0;miao=0;fen=0;break;case 5:P0=0x07;P2=7;a=0;break;}}}void main(){unsigned charled[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; unsigned charled1[]={0xbf,0x86,0xdb,0xcf,0xe6,0xed,0xfd,0x87,0xff,0xef}; TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TR0=0;ET0=1;EX0=1;IT0=1;EA=1;while(1){if(a==0){P2=6;P0= 0x4f;delayms(1);P2=7;P0= 0x07;delayms(1);}else{P2=7;P0=led[mmiao%10];delayms(1);P2=6;P0=led1[miao%10];delayms(1);P2=5;P0=led[miao/10];delayms(1) ;P2=4;P0=0x40;delayms(1);P2=3;P0=led[fen%10];delayms(1);P2=2;P0=led[fen/10];delayms(1);}}}五、系统调试仿真调试:首先检查各个线路就是否连接正确,尤其就是数码管就是否选择正确(共阴数码管)。
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数码显示作为“秒表”—单片机课程设计
累加器是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数码管秒表的制作
LED数码管秒表的制作
一、课程设计要求及原始资料:
制作一个LED数码管显示的秒表,用2位数码管显示计时时间,最小计时单位为“百毫秒”,计时范围0.1~9.9s。
当第一次按下并松开计时功能键时,秒表开始计时并显示时间;
当第二次按下并松开计时功能键时,停止计时,计算两次按下计时功能键的时间,并把时间值送入数码管显示;
当第三次按下计时功能键时,秒表清零,等待下一次按下计时功能键。
如果计时到9.9s时,将停止计时,按下计时功能键,秒表清零,再按下重新开始计时。
二、课程设计进度:
三、主要参考文献:
[1]张毅刚.单片机原理及应用[M].北京:高等教育出版社,2010
[2]张毅刚.单片机原理及接口技术[M].北京:人民邮电出版社,2008
[3]张毅刚.基于Proteus的单片机课程的基础实验与课程设计[M].北京:人民邮
电出版社,2013
专业班级学生课程设计工作起止时间
课程设计评语。
第9章 用LED数码管显示的秒表设计
图9-4 定时器中断程序
程序清单见课程设计指导书或配套仿真软件
5
9.4 仿真与实验结果
图9-5 按下Stop按键时的仿真结果
6
9.4 仿真与实验结果
图9-6 按下S 用LED数码管显示的秒表设计
9.1 项目任务 9.2 硬件设计 9.3 程序设计 9.4 仿真与实验结果
1
秒表是一个重要的计时工具,可用于比赛计时、实验研究以及生 活计时等。
2
9.1 项目任务
用STC89C52单片机与两位数码管设计并制作一个秒表,实现 电子秒表的基本功能,显示时间为00~59,每秒自动加1,至59 秒后再回到00,继续循环。运用“开始”、“暂停”、“复位” 按键实现对秒表计时控制。
3
9.2 硬件设计
图9-2 LED数码管显示的秒表设计电路原理图 4
9.3 程序设计
开始 定时器初始化 开中断、开始计时
1秒时间到? N
Y 1秒标志位清0,秒加1
秒=60? N
停止键按下? N
继续计时?
Y 秒计数器清零 Y
停止计时 结束
开始 定时器重新置初值 50ms中断次数加1
结束
显示秒
图9-3 主程序流程图
LED数码管秒表的CAD
电子线路CAD训练报告专业新能源科学与工程学生姓名陈家蓓班级能源131学号1310604123指导教师张兰红完成日期2016年1月22日目录1 训练目的 (1)2 训练内容 (1)3 训练要求 (1)4 电路原理图的绘制 (1)4.1原理图的设计流程 (2)4.2建立元件库的过程 (3)4.2.1创建原理图元件库文件 (3)4.2.2添加元件 (3)4.2.3提取原理图文件 (4)5 PCB图的绘制 (4)5.1 PCB图的设计流程 (4)5.2 PCB图建立元件库的过程 (5)6 调试与实验结果 (7)6.1 静态检查 (7)6.2 通电检查 (8)6.3 实验结果 (9)7. 结束语 (10)附录1:用LED数码管显示的秒表设计电路原理图 (12)附录2:用LED数码管显示的秒表设计PCB图 (13)附录3:用LED数码管显示的秒表设计元器件目录表 (14)电子线路C AD训练1训练目的(1) 掌握Altium Designer软件的操作。
(2) 学会用SCH原理图来描述电路,深入理解电路设计的流程和方法,掌握简单PCB板绘制方法和设计生产工艺,通过训练,能够独立进行电路图的绘制。
(3) 掌握焊接技术,简单电路元器件装配(4) 培养从事科学实验的技能、技巧,提高分析和解决问题的能力,培养学生的实践和创新能力。
2 训练内容(1) 针对“用LED数码管显示的秒表设计”,用Altium Design软件设计电路原理图与PCB图各一张。
(2) 将所设计的PCB板交给厂家加工。
(3) 借助于单片机课程设计时所做的Proteus仿真、C51设计软件和多孔板实物,在加工好的PCB板上焊接、调试,获得调试成功的实物一份。
3 训练要求运用Altium Designer软件绘制课题的SCH电路原理图,建立SCH库文件,生成网络表并能够分析网络表,建立PCB文件并设置相应的工作环境,建立PCB库文件并能够封装,正确地导入网络表,对PCB进行布局布线,最后导出导入文件。
单片机秒表课程设计
《接口及控制技术》课程设计报告课程设计题目:秒表姓名:专业班级:指导教师:成绩:时间:2010-12-10一、设计要求用AT89C51设计一个2位的LED数码显示作为“秒表”:显示时间为00—99秒,每秒自动加1,另设计一个“开始”键和一个“复位”键。
二、实验原理题目难点在于通过对键盘的扫描对时钟的走时/停止进行控制,项目采用定时器T0作为计时器,每10ms发生一次中断,每100次中断加1s。
在此期间,如“开始”按键按下,程序方将TR0置为1,从而开启中断,时钟开始走时;如“复位”按键按下,程序将TR0置为0,同时将存储时间的变量清零,从而中断停止,并实现复位。
本题目采用专用数码管显示控制芯片MAX7219。
MAX7219是美国MAXIM公司生产的串行输入/输出共阴极显示驱动器,该芯片最多可驱动8位7段数字LED显示器或个LED 和条形图显示器。
其引脚图及引脚功能参见有关参考资料。
三、实验目的1、通过本次课程设计加深对单片机课程的全面认识复习和掌握,对单片机课程的应用进一步的了解。
2、掌握定时器、外部中断的设置和编程原理。
3、通过此次课程设计能够将单片机软硬件结合起来,对程序进行编辑,校验。
四、意义该实验通过单片机的定时器/计数器定时和计数原理,设计简单的计时器系统,拥有正确的计时、暂停、清零功能,并同时可以用数码管显示,在现实生活中应用广泛,具有现实意义。
五、实验内容用AT89C51设计一个2位LED数码显示“秒表”,显示时间为00~99秒,每秒自动加一。
另设计一个“开始”K1按键和一个“复位”K2按键。
按键K1同时具有“暂停”功能。
按键说明:按“开始”K1按键,开始计数,数码管显示从00开始每秒自动加一;再次按K1按键,系统暂停计数,数码管显示当时的计数;按“复位”按键,系统清零,数码管显示00。
六、电路原理仿真图将硬件连线按上图所示连接,该实验要求进行计时并在数码管上显示时间,则可利用DVCC系列单片机微机仿真实验系统中的芯片AT89C51中的P1.0管脚做为外部中断0的入口地址,并实现“开始”按键的功能;将P3.3做为外部中断1的入口地址,并实现“清零”按键的功能.;定时器T0作为每秒加1的定时器。
用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 课题研究背景与意义随着电子技术的发展,电子技术在各个领域的运用也越来越广泛。
用LED数码管显示的秒表设计
单片机课程设计说明书用LED 数码管显示的秒表设计专业 电气工程及其自动化学生姓名 刘宁班级 B 电气081学号 **********指导教师 张兰红完成日期2011年 6月 26 日目录1、概述 (2)2、课题方案设计 (2)2.1系统总体设计要求 (2)2.2系统模块结构论证 (2)3、系统硬件设计 (3)3.1总体设计 (3)3.2单片机运行的最小系统 (4)3.2.1 52单片机最小系统电路介绍 (4)3.2.2单片机的振荡电路与复位电路 (7)3.3数码管介绍 (8)3.4驱动电路 (9)4、软硬件联调及调试结果 (10)4.1软硬件调试中出现的问题及解决措施 (10)4.2实物图 (11)4.3调试结果 (13)5、结束语 (13)参考文献 (14)附录 (14)附录1:基于单片机的秒表设计原理图 (14)附录2:基于单片机的秒表设计PCB图 (15)附录3:PROTEUS仿真图 (16)附录4:基于单片机的秒表设计C语言程序清单 (17)附录5:基于单片机的秒表设计元器件目录表 (19)1、概述21世纪是一个电子技术和电子元件有更大发展的世纪。
回顾百年来电子技术和电子工业发展的成就,举世瞩目。
作为一个电气专业的大学生,我们不但要有扎实的基础知识、课本知识,还应该有较强的动手能力。
现实也要求我们既精通电子技术理论,更要掌握电子电路设计、实验研究和调试技术。
课程设计就是一个理论联系实际的机会。
本次设计主要完成具备基本功能的电子秒表的理论设计,电子秒表是重要的记时工具,广泛运用于各行各业中。
作为一种测量工具,电子秒表相对其它一般的记时工具具有便捷、准确、可比性高等优点,不仅可以提高精确度,而且可以大大减轻操作人员的负担,降低错误率。
在设计中应用到数码管,数码管主要用于楼体墙面,广告招牌、高档的DISCO、酒吧、夜总会、会所的门头广告牌等。
特别适合应用于广告牌背景、立交桥、河、湖护栏、建筑物轮廓等大型动感光带之中,可产生彩虹般绚丽的效果。
LED数码管秒表的制作
LED数码管秒表的制作
一、课程设计要求及原始资料:
制作一个LED数码管显示的秒表,用2位数码管显示计时时间,最小计时单位为“百毫秒”,计时范围0.1~9.9s。
当第一次按下并松开计时功能键时,秒表开始计时并显示时间;
当第二次按下并松开计时功能键时,停止计时,计算两次按下计时功能键的时间,并把时间值送入数码管显示;
当第三次按下计时功能键时,秒表清零,等待下一次按下计时功能键。
如果计时到9.9s时,将停止计时,按下计时功能键,秒表清零,再按下重新开始计时。
二、课程设计进度:
三、主要参考文献:
[1]张毅刚.单片机原理及应用[M].北京:高等教育出版社,2010
[2]张毅刚.单片机原理及接口技术[M].北京:人民邮电出版社,2008
[3]张毅刚.基于Proteus的单片机课程的基础实验与课程设计[M].北京:人民邮
电出版社,2013
专业班级学生课程设计工作起止时间
课程设计评语。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
单片机课程设计说明书用LED 数码管显示的秒表设计专业 电气工程及其自动化学生姓名 刘宁班级 B 电气081学号 0810601114指导教师 张兰红完成日期2011年 6月 26 日目录1、概述 (2)2、课题方案设计 (2)2.1系统总体设计要求 (2)2.2系统模块结构论证 (2)3、系统硬件设计 (3)3.1总体设计 (3)3.2单片机运行的最小系统 (4)3.2.1 52单片机最小系统电路介绍 (4)3.2.2单片机的振荡电路与复位电路 (7)3.3数码管介绍 (8)3.4驱动电路 (9)4、软硬件联调及调试结果 (10)4.1软硬件调试中出现的问题及解决措施 (10)4.2实物图 (11)4.3调试结果 (13)5、结束语 (13)参考文献 (14)附录 (14)附录1:基于单片机的秒表设计原理图 (14)附录2:基于单片机的秒表设计PCB图 (15)附录3:PROTEUS仿真图 (16)附录4:基于单片机的秒表设计C语言程序清单 (17)附录5:基于单片机的秒表设计元器件目录表 (19)1、概述21世纪是一个电子技术和电子元件有更大发展的世纪。
回顾百年来电子技术和电子工业发展的成就,举世瞩目。
作为一个电气专业的大学生,我们不但要有扎实的基础知识、课本知识,还应该有较强的动手能力。
现实也要求我们既精通电子技术理论,更要掌握电子电路设计、实验研究和调试技术。
课程设计就是一个理论联系实际的机会。
本次设计主要完成具备基本功能的电子秒表的理论设计,电子秒表是重要的记时工具,广泛运用于各行各业中。
作为一种测量工具,电子秒表相对其它一般的记时工具具有便捷、准确、可比性高等优点,不仅可以提高精确度,而且可以大大减轻操作人员的负担,降低错误率。
在设计中应用到数码管,数码管主要用于楼体墙面,广告招牌、高档的DISCO、酒吧、夜总会、会所的门头广告牌等。
特别适合应用于广告牌背景、立交桥、河、湖护栏、建筑物轮廓等大型动感光带之中,可产生彩虹般绚丽的效果。
用护栏管装饰建筑物的轮廓,可以起到突出美彩亮化建筑物的效果。
事实证明,它已经成为照明产品中的一只奇葩,绽放在动感都市。
2、课题方案设计2.1 系统总体设计要求用AT89C52设计一个2位LED数码显示“秒表”,显示时间为00~59秒,每秒自动加一。
另设计一个“开始”按键和一个“复位”按键,一个“暂停”按键。
接上电源后从00开始计时,至59后再回到00,继续循环。
2.2系统模块结构论证1.单片机模块选择方案一:选用飞思卡尔单片机,飞思卡尔单片机功能强大,但是价格相对要高,而且对此不熟悉。
方案二:采用STC89系列单片机,其架构简单,相对熟悉,价格便宜,对设计功能已经足够。
焊接也是比较容易。
因此,选择方案二。
2.电源模块选择方案一:采用交流220V/50HZ电源转换为直流5V电源作为电源模块。
该方案实施简单,电路搭建方便,可作为单片机开发常备电源使用。
方案二:采用干电池串并联到5V作为电源模块。
该方案实施简单,无需搭建电路,但相对方案不够稳定,电池消耗快,带负载后电压降过高,可能无法使系统稳定持续运行。
方案三:采用USB接口电源,该方案简单方便,可以直接和电脑的USB接口相连。
电脑的USB接口属于接口电源,要并联耦合电容进行缓冲。
因此,选择的是方案三。
3.显示模块选择:方案一:采用8段LED数码管作为显示模块核心。
方案二:采用LCD液晶显示器作为显示模块核心。
LED数码管节能环保,显示直观。
因此选择方案一。
4.驱动模块选择:方案一:用与非门逻辑电路作为驱动电路主要元件。
方案二:用PNP型三极管作为驱动电路主要元件。
与非门逻辑电路相对来说较为复杂,PNP三极管只有三个端口且价格也很便宜,因此选择方案二。
3、系统硬件设计3.1总体设计利用单片机定时器/计数器中断设计秒表,从而实现秒的计时。
用两个数码管来显示秒表数据。
增加一个清零按钮,计时结束后可以清零。
通过采用proteus仿真软件来模拟实现。
模拟利用AT89C52单片机、LED数码管以及控件来控制秒表的计数以及计数的开启/暂停/继续与复位。
两位数码管用来显示数据,一位数码管显示个位1~9,满十进一后显示十位的数码管的数字加一,并且个位显示清零重新从零计数。
计秒数码管采用两位的数码管,当计数超过范围是所有数码管全部清零重新计数。
、软硬件设计是设计中不可缺少的,为了满足功能和指标的要求,资源分配如下:晶振采用11.0592MZ的外部晶振频率内存分配:P0口与数码管个位和十位数据输入端相连,控制其段选信号,输出1~9不同字型。
P3口的P3.1、P3.2分别与秒表个位和十位数码管位选连接,控制秒表的计数以及计数的开启/暂停/继续与复位清零。
本设计包含有单片机最小系统模块、复位模块、放大器模块、LED数码管显示模块。
其中最小系统模块由STC89C52、电阻、电容和晶振电路等主要硬件组成。
复位模块由二极管、电阻和复位开关组成。
放大器模块由PNP三极管、电阻组成。
LED数码管显示模块由两位八段数码管组成。
3.2单片机运行的最小系统最小系统模块由STC89C52、电阻、电容和晶振电路等主要硬件组成。
3.2.1 52单片机最小系统电路介绍1. 52单片机最小系统复位电路的极性电容C1的大小直接影响单片机的复位时间,一般采用10~30uF,52单片机最小系统容值越大需要的复位时间越短。
2. 52单片机最小系统晶振Y1也可以采用11.0592MHz,在正常工作的情况下可以采用更高频率的晶振,52单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。
3. 52单片机最小系统起振电容C2、C3一般采用15~33pF,并且电容离晶振越近越好,晶振离单片机越近越好4.P0口为开漏输出,作为输出口时需加上拉电阻,阻值一般为10k。
设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。
计数值N乘以机器周期Tcy就是定时时间t。
设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。
在每个机器周期的S5P2期间采样T0、T1引脚电平。
当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。
由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。
当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2 ms。
标识符号地址寄存器名称P3 0B0H I/O口3寄存器PCON 87H电源控制及波特率选择寄存器SCON 98H串行口控制寄存器SBUF 99H串行数据缓冲寄存器TCON 88H定时控制寄存器TMOD 89H定时器方式选择寄存器TL0 8AH定时器0低8位TH0 8CH 定时器0高8位TL1 8BH 定时器1低8位TH1 8DH定时器1高8位图3-1 89c52系列单片机管脚图89C52管脚说明:VCC:供电电压。
GND:接地。
P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。
当P1口的管脚第一次写1时,被定义为高阻输入。
P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。
在FIASH编程时,P0 口作为原码输入口,当FIASH 进行校验时,P0输出原码,此时P0外部必须被拉高。
P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。
P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。
在FLASH编程和校验时,P1口作为第八位地址接收。
P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。
并因此作为输入时,P2口的管脚被外部拉低,将输出电流。
这是由于内部上拉的缘故。
P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。
在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。
P2口在FLASH编程和校验时接收高八位地址信号和控制信号。
P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。
当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。
作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。
P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。
RST:复位输入。
当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。
PSEN:外部程序存储器的选通信号。
在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。
但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。
XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。
XTAL2:来自反向振荡器的输出。
3.2.2单片机的振荡电路与复位电路1.振荡电路采用内部时钟方式时,如图所示。
片内的高增益反相放大器通过XTAL1、XTAL2外接作为反馈元件的片外晶体振荡器(呈感性)与电容组成的并联谐振回路构成一个自激振荡器,向内部时钟电路提供振荡时钟。
振荡器的频率主要取决于晶体的振荡频率,一般晶体可在1.2~12MHz之间任选,电容C1、C2可在5~30pF之间选择,电容的大小对振荡频率有微小的影响,可起频率微调作用。
本电路选用的是内部振荡器方式,。
选用内部振荡器比选用外部时钟电路简单并且易于实现。
最重要的是此电路易于调试,而且精度高。
2. 复位电路图3-2 振荡电路复位电路可分为上电复位和外部复位两种方式。
通过某种方式,使单片机内各寄存器的值变为初始状态的操作称为复位。
MCS —52单片机在时钟电路工作以后,在RST/VPD端持续给出2个机器周期的高电平就可以完成复位操作(一般复位正脉冲宽度大于10ms)。
复位分为上电复位和外部复位两种方式。
图3-3 复位电路(a)上电复位电路(b)上电/外部复位电路上电复位是在单片机接通电源时,对单片机的复位。
上电复位电路如图(a)所示。
在上电瞬间RST/VPD端与VCC电位相同,随着电容上电压的逐渐上升,RST/VPD 端电位逐渐下降。