简易秒表设计实验报告
秒表实验报告_2
实验八秒表一、实验目的:1、了解数字秒表的工作原理。
2、进一步熟悉用VHDL语言编写驱动七段数码管的代码。
3、掌握VHDL编写中的一些小技巧。
二、实验要求:实现数字秒表功能,要求有分,秒,1%秒显示,该秒表能够随时控制启/停,清零重新计时功能。
三、实验原理秒表的工作原理与多功能数字电子钟大致相同,唯一不同的是,由于秒表的分辨率为0.01秒。
所以整个秒表的工作时钟是在100HZ的时钟信号下完成的。
假设该秒表的应用场合小于1小时,秒表的显示格式为mm~~ss~~xx(mm表示分钟:0~59;ss表示秒:0~~59;xx表示百分之一秒:0~~99)。
四、实验步骤1、用VHDL语言编写出秒表电路程序,通过QuartusII 进行编辑、编译、综合、适配、仿真测试。
给出其所有信号的时序仿真波形。
2、按实验要求锁定管脚,重新综合。
3、在EDA6000软件中建立实验模式。
4、下载设计文件,硬件验证秒表工作性能。
五、实验结果1、调试的过程记录在仿真图正确后开始用EDA6000进行检验,所有的管脚都连接好后,通入100Hz的脉冲,秒表开始工作2、实验结果经过调试得到了正常工作的秒表,每一个环节的跳转过程都是正常的最终的波形图:3、实验程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity stopwatch isport(clk,rst,en:in std_logic;minh,minl,sech,secl,msh,msl:out std_logic_vector(3 downto 0)); end entity;architecture behav of stopwatch issignal minhi,minli,sechi,secli,mshi,msli:std_logic_vector(3 downto 0); signal clk1,clk2:std_logic;beginprocess(clk,en,rst)beginif rst='1' then mshi<="0000";msli<="0000";elsif clk'event and clk='1' thenif en='1' thenif (mshi="1001" and msli="1001") thenmshi<="0000";msli<="0000";clk1<='1';elsif msli="1001" thenmsli<="0000"; mshi<=mshi+1;else msli<=msli+1;clk1<='0';end if;end if;end if;end process;process(clk1,en,rst)beginif rst='1' then sechi<="0000";secli<="0000";elsif clk1'event and clk1='1' thenif en='1' thenif (sechi="0101" and secli="1001") thensechi<="0000";secli<="0000";clk2<='1';elsif secli="1001" thensecli<="0000"; sechi<=sechi+1;else secli<=secli+1;clk2<='0';end if;end if;end if;end process;process(clk2,en,rst)beginif rst='1' then minhi<="0000";minli<="0000";elsif clk2'event and clk2='1' thenif en='1' thenif (minhi="0101" and minli="1001") thenminhi<="0000";minli<="0000";elsif minli="1001" thenminli<="0000"; minhi<=minhi+1;else minli<=minli+1;end if;end if;end if;end process;msh<=mshi;msl<=msli;sech<=sechi;secl<=secli;minh<=minhi;minl<=minli; end behav;。
数字秒表设计实验报告(一)
数字秒表设计实验报告(一)数字秒表设计实验报告Introduction•实验目的:设计并实现一个数字秒表•实验时间:2021年10月10日至2021年10月15日•实验对象:本科计算机专业学生•实验设备:计算机、编程软件Experiment Procedure1.寻找合适的编程语言和开发工具2.设计秒表的用户界面3.编写代码实现秒表的计时功能4.测试并调试代码5.完善用户界面,添加重置和暂停功能6.进行性能测试,并分析结果Experimental Findings•选用Python编程语言和PyQt图形库进行开发•按照用户界面设计,实现了秒表的计时功能•通过测试,发现秒表计时准确性较高,误差范围小于0.1秒•添加了重置和暂停功能,提高了秒表的实用性•性能测试表明,在处理大数据量时,秒表的响应速度仍然较快Conclusion通过本次实验,我们成功设计并实现了一个功能完善的数字秒表。
通过合理的编程语言选择和用户界面设计,实验结果表明,我们的秒表具有准确的计时功能、良好的用户体验和较高的性能。
这对于计算机专业学生来说,具有较高的实用价值。
Future Work尽管我们已经取得了较好的实验结果,但仍有一些改进的空间。
在未来的工作中,我们计划:•进一步提高秒表的计时准确性,减小误差范围•探索更多的用户界面设计方案,增加更多便利的功能•优化性能,提高秒表在处理大数据量时的响应速度•结合云服务,实现秒表数据的备份和同步功能Acknowledgements感谢实验组的所有成员共同努力,以及指导老师的支持和指导,使得本次实验取得了圆满成功。
Reference无抱歉,关于数字秒表设计实验报告的文章已经终止。
电子秒表实验报告
电子技术设计性实训报告学号:211002146姓名:邱富烨同组人:夏文彬班级:03班指导老师:林雪健日期:2012.09.07目录一.实训目的---------------------------------------------------3二.设计功能要求---------------------------------------------3 三.电路设计---------------------------------------------------4 (一)电路框图--------------------------------------------4 (二)单元电路分析-------------------------------------4四.设计总图及其工作原理---------------------------------5 (一)工作原理--------------------------------------------5 (二)元件清单--------------------------------------------5五.电路调试--------------------------------------------------6(一) 调试过程--------------------------------------------6(二)故障分析与排除-----------------------------------7六.实训心得---------------------------------------------------8一. 实验目的1. 对芯片74LS160芯片以及555的功能的更形象的认知。
2.增强使用EWB软件的能力。
3.进一步提高独立分析问题和解决问题的能力。
4.掌握数字系统的分析和设计方法。
5.对数字集成电路的综合应用有进一步的认识和理解。
实验六 秒表设计
实验六秒表设计(设计实验)一、实验说明秒表的逻辑结构较简单,它主要由、显示译码器、分频器、十进制计数器、报警器和6进制计数器组成。
在整个秒表中最关键的是如何获得一个精确的100H Z计时脉冲,除此之外,整个秒表还需有一个启动信号和一个归零信号,以便秒表能随意停止及启动。
秒有共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便与同显示译码器的连接。
当计时达60分钟后,蜂鸣器鸣响10声。
二、结构组成四个10进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;两个6进制计数器:用来分别对十秒和十分进行计数;分频率器:用来产生100H Z计时脉冲;显示译码器:完成对显示的控制。
三、硬件要求1、6位八段扫描共阴级数码显示管。
2、二个按键开关(归零,启动)。
四、实验内容及步骤1、根据电路持点,可在教师指导下用层次设计概念。
将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口。
让几个学生分做和调试其中之一,然后再将各模块合起来联试。
以培养学生之间的合作精神,同时加深层次化设计概念。
2、了解软件的元件管理深层含义,以及模块元件之间的连接概念,对于不同目录下的同一设计,如何熔合。
3、配划分前后的仿真内容有何不同概念,仿真信号对象有何不同,让学生有更深一步了解。
熟悉了CPLD设计的调试过程中手段的多样化。
适配划分后的管脚定位,同相关功能块硬件电路接口连线。
5、所有模块全用VHDL语言描述。
6、内部结构图如图6-1所示。
五、实验连线输入接口:1、代表归零,启动信号RESET、START的管脚分别连接按键开关。
2、蜂鸣器鸣响信号SPEAKER接蜂鸣器的输入。
3、代表计数时钟信号CLK的管脚同2.5MHZ时钟源相连。
输出接口:代表扫描显示的驱动信号管脚SEL2,SEL1,SEL0和A~G参照其它实验的连法。
图6-1 秒表内部结构示意图。
简易秒表报告
《简易秒表》设计报告学院:信息学院专业:集成电路设计与集成系统班级:10集成姓名:熊梓淋学号:1015251032一方案设计1.1设计要求①要求设计一个跑步计时用秒表,可以分圈计时,精度为00.01秒;②显示位数为8位,前4位为本圈用时,后4位为总时间;③有启动、暂停、停止、清零功能;④其他可自由发挥。
1.2 系统分析这次设计的电路主要用于实现秒表的功能,并在数秒显示管上显示出来,同时还要求能过分圈计时,要实现分圈这个功能就需要设定两个时间——时间1和时间2,让时间1控制总的时间,时间2控制分圈时间,开始时让两个时间同时计数,当我们按下分圈那个按键时,时间2返回从零开始计数,而时间1则不变仍然计数,这样就达到了分圈的效果。
1.3系统方案方案一:利用逻辑电路设计一个简易的秒表,该电路主要可分为5个模块:毫秒脉冲发生器、计数器、译码显示器、时序控制器、存储电路。
采用555振荡器作为脉冲发生器,计数器和控制电路是系统的主要部分,计数器可用加(减)的计数方法,控制电路具有直接控制计数器的启动计数、暂停、清零、等功能。
显示电路则由译码器和数码显示管实现。
设计框图如二所示方案二:利用STC89C51单片机设计简易秒表。
单片机软件灵活并且具有强大的可修改度。
利用软件编程可实现控制部分和计数部分。
只需在单片机外围添加开关控制电路和数码显示部分就能实现该设计的要求。
如图三所示1.4 方案论证方案一是用逻辑门搭建的,基本也能满足电路设计要求,但要做好是有很大的难度的,线非常之多,元件分散、多,容易把线接错,而且浪费;所以考虑采用了方案二以STC89C51芯片为中心控制系统,实现显示、键盘控制、响铃等功能,大大提高了系统的智能化,也使得系统所测结果精度大大提高。
二硬件设计2.1 控制芯片的介绍STC89C51单片机的外型如图四所示。
单片机可分为通用型和专用型,种类繁多。
这里我们主要介绍STC89C51是一种低功耗、高性能、超抗干扰的单片机,指令代码完全兼容传统的8051单片机。
简易秒表设计实验报告完整
简易秒表设计实验报告(可以直接使用,可编辑实用优秀文档,欢迎下载)实 验 报 告 系别信工系专业班级姓名学号课题名称:简易秒表设计 实验目的:1、 熟悉Keil C51软件的使用方法及proteus 仿真软件的使用;2、 综合运用所学的理论知识(数码管、按键),通过实践加强对所学知识的理解,具备设计单片机应用系统的能力。
3、 通过本次试验,增强自己的动手能力。
认识单片机在日常生活中的应用的广泛性,实用性。
设计要求:制作简易秒表,用三个按键分别实现秒表的启动、停止与复位,利用两位共阴级的数码管显示时间。
设计思路:硬件设计:数码管部分采用2位共阴极的数码管,在P0口接上拉电阻,公共端低电平扫描。
按键电路部分,将按键一侧与单片机任一I/O 口相连。
软件设计:模块化思想,使用定时器T0的工作方式1,编写显示子程序,延时子程序,初始化程序,主程序设计时注意按键消抖。
原理图:XTAL218XTAL119ALE 30EA 31PSEN 29RST 9P0.0/AD039P0.1/AD138P0.2/AD237P0.3/AD336P0.4/AD435P0.5/AD534P0.6/AD633P0.7/AD732P1.01P1.12P1.23P1.34P1.45P1.56P1.67P1.78P3.0/RXD10P3.1/TXD11P3.2/INT012P3.3/INT113P3.4/T014P3.7/RD 17P3.6/WR16P3.5/T115P2.7/A1528P2.0/A821P2.1/A922P2.2/A1023P2.3/A1124P2.4/A1225P2.5/A1326P2.6/A1427U1AT89C51C11nFC21nF R110k C31uF 234567891RP1RESPACK-8源代码:#include<reg51.h>#define uint unsigned int#define uchar unsigned charsbit key1=P3^0; //定义"启动"按钮sbit key2=P3^1; //定义"停止"按钮sbit key3=P3^2; //定义"复位"按钮sbit wei1=P2^6; //定义位选sbit wei2=P2^7;uchar aa;uchar temp;uchar shi;uchar ge;uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //共阴极数码真值表void delay(uint z){uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}void display(uchar shi,uchar ge) //显示子程序{shi=temp/10;ge=temp%10; //分离个位和十位wei1=0; //送位选P0=table[shi];//使用动态扫描的方法实现数码管显示delay(1);wei1=1; //关闭位选wei2=0;P0=table[ge];delay(1);wei2=1;}void init() //初始化程序{aa=0;temp=0;TMOD=0x01; //使用定时器T0的方式1TH0=0x4c;TL0=0x00; //定时50ms中断一次EA=1; //终端总允许ET0=1; //允许定时器T0中断}void timer0() interrupt 1{TH0=0x4c; //重装初值TL0=0x00;aa++; //中断计数值加1if(aa==20) //中断20次后,定时时间为20*50ms=1000ms=1s{aa=0;temp++;if(temp==60) //秒表到达60s后回零{temp=0;}}}void main(){init(); //调用初始化子程序while(1){if(key1==0) //检验启动按钮是否按下{delay(10);//延时去抖动if(key1==0);//再次检测启动按钮{while(!key1);//松手检测TR0=1; //启动定时器开始工作}}if(key2==0) //{delay(10);if(key2==0){while(!key2);TR0=0;}}if(key3=0){delay(10);if(key3==0){while(!key3);temp=0;shi=0;ge=0;TR0=0;}}display(shi,ge);}}实验结果:在proteus中编写程序,编译调试后生成hex文件,将hex文件加到仿真电路中,通过对简易秒表进行演示,达到设计要求。
电子秒表课程设计设计报告
电子秒表电路设计实验报告一. 实验目的1.进一步提高独立分析问题和解决问题的能力。
2.掌握数字系统的分析和设计方法。
3.对数字集成电路的综合应用有进一步的认识和理解。
二. 设计题目:制作一个简易的电子秒表 功能要求:(1) 具有两位数码显示。
分别显示1/10秒和秒计数。
(2) 有两个按键分别控制启动(开始计时)/停止和清零。
功能表如下:三、概述:要完成题目要求的电子秒表功能,系统应具有如下几部分电路: 1、定时电路;题目要求最小计时单位为1/10秒,即100ms 。
这部分电路必须能准确的产生周期为100ms (频率为10Hz )的时钟信号。
2、计时电路:题目要求系统具有两位显示器,分别显示秒和1/10秒信号。
所以本系统应具有两个十进制计数器,分别对定时信号进行计数,以产生1/10秒和秒计数。
系统计数范围从0.0~9.9秒。
3、显示译码驱动电路:将计数器的计数结果(BCD 码)通过译码器译成七段显示码并驱动LED 数码管显示出来。
4、控制电路:根据题目要求,本电子秒表应具有两个按键。
其中一个控制秒表的启/停,本按键应有自锁功能,按一次启动计时,再按一次停止计时。
另一个按键控制清“0”,本按键不需自锁,按下时系统清“0”;放开时系统回复正常计时功能。
系统电路结构框图如图1所示。
图1 系统结构框图四、电路设计方案:1、定时电路:系统的定时电路要求产生周期为100ms的时钟信号。
在此我们用555定时器来实现。
定时器是电子秒表的核心,其作用是产生一个标准频率10赫兹的脉冲信号。
振荡频率的精度和稳定度决定了秒表的质量(如图2),图3为脉冲信号宽度图2 555定时器器图3 脉冲信号2、计时电路:本电路需要两位十进制加法计数器,对定时电路的时钟信号进行计数。
可用两片74LS160实现。
74LS160是同步十进制加法计数器,其功能表如下:应用两片74LS160组合级联可构成100进制计数器。
其级联方式可分为串行进位方式和并行进位方式两种。
EDA秒表设计 实验报告
EDA课程设计报告——基于VHDL语言的秒表设计课程名称:EDA技术院系:地球物理及信息工程学院专业班级:电子信息工程08级2班学生姓名:学号:指导老师:完成时间:2011年5月18日秒表设计一. 设计要求利用EDA实验箱,通过VHDL语言进行编程,设计一个简单的秒表,并用EDA实验箱进行实现,具体设计要求如下:(1)有使能、暂停、继续、秒表计数功能;(2)带有异步复位功能;(3)显示分、秒信息,若需要,显示秒表信息。
二. 设计的作用、目的在本次设计中,可以简单的了解EDA技术的应用以及VHDL语言编写的方法。
通过设计一个秒表,可以掌握用VHDL设计多位加法计数器的方法,尤其是调整时钟使得每过一秒就改变一个数,达到设计的要求。
三. 设计的具体实现1.系统概述本次系统设计主要分三个部分,一是通过VHDL语言设计一个八位的加法计数器,来实现秒表的计时功能;二是通过调整时钟使秒表计数为每秒改变一个数;三是加入一些控制按键,实现使能、暂停、继续等功能。
2.程序具体设计秒表显示共有6位,两位显示分,两位显示秒,十分秒和百分秒各一位。
设计时使用一个计数器,随着时钟上升沿的到来循环计数,每计数一次,百分秒位加一,通过百分秒位满十进位来控制十分位的计数,十分位满十进位,依次类推,实现秒表计数。
为实现秒位的计时精确,百秒位必须以0.01秒的时间间隔计数,即时钟的频率是100Hz。
为此,本设计采用3MHz的时钟频率通过分频得到100Hz的时钟频率,再送给控制时钟以得到比较精确的CLK信号。
具体程序设计见附录。
引脚定义如下:其中,时钟信号CLK为3MHz的时钟频率,分频后得到的时钟为CLK2,输出引脚CLK2和输入引脚CLK2在外部相连,实现将分频后的时钟送入。
3.调试应用MAX+plus II软件编译调试实验控制程序, 仿真运行结果如下:(1)给时钟后,实现开始功能:开始键按下(STA=‘1’)后,秒表计数开始。
(2)给时钟后,实现暂停功能:从上图可以看出暂停键按下后(POS=‘1’),输出(CQ)保持不变,直到暂停键再次按下(POS=‘0’),输出才继续计数,从而实现了暂停的功能。
秒表时间研究实验报告
5、 绘制管制界限图。 选择对第三组数据进行异常值剔除 第三组的平均值如上表所示 平均值=5.235 标准差=1.219 管制上限UCL=5.235+3×1.219=8.894 管制下限LCL=5.235—3×1.219=1.578 数值1.2小于1.578,在管制下限之外,为异常值,应剔除。
6、 分析秒表测时法确定转向器部件装配过程的标准时 间的结果。
1、 实验目的
1、学会秒表测时的方法。 2、学会用秒表测时来制定标准时间
2、 使用仪器、材料
汽车转向器、装拆工具、铅笔、橡皮、秒表、时间研究表格等。
3、 实验过程
1、收集资料
2、划分操作单元 划分操作单元的原则如下:
(1)每一单元应有明显易辨的起点和终点;(2)单元时间愈短愈好; (3)尽可能每一单元为操作的基本动作;(4)不变单元与可变单元应 分开;(5)人工操作单元应与机器单元分开;(6)规则单元、间歇性 单元和外来单元分开;(7)每一单元应有完整而详细的说明。
3、测时 采用连续法记录时间研究,在现场记录时用铅笔填写秒表读
数“W.R”,见附件:时间研究表(一)。计算基本时间“B.T”。
4、填写时间研究表(二),剔除异常值,用三倍标准法决定正常值范围 (正常值范围在x±3σ内)。
5. 决定宽放时间 取宽放率为:15%。
宽放时间=正常时间×宽放率
6. 计算标准时间:标准时间=平均操作时间×评比系数+宽放时间
因为标准时间=平均操作时间×评比系数+宽放时间,即标准时间=正常时 间+宽放时间。秒表测时法测定的时间是操作者完成某单元的实际时间, 表二中已算出操作者完成操作所需的标准时间,由于是选取20个同学的 操作数据,数值存在着些许差异,操作者的操作速度可能比标准动作快 (正常速度操作),也可能比标准动作慢,所以,不能直接将表二中算 的的平均值认为是操作者以正常速度操作所需的时间,因此我们要对操 作者的作业进行评定,并以此对观测时间进行修正,即将求得的平均值 乘上评定系数。使操作所需的时间变为不快不慢的正常时间。这样才能 保证制定的标准时间的科学性。在计算标准时间的时候,我们还计算了 宽放时间,因为正常时间并未考虑操作者个人需要和各种不可避免的延 迟因素所耽误的时间。如果以正常时间为标准时间,则会使操作者从早 到晚的工作。显然这是不合理的,所以我们在秒表测时法确定标准时间 以前,还必须找出操作者所需的停顿和休息的时间,即宽放时间。这样 才符合实际需要。因此我们在用秒表测时法确定转向器部件装配过程的 标准时间的时候,计算了正常时间及宽放时间,以保证标准时间的科学
简易秒表设计报告
简易秒表设计报告一.前言在电子科学技术高速发展的今天,高科技产品越来越多的应用在我们的日常生活中,给我们的生活带来了非常大的方便,每时每秒我们都能感受到产品的更新换代。
产品和技术革新的日新月异都让人非常惊讶。
像平常我们工作所用的电脑、手机和生活所用的电视机,收音机,Mp3等等,这些高科技产品给我们带来了极大的方便,但这要归功于科学技术的高速发展。
简易秒表是我们的单片机课程设计题目。
简易秒表涉及到《模拟电子技术》和《电路分析》中的相关知识。
本文介绍的简易秒表电路设计新颖具有电路结构简单、成本较低、操作方便、灵敏可靠等优点,经使用效果良好,具有较高的推广价值。
二.系统设计要求⑴硬件设计:根据任务要求,完成单片机最小系统及其扩展设计。
⑵软件设计:根据硬件设计完成显示功能要求,完成控制软件的编写与调试;利用单片机定时器中断和定时器计数方式实现秒定时。
通过LED显示程序的调整,熟悉LED动态显示的控制过程。
⑶ 功能要求:用PB1启动秒表和停止秒表,PB2键将秒表归零,按一下PB1,即开始定时,在数码管上每秒加1,加到99,归零,秒表在暂停状态下,按下PB3键可对秒数加1,按下PB4键可对秒数减1。
(4)通过阅读和调试简易秒表整体程序,学会如何编制含LED动态显示、键盘扫描和定时器中断等多种功能的综合程序,初步体会大型程序的编制和调试技巧。
三.设计思路分析本设计以单片机为核心设计的简易秒表方案是:用按钮PB1启动秒表和停止秒表,开启后立刻进入计时状态,用定时器T0进行1s的计数,每隔1s就把预设时间加1,用一个两位的LED数码管显示时间,按钮PB2将秒表归零,如果第二次按一下S1键,计时会立即停止,在数码管上显示当前秒数,这时如果按下PB2键,数码管会显示00,直到再次按下PB1键计时才会开始,当秒数加到99后,下一秒数码管会归零,即从0开始重新每秒加1计时。
另外在P1口的0和1引脚各连接一个按钮,一个进行加1,另一个进行减1。
单片机秒表设计实验报告(1)
本科学生设计性实验报告学号姓名学院物理与电子专业、班级实验课程名称简易秒表设计教师及职称开课学期2013 至2014 学年下学期填报时间2014 年 6 月 5 日云南师范大学教务处编印摘要:单片机控制秒表是集于单片机技术、模拟电子技术、数字技术为一体的机电一体化高科技产品,具有功耗低,安全性高,使用方便等优点。
本次设计内容为以 89C51 单片机为核心的秒表,它采用键盘输入,单片机技术控制。
设计内容以硬件电路设计,软件设计和PCB 板制作三部分来设计。
利用单片机的定时器/计数器定时和计数的原理,用集成电路芯片、LED 数码管以及按键来设计计时器。
将软、硬件有机地结合起来,使他拥有正确的计时、暂停、清零、并同时可以用数码管显示,在现实生中应用广泛。
共阳极,共阴极数码管的字符码表2 程序设计此次选用C51来编程,首先要有初始化程序,通过初始化程序,将对主程序所用到的变量、常量以及各个参数和所调用的子函数定义,其次还有显示程序、按键扫描及处理程序、时钟程序。
//返回值:无void delay(unsigned char i) //延时函数,无符号字符型变量i为形式参数{unsigned char j,k; //定义无符号字符型变量j和kfor(k=0;k<i;k++) //双重for循环语句实现软件延时for(j=0;j<255;j++);}3.仿真图如下4.实验设备及材料(1)装有keil软件、下载软件和Proteus仿真软件的电脑一台。
(2)单片机开发板一块。
5.实验方法步骤及注意事项(1)根据题目要求画出流程图,对实验有总体概念;(2)程序的设计;(3)通过仿真图来测试、修改、优化程序;(4)设计电路板,做出实物图;(5)总结分析实验过程中出现的问题,在以后的实验中该如何避免类似的问题在发生,该实验还有那些可以优化的地方。
6.参考文献[1]王东锋陈园园郭向阳,单片机C语言应用100例,电子工业出版社[2]胡汉才.单片机及其接口技术.北京:清华大学出版社,2000。
电子秒表的设计实验报告
电子秒表的设计实验报告
《电子秒表的设计实验报告》
摘要:本实验旨在设计一款简单易用的电子秒表,通过实验验证其准确性和稳定性。
实验结果表明,所设计的电子秒表具有较高的准确性和稳定性,能够满足实际使用需求。
引言:电子秒表是一种用于测量时间的工具,广泛应用于实验室、体育比赛和工业生产等领域。
设计一款准确可靠的电子秒表对于提高工作效率和数据准确性具有重要意义。
因此,本实验旨在设计一款简单易用的电子秒表,并通过实验验证其性能。
实验方法:首先,我们选取了一款常用的电子元件,包括计时电路、显示屏和按键等。
然后,我们根据设计要求,进行了电路连接和程序编写。
接着,我们对设计的电子秒表进行了一系列的实验,包括准确性测试、稳定性测试和耐用性测试等。
实验结果:经过实验验证,我们设计的电子秒表具有较高的准确性和稳定性。
在准确性测试中,我们对比了设计的电子秒表与标准秒表的计时结果,发现两者基本一致。
在稳定性测试中,我们对设计的电子秒表进行了长时间计时,结果显示其计时稳定性良好。
在耐用性测试中,我们对设计的电子秒表进行了反复按键操作,发现其按键灵敏度和耐用性均符合设计要求。
结论:通过本实验,我们成功设计了一款简单易用的电子秒表,并验证了其准确性和稳定性。
该电子秒表具有较高的性能表现,能够满足实际使用需求。
未来,我们将进一步改进设计,提高电子秒表的功能和性能,以满足更广泛的应用需求。
致谢:感谢实验室的老师和同学们对本实验的支持和帮助,感谢他们的耐心指导和建设性意见。
同时,也感谢所有参与本实验的人员,他们的辛勤劳动为本实验的顺利进行提供了保障。
单片机秒表实验报告
单片机秒表实验报告实验目的:本实验旨在通过使用单片机搭建一个简单的秒表,掌握单片机的基本输入输出方法和定时器的使用,提高对单片机的编程能力。
实验器材:1. STC89C52单片机开发板2. 4位共阳数码管3. 74HC595移位寄存器4. 按钮开关5. 连接线实验原理:秒表是一种测量时间的工具,通常用于计时。
在本实验中,我们将使用单片机来实现一个简单的秒表功能。
通过使用定时器中断,每隔一定的时间更新数码管上显示的时间,实现秒表的计时功能。
同时,通过按下按钮开关,可以控制秒表的启动、暂停和复位。
实验步骤:1. 将STC89C52单片机开发板与4位共阳数码管、74HC595移位寄存器和按钮开关连接。
2. 将开发板上的相应引脚与数码管和移位寄存器的引脚连接,确保连接正确。
3. 在单片机的主函数中初始化定时器和外部中断,并设置定时器的中断时间为1秒。
4. 在定时器中断函数中,每隔1秒更新数码管上的显示时间。
可以使用循环方式实现时间的累加和更新。
5. 在外部中断函数中,根据按钮开关的状态,实现秒表的启动、暂停和复位功能。
6. 编译、下载程序到单片机开发板,并将开发板上电。
7. 按下按钮开关开始计时,再次按下暂停计时,再次按下继续计时,再次按下复位计时。
8. 观察数码管上显示的时间是否正确,并测试秒表功能是否正常。
实验结果:经过测试,本实验搭建的单片机秒表功能正常,能够准确计时,并可以通过按钮开关实现启动、暂停和复位功能。
结论:通过本实验,我们成功地使用单片机搭建了一个简单的秒表,并实现了基本的计时功能。
同时,通过掌握单片机的定时器和外部中断的使用,我们提高了对单片机的编程能力。
这对于进一步深入学习和应用单片机具有重要的意义。
秒表设计报告
实验设计报告题目:专业:姓名:目录一、绪论 (3)二、课程设计任务与要求 (3)三、实验设计所需硬件 (4)四、实验设计原理图 (4)五、汇编实验程序 (5)六、实物图照片 (8)参考文献 (9)单片机秒表实验报告一、绪论秒表计时器是电器制造,工业自动化控制、国防、实验室及科研单位理想的计时仪器,它广泛应用于各种继电器、电磁开关,控制器、延时器、定时器等的时间测试。
在现在的体育竞技比赛中,随着运动员的水平不断提高,差距也在不断缩小。
有些运动对时间精度的要求也越来越高,有时比赛冠亚军之间的差距只有几毫秒,因此就需要高精度的秒表来记录成绩。
二、课程设计任务与要求(1)让一只LED灯自由闪烁(即间歇式亮灭)。
(2)让数码管的低两位显示一个两位数50。
(3)使用一按键控制上述数字的加1,每按一下数字加1,当加到59时,再按一下,则从0开始,即在0到59循环加。
(4)使用另一按键控制上述数字的减1,每按一下数字减1,当减到0时,再按一下,则从59开始,即在0到59循环减。
(5)做一顺时计时秒表,以一秒为单位计时,分和秒之间用一小数点作间隔(6)用一个按键控制该计时秒表的暂停与继续,另一个按键使秒表复位(即数码管归位到0)。
(7)能用按键设定某一时刻,当计时到达这一时刻时,LED灯闪烁,且秒表停止变为0。
三、实验设计所需硬件6 脚自锁式开关1 个STC89C52 1 个74HC573H 1 个20 脚芯片座子1 个MAX232 1 个16 脚芯片座子1 个9 针串口公头1 个晶振12M 1 个电解电容10uF 6 个瓷片电容30pF 2 个共阴数码管 1 个40 脚芯片座子1 个按键 5 个电阻10k欧 2 个电阻500欧 1 个四、实验设计原理图五、汇编实验程序#include<reg52.h>#define uchar unsigned charcode uchar tab[]= {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; //共阴数码管0-9 uchar miao,num=51,count,smg,m ,mshi,mge,fshi ,fge;sbit key1 = P1^4; //控制秒钟加sbit key2 = P1^5; //控制秒钟减sbit key3 = P1^6; //控制按键切换sbit key4 = P1^7; //控制分钟加减sbit led = P2^0; //控制LED等闪烁sbit P1_0 = P1^0; //控制第一位数码管sbit P1_1 = P1^1; //控制第二位数码管sbit P1_2 = P1^2; //控制第三位数码管sbit P1_3 = P1^3; //控制第四位数码管void delay(uint z) //延时函数,z的取值为这个函数的延时ms数,如delay(200);大约延时ms.{ //delay(500);大约延时ms.uint x,y;for(x=z;x>0;x--)for(y=110;y>0;y--);}EA = 1;TMOD= 0X11;TH0 = 0X3C;TL0 = 0XB0;TH1 = 0X3C;TL1 = 0XB0;ET0 = 1;TR0 = 1;ET1 = 1;void TIME0() interrupt 1{TH0=(65535-50000)/255;TL0=(65535-50000)%255;count++;if(count==20){ count=0;num++;}if(num==60)num=0;}void display(uchar num) {P1=0xff;P1_2=0;P0=tab[num%10];delay(1);P1=0xff;P1_1=0;P0=tab[num/10];delay(1);P1=0xff;}void keyscanf(){if(key1==0){delay(20);if(key1==0);{num++;if(num==59)num=0;while(!key1);}}if(key2==0){delay(20);if(key2==0);{num--;if(num==-1)num=59;while(!key2);}}if(key3==0){delay(20);if(key3==0);{ss++;if(ss%2==1)TR0=1;elseTR0=0;while(!key3);}}if(key4==0){delay(20);if(key4==0);num=0;while(!key4);}}void stopwatch(){TR1 = 1;if(m == 20){m = 0;smg++;if(smg == 60){smg = 0;num++;if(num == 60)num = 0;}mshi = smg/10;mge = smg%10;fshi = num/10;fge = num%10;}}void main(){TIME0init();while(1){keyscanf();display(num);}}六、实物图照片参考文献[1]张毅刚主编.《单片机原理及应用》.高教出版社.2003[2] 严洁主编,《单片机原理及其接口技术》机械工业出版社.2010[3] 申忠如主编,《MCS-51单片机原理及系统设计》西安交通大学出版社.2008。
简易数字秒表的设计
简易数字秒表的设计简易数字秒表的设计⼀、实验⽬的1、设计⼀个显⽰范围为24⼩时60分钟60秒的简易数字秒表。
2、掌握动态扫描电路的设计⽅法。
⼆、实验原理1、能进⾏正常的时、分、秒计时功能,分别由6个数码管显⽰24⼩时、60分钟、60秒钟的计数器显⽰。
2、能利⽤实验系统上的按键实现“校时”“校分”功能:⑴按下“SA”键时,计时器迅速递增,并按24⼩时循环,计满23⼩时后回“00”;⑵按下“SB”键时,计分器迅速递增,并按59分钟循环,计满59分钟后回“00”,但不向“时”进位;⑶按下“SC”键时,秒清零;⑷要求按下“SA”、“SB”或“SC”时均不产⽣数字跳变(SA”、“SB”、“SC”按键是有抖动的,必须对其消除抖动处理)。
3、能利⽤扬声器做整点报时:⑴当计时到达59分50秒时开始报时,在59分50秒、52秒、54秒、56秒、58秒鸣叫,鸣叫声频率可定为500Hz;⑵到达59分60秒时为最后⼀声整点报时,整点报时频率可定为1KHz。
三、实验内容1、⽤VHDL语⾔编程设计简易数字秒表(VHDL程序代码可附在实验报告后⾯)。
2、锁定引脚并下载验证结果。
四、实验结果1、程序代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY TIMES ISPORT(CLK:IN STD_LOGIC;START,CLR:IN STD_LOGIC;DOUT:OUT STD_LOGIC_VECTOR(23 DOWNTO 0));END TIMES;ARCHITECTURE ART OF TIMES ISSIGNAL SECOND,MINUTES,HOURS:STD_LOGIC_VECTOR(7 DOWNTO 0); SIGNALSEC_CO,MIN_CO,HOU_CO:STD_LOGIC;BEGIN-------------------------------------------------------秒计数处理进程SEC:PROCESS(CLK,CLR)BEGINIF CLR='1' THEN SECOND(7 DOWNTO 0)<="00000000";ELSIF CLK'EVENT AND CLK='1' THENIF START='1' THENSECOND(3 DOWNTO 0)<=SECOND(3 DOWNTO 0)+1;IF SECOND(3 DOWNTO 0)="1001" THENSECOND(3 DOWNTO 0)<="0000";SECOND(7 DOWNTO 4)<=SECOND(7 DOWNTO 4)+1; END IF;IF SECOND(7 DOWNTO 0)="10011001" THENSECOND(7 DOWNTO 0)<="00000000"; SEC_CO<='1';ELSE SEC_CO<='0'; END IF;END IF;END IF;END PROCESS SEC;--------------------------------------------------------分钟计数处理进程MIN:PROCESS(SEC_CO,CLR)BEGINIF CLR='1' THEN MINUTES(7 DOWNTO 0)<="00000000";ELSIF SEC_CO'EVENT AND SEC_CO='1' THENMINUTES(3 DOWNTO 0)<=MINUTES(3 DOWNTO 0)+1;IF MINUTES(3 DOWNTO 0)="1001" THENMINUTES(3 DOWNTO 0)<="0000";MINUTES(7 DOWNTO 4)<=MINUTES(7 DOWNTO 4)+1; END IF;IF MINUTES(7 DOWNTO 0)="01011001" THENMINUTES(7 DOWNTO 0)<="00000000";MIN_CO<='1';ELSEMIN_CO<='0';END IF;END IF;END PROCESS MIN;---------------------------------------------------------⼩时计数处理进程HOU:PROCESS(MIN_CO,CLR)BEGINIF CLR='1' THEN HOURS(7 DOWNTO 0)<="00000000";ELSIF MIN_CO'EVENT AND MIN_CO='1' THENHOURS(3 DOWNTO 0)<=HOURS(3 DOWNTO 0)+1;IF HOURS(3 DOWNTO 0)="1001" THENHOURS(3 DOWNTO 0)<="0000";HOURS(7 DOWNTO 4)<=HOURS(7 DOWNTO 4)+1;END IF;IF HOURS(7 DOWNTO 0)="00010011" THENHOURS(7 DOWNTO 0)<="00000000";HOU_CO<='1';ELSE HOU_CO<='0'; END IF;END IF;END PROCESS HOU;DOUT<=HOURS&MINUTES&SECONDEND ART;2、画出仿真波形图。
电子秒表的设计实验报告
电子秒表的设计实验报告电子秒表的设计实验报告一、引言在现代科技高度发达的社会中,电子秒表作为一种常见的计时工具,被广泛应用于各个领域。
本次实验旨在设计一个简单且实用的电子秒表,通过实际操作和数据分析,探索电子秒表的原理和功能。
二、实验目的1. 了解电子秒表的基本原理和结构;2. 掌握电子秒表的设计方法和实验操作;3. 分析电子秒表的精度和稳定性。
三、实验材料与方法1. 实验材料:电子元件、电路板、电源、计算机等;2. 实验方法:a. 按照电子秒表的设计要求,搭建电路;b. 连接电源,启动电子秒表;c. 进行计时实验,记录数据;d. 分析实验结果。
四、实验步骤1. 设计电路图:根据电子秒表的功能需求,设计电路图,并确保电路的稳定性和可靠性。
2. 搭建电路:根据电路图,将电子元件连接到电路板上,并进行焊接。
3. 连接电源:将电路板与电源连接,确保电子秒表正常工作。
4. 启动电子秒表:按下启动按钮,开始计时。
5. 进行计时实验:使用标准计时器,同时启动电子秒表和标准计时器,进行时间对比。
6. 记录数据:记录电子秒表和标准计时器的计时结果,并计算误差。
7. 分析实验结果:比较电子秒表和标准计时器的计时精度和稳定性,分析实验结果的可靠性。
五、实验结果与分析通过多次实验,记录了电子秒表和标准计时器的计时结果,并计算了误差。
实验结果显示,电子秒表的计时误差较小,精度和稳定性较高,能够满足实际使用的需求。
然而,由于实验条件的限制,电子秒表的计时精度仍有进一步提高的空间。
六、实验总结本次实验成功设计了一个简单实用的电子秒表,并通过实验验证了其计时精度和稳定性。
电子秒表作为一种常见的计时工具,在科学研究、体育竞技等领域具有广泛的应用前景。
然而,电子秒表的设计和制造仍需不断改进,以提高其计时精度和稳定性。
七、改进方向1. 优化电路设计:通过改进电路结构和选用更好的电子元件,提高电子秒表的计时精度和稳定性。
2. 加强测试和校准:定期对电子秒表进行测试和校准,确保其计时结果的准确性。
单片机秒表实验报告
单片机秒表实验报告单片机秒表实验报告引言在现代科技快速发展的时代背景下,单片机作为一种重要的电子元器件,被广泛应用于各个领域。
秒表作为测量时间的工具,在运动、实验、比赛等场景中起到了至关重要的作用。
本实验旨在通过使用单片机设计和制作一个简单的秒表,探索单片机在时间测量方面的应用。
实验原理秒表的原理基于计时器的工作原理。
计时器通过内部的计数器来记录时间,当计数器达到设定值时,会触发中断,从而实现时间的测量和显示。
在本实验中,我们使用8051系列单片机,通过编程设置计数器的初始值和中断触发条件,实现秒表的功能。
实验步骤1. 硬件设计首先,我们需要准备一个适当的电路板,用于连接单片机、显示器和按键等元件。
在电路板上,我们将单片机与显示器和按键进行连接,以实现数据的输入和输出。
同时,我们需要添加一个晶振电路,以提供单片机的时钟信号。
2. 软件设计在软件设计方面,我们需要使用汇编语言或C语言来编写单片机的程序。
程序的主要功能包括初始化、计时、显示和中断处理等。
在初始化阶段,我们需要设置计数器的初始值和中断触发条件。
在计时阶段,我们需要不断地读取计数器的值,并将其转换为秒、分、时等形式进行显示。
同时,我们还需要编写中断处理函数,以响应中断并更新计时器的值。
3. 实验验证在完成硬件和软件设计后,我们可以进行实验验证。
首先,我们将电路板连接到电源,并确保电路正常工作。
然后,我们可以通过按下按键来启动和停止秒表。
在启动状态下,秒表会不断地更新显示,并实时计算经过的时间。
在停止状态下,秒表会保持显示当前的时间。
实验结果经过实验验证,我们成功地设计和制作了一个简单的秒表。
秒表能够准确地测量时间,并将其以易于理解的形式进行显示。
同时,秒表还具备启动和停止功能,方便用户根据需要进行时间测量。
实验总结通过本次实验,我们深入了解了单片机在时间测量方面的应用。
通过合理的硬件设计和编程,我们成功地实现了一个简单而实用的秒表。
在实验过程中,我们不仅学习了单片机的工作原理和编程技巧,还培养了动手实践和解决问题的能力。
数字秒表设计总结报告
数字秒表课程设计总结报告一、课题名称数字秒表设计二、内容摘要本实验要求设计一个计数范围在0.0—9.9秒的数字秒表。
电路设计基本包括0.1秒脉冲发生器,信号控制端,整形电路,计数电路,译码电路和显示器这几部分构成。
0.1秒脉冲发生器由555定时器构成的多谐振荡电路实现,由3端口接入计数器的时钟端。
信号控制端由RS触发器实现,能够对整个电路进行清零、计数、停止和复位的作用。
整形电路有单稳态触发器构成,对RS触发端输出的信号进行整形,但不改变其逻辑符号。
本实验的技术器由两个十进制BCD码74LS160级联而成。
在计数器的四个输出端分别接译码器的四个置数端,译码器由74LS48实现。
这个电路设有两个开关K1,K2,通过K1,K2的置0和置1来实现对电路的清零、计数、暂停、复位的控制。
这样,一个简易的数字秒表便设计完成了。
三、课题任务,指标,功能要求课题任务:用中小规模集成电路设计一个数字秒表。
指标:计数范围在0.0—9.9秒之间。
功能要求:有清零、计数、停止和复位的功能。
四、单元框图五、单元电路设计,参数计算,元器件选择1、0.1秒脉冲发生器:参数计算:T=0.7(Ra+2Rb)C555定时器构成多谐振荡器,其芯片功能表如下:TH TR非R非OUT DISX X L L 导通>2/3Vcc >1/3Vcc H L 导通<2/3Vcc >1/3Vcc H 原状态原状态<2/3Vcc <1/3Vcc H H 关断注明:6脚为THR,触发器输入端,低电平有效。
2脚为TRI,阀值输入端,高电平有效。
4脚为RST,总复位端,低电平有效。
7脚为DIS,放电端。
5脚为CON,控制端。
1脚接地,8脚接电源。
3脚为输出端。
TD为内部三极管。
其管脚图如下所示:2、信号控制端,RS触发器,实现对这个电路的清零、计数、停止、复位功能。
RS触发器,其功能表如下:Rd非Sd非Q n+1Q n+1非1 1 Q n Q n非0 1 0 11 0 1 00 0 1* 1*注:RS触发器可由导线与74LS00二输入与非门构成Rd非和Sd非都为1时,基本RS触发器实现信号保持功能,即Q n+1=Q n,Q n+1非=Q n非;当Rd非=0时,基本RS触发器直接置零;当Sd非=0时,基本RS触发器置1.3、计数器用74LS160实现:输入输出CP Rd非LD非EP ET A B C D QA QB QC QD ×L ×××××××L L L L ↗H L ×× A B C D A B C D ×H H L ×××××保持×H H ×L ××××保持↗H H H H ××××计数↗H L ××L L L L L L L L 注:当Rd非=0时,计数器清零;当Rd非=1,LD非=0时,计数器预置数;当前两者都为1,EP或ET为0时,计数器有保持功能;当四者全为1时,计数器进行计数功能。
秒表 实验报告
秒表实验报告秒表实验报告一、引言秒表是一种常用的计时工具,广泛应用于科学实验、体育竞技、工业生产等领域。
本次实验旨在通过使用秒表进行计时,探究其精确度和可靠性,并对实验结果进行分析和讨论。
二、实验方法1. 实验材料:秒表、实验器材(如小球、弹簧等)。
2. 实验步骤:a. 准备实验器材,并将秒表置于易于观察的位置。
b. 进行实验前的校准,确保秒表的准确性。
c. 进行实验,使用秒表记录实验过程中的时间。
d. 重复实验多次,以提高结果的可靠性。
e. 记录实验数据,并进行数据分析。
三、实验结果在本次实验中,我们进行了多个实验项目,包括计时小球下落时间、测量弹簧振动周期等。
以下是实验结果的一部分:1. 计时小球下落时间:实验1:0.82秒实验2:0.83秒实验3:0.81秒2. 测量弹簧振动周期:实验1:1.24秒实验2:1.26秒实验3:1.25秒四、数据分析通过对实验结果的观察和分析,我们可以得出以下结论:1. 在同一实验条件下,多次重复实验的结果相对稳定,显示了秒表的可靠性。
2. 实验结果的微小差异可能是由于实验器材的误差或操作的不精确造成的。
3. 秒表的精确度可能受到外界因素的干扰,如温度、湿度等。
五、讨论与改进1. 在实验过程中,我们注意到秒表的操作要求较高,需要手指的灵敏度和反应速度。
因此,操作者的技巧和经验对实验结果可能产生一定影响。
2. 为了提高实验结果的准确性,可以采取以下改进措施:a. 使用更高精度的秒表,以减小误差。
b. 进行更多次的重复实验,以提高结果的可靠性。
c. 控制实验环境的稳定性,减少外界因素的干扰。
d. 提高操作者的技能水平,以减少人为误差的发生。
六、结论通过本次实验,我们对秒表的精确度和可靠性有了更深入的了解。
秒表作为一种常用的计时工具,在科学实验和其他领域中具有重要的应用价值。
然而,我们也认识到实验结果的准确性受到多种因素的影响,需要在实验设计和操作过程中进行合理的控制和改进。
数字秒表设计实验报告
数字秒表设计实验报告数字秒表设计实验报告1. 引言•简要介绍实验的目的和意义2. 设计原理•介绍数字秒表的基本原理和工作流程3. 实验步骤•列出实验的具体步骤和操作流程4. 实验结果分析•分析实验过程中的数据和观测结果•对实验结果进行解释和讨论5. 实验结论•给出实验的总结和结论6. 实验改进•提出对实验的改进建议和优化方案7. 参考资料•引用相关的文献和资料来源8. 附录•将实验过程中的数据、图表等附加在文末作为附录以上为一个大致的框架,具体内容根据实验的实际情况进行填写。
本实验报告使用Markdown格式,通过使用标题和列表等语法,使文章更加清晰易读。
注意,为了遵守规则,本文中不包含实际的字母、图片或网址。
希望这份指导对你有所帮助!数字秒表设计实验报告1. 引言•实验目的:本实验旨在设计一个数字秒表,用于测量时间,并掌握数字电路的设计原理和实践技能。
•实验意义:准确测量时间是科学研究和生产实践中的重要要求,数字秒表作为计时测量的常用工具,具有广泛的应用价值。
2. 设计原理•数字秒表的基本原理是利用稳定的时钟信号源产生时间基准,通过计数器、时钟分频电路和显示模块实现对时间的测量和显示。
3. 实验步骤1.首先确定秒表的最高位数,根据实际需求选择适当的位数。
2.设计计数器电路,使用计数器芯片进行计数,根据最高位数确定计数器的范围。
3.设置时钟分频电路,通过将时钟信号分频得到适合计数器工作的时钟频率。
4.连接计数器和时钟分频电路,确保二者能够正确配合。
5.设计显示模块,将计数器的输出转换为数字形式,用于显示具体的时间数值。
6.连接显示模块和计数器,进行正确的信号传递和信息显示。
7.进行测量和验证,检查秒表的测量准确性并进行调整。
4. 实验结果分析•对实验过程中的数据和观测结果进行分析•通过比较测量结果与标准时间的差异,评估秒表的准确性•分析秒表存在的潜在问题并提出解决方案5. 实验结论•总结实验设计和实验过程•归纳出实验结果和分析的要点•得出对设计的数字秒表的结论,包括准确性、可靠性和实用性等方面的评价6. 实验改进•针对实验中发现的问题,提出改进的建议和优化方案•探讨可能的改进措施,包括电路设计、算法优化、显示方式等方面的改进7. 参考资料•[1] 电子技术实验教程,XXX出版社•[2] 数字电路原理与设计,XXX出版社8. 附录•实验数据表格•电路图和连接图•实验中使用的元器件清单以上为数字秒表设计实验报告的大致框架,实验的具体内容和结果分析部分需要根据实际情况进行填写。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实 验 报 告
系别 信工系 专业 班级 姓名 学号
简易秒表设计
实验目的:
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<>
#define uint unsigned int
#define uchar unsigned char
sbit key1=P3^0; //定义"启动"按钮
sbit key2=P3^1; //定义"停止"按钮
sbit key3=P3^2; //定义"复位"按钮
sbit wei1=P2^6; //定义位选
sbit wei2=P2^7;
uchar aa;uchar temp;uchar shi;uchar ge;
uchar code table[]={
0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71}; //共阴极数码真值表void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
void display(uchar shi,uchar ge) //显示子程序
{
shi=temp/10;
ge=temp%10; //分离个位和十位
wei1=0; //送位选
P0=table[shi];//使用动态扫描的方法实现数码管显示
delay(1);
wei1=1; //关闭位选
wei2=0;
P0=table[ge];
delay(1);
wei2=1;
}
void init() //初始化程序
{
aa=0;
temp=0;
TMOD=0x01; //使用定时器T0的方式1
TH0=0x4c;
TL0=0x00; //定时50ms中断一次
EA=1; //终端总允许
ET0=1; //允许定时器T0中断
}
void timer0() interrupt 1
{
TH0=0x4c; //重装初值
TL0=0x00;
aa++; //中断计数值加1
if(aa==20) //中断20次后,定时时间为20*50ms=1000ms=1s
{
aa=0;
temp++;
if(temp==60) //秒表到达60s后回零
{
temp=0;
}
}
}
void main()
{
init(); //调用初始化子程序
while(1)
{
if(key1==0) //检验启动按钮是否按下
{
delay(10);//延时去抖动
if(key1==0);//再次检测启动按钮
{
while(!key1);//松手检测
TR0=1; //启动定时器开始工作
}
}
if(key2==0) //
{
delay(10);
if(key2==0)
{
while(!key2);
TR0=0;
}
}
if(key3=0)
{
delay(10);
if(key3==0)
{
while(!key3);
temp=0;
shi=0;
ge=0;
TR0=0;
}
}
display(shi,ge);
}
}
实验结果:
在proteus中编写程序,编译调试后生成hex文件,将hex文件加到仿真电路中,通过对简易秒表进行演示,达到设计要求。
实验心得:
在keil软件中,即使程序不会需要模仿别人的时候,也必须通过自身再打一遍程序,在多次的通过打印过程,渐渐记住并理解程序,也有助于我们以后的程序创新。
内容:实验题目;实验目的;实验原理;实验步骤;数据处理;结果分析
年月日分数。