数字钟实验报告
数字钟实训报告心得体会(模板20篇)

数字钟实训报告心得体会(模板20篇)心得体会是我们在实践中领悟到的感悟和体验,能够帮助我们更好地理解和应用所学知识。
接下来,小编为大家分享一些优秀的心得体会范文,供大家参考和借鉴。
数字秒表实训报告心得体会第一段:引言(150字)。
数字秒表实训是我在大学期间参与的一次实践课程。
通过这次实训,我学到了很多有关数字秒表的知识和技巧,并且深刻体会到了数字秒表在实际生活中的重要性和应用价值。
在这篇报告中,我将分享我的实训经历,以及对数字秒表实训的心得体会。
第二段:实训内容与过程(250字)。
在实训开始之前,我们首先了解了数字秒表的基本原理和功能。
我们学习了数字秒表的设计和制造过程,以及如何使用它来测量时间。
然后,我们分为小组,每个小组负责设计一个数字秒表的实训项目。
在设计过程中,我们要考虑到秒表的准确性、易操作性和实用性。
我们通过分析市场需求和用户群体的需求,进行了多次修改和改进。
最后,我们使用传感器、电池和显示屏等部件,将设计好的秒表制成实物,并进行了功能测试。
第三段:实训收获(300字)。
通过这次实训,我深刻认识到了数字秒表在生活中的重要性。
它不仅可以为人们提供准确的时间测量,还可以用于运动训练、科学实验、竞技比赛等领域。
在实训过程中,我学习到了团队合作的重要性。
每个小组成员都有不同的专业背景和技能,我们通过充分的讨论和合作,最终实现了一个功能完善的数字秒表。
这次实训也锻炼了我的动手能力和解决问题的能力,提高了我的实践技能和创新意识。
第四段:实训反思(250字)。
在实训过程中,我也遇到了一些挑战。
首先是时间管理方面的问题,由于实训的时间紧张,我们需要合理安排时间,确保每个阶段都能够顺利进行。
其次是技术问题,数字秒表的设计和制造需要一定的专业知识和技能,我们需要不断学习和改进,以提高实训成果的质量和实用性。
最后是团队协作方面的问题,每个小组成员都有自己的观点和想法,我们需要协商一致,充分发挥每个人的优势,才能最终成功完成实训项目。
数字钟实验报告_4

华中科技大学《电子线路设计、测试与实验》实验报告实验名称: 多功能数字钟设计院(系): 自动化学院专业班级:实验成绩:****: ***2014 年6 月11 日一、实验目的1.掌握可编程逻辑器件的应用开发技术, 设计输入、编译、仿真和器件编程;2.熟悉EDA软件使用;3.掌握Verilog HDL设计方法;4.分模块、分层次数字系统设计二、实验器材QUARTUS II软件PC DEO实验板三、实验要求1.能显示小时、分钟、秒钟(小时以24进制,时、分用显示器, 秒用LED)2.能调整小时、分钟的时间3.复位四、实验原理五、程序设计过程数字钟由2个60进制计数器和1个24进制计数器和4个译码器共7个模块构成,3个计数器公用一个时钟信号CP。
2个选择器分别用于选择分计数器和时计数器的使能控制信号,对时间进行校正时,在控制器的作用下,使能信号接高电平,此时每来一个时钟信号,计数器加一计数,从而实现对小时和分钟的校正.正常计时时,使能信号来自低位计数器的输出,即秒计数器达到59秒时,产生输出信号使分计数器加1,分秒计数器同时计到最大值时即59分59秒时,产生输出信号使小时计数器加一。
1.顶层模块:module clock (led0, led1, led2, led3, led_sec, _50mhzin, adjminkey, adjhrkey, ncr, h12, hour12);input _50mhzin;input adjminkey, adjhrkey;input h12;input ncr;output [6:0]led0, led1, led2, led3;wire [7:0] led_a, led_b;wire _1hz, _1khz, _5hz;wire [7:0] hour, minute, second, set_hr, set_min;output hour12;wire h12;output [7:0]led_sec;assign hour12 = h12;divided_frequency u0(_1hz,ncr,_50mhzin);top_clock u1(hour, minute, second, _1hz, ncr, adjminkey, adjhrkey, _50mhzin);display u2(_50mhzin, _5hz, ncr, led_a, led_b, led_sec, hour, minute, second,h12);SEG7_LUT u3(led_a[7:4], led3);SEG7_LUT u4(led_a[3:0], led2);SEG7_LUT u5(led_b[7:4], led1);SEG7_LUT u6(led_b[3:0], led0);endmodule2.分频模块:module divided_frequency(_1hzout,ncr,_50mhzin);input _50mhzin, ncr;output _1hzout;supply1 vdd;wire[11:0] q;wire _1khzin;wire en1, en2;divfreq50M_1Khz du00(_1khzin, ncr, _50mhzin);//先调用1khz分频counter10 du0(q[3:0], ncr, vdd, _1khzin);counter10 du1(q[7:4], ncr, en1, _1khzin);counter10 du2(q[11:8], ncr, en2, _1khzin);//再调用三个10计数器,将1khz分为1hzassign en1=(q[3:0] == 4'h9);assign en2=(q[7:4] == 4'h9) && (q[3:0] == 4'h9);assign _1hzout = q[11];assign _500hzout = q[0];endmodule3.时钟运行模块module top_clock(hour, minute, second, _1hz, ncr, adjminkey, adjhrkey, _50mhzin);input _1hz, _50mhzin, ncr, adjminkey, adjhrkey;output [7:0] hour, minute, second;wire [7:0] hour, minute, second;//时、分、秒每个用八位二进制表示两位BCD 码supply1 vdd; //高电平, 是使能一直打开wire mincp, hrcp, _5hz;//_5hz用于快速校时divfreq50M_5hz ut0(_5hz, ncr, _50mhzin);counter60 ut1(second, ncr, vdd, _1hz);counter60 ut2(minute, ncr, vdd, ~mincp);//秒和分使用60进制counter24 ut3(hour[7:4], hour[3:0], ncr, vdd, ~hrcp);//时钟为24进制(默认)assign mincp = adjminkey ? _5hz : (second==8'h59);assign hrcp = adjhrkey? _5hz : ({minute,second}==16'h5959);//进位或校时使能控制endmodule4.显示模块:module display(_50mhz,_5hz,cr,led_a,led_b,led_sec,hour,minute,second,h12);input [7:0]hour,minute,second;//时分秒input _50mhz,cr,_5hz;output [7:0]led_a,led_b,led_sec;//数码管显示缓存input h12;//12,24小时制切换reg [7:0]led_a,led_b,led_sec;reg [2:0]mod;//模式变量always@(posedge _50mhz)beginled_b=minute;led_sec=second;//模式0,显示时分秒if(~h12)beginled_a=hour;led_b=minute;led_sec=second;endelsebegincase(hour)8'h13,8'h14,8'h15,8'h16,8'h17,8'h18,8'h19,8'h22,8'h23,8'h24:led_a=hour-8'h12;8'h20:led_a=8'h08;8'h21:led_a=8'h09;default:led_a=hour;endcaseend//12/24小时切换,24到12,相应BCD码减endendmodule5.数码管操作模块module SEG7_LUT (iDIG,oSEG);input [3:0] iDIG;output [6:0] oSEG;reg [6:0] oSEG;always @(iDIG)begincase(iDIG)4'h1: oSEG = 7'b1111001; // ---t----4'h2: oSEG = 7'b0100100; // | |4'h3: oSEG = 7'b0110000; // lt rt4'h4: oSEG = 7'b0011001; // | |4'h5: oSEG = 7'b0010010; // ---m----4'h6: oSEG = 7'b0000010; // | |4'h7: oSEG = 7'b1111000; // lb rb4'h8: oSEG = 7'b0000000; // | |4'h9: oSEG = 7'b0010000; // ---b----4'ha: oSEG = 7'b0001000;4'hb: oSEG = 7'b0000011;4'hc: oSEG = 7'b1000110;4'hd: oSEG = 7'b0100001;4'he: oSEG = 7'b0000110;4'hf: oSEG = 7'b0001110;4'h0: oSEG = 7'b1000000;endcaseendendmodule六、功能仿真1.六进制2.十进制3.六十进制(分了几张图截图)4.24进制5.异步清零仿真6.正常计时仿真秒计时●分计时●小时计时23:59:59秒返07 手动校小时和分钟仿真ADJHrKey 与AdjMinKey均为高电平有效,七、思考题1.什么是分层次的电路设计方法?叙述分层次设计电路的基本过程.答: 在电路设计中,可以将两个或者多个模块组合起来描述电路逻辑功能,通常称为分层次的电路设计.自顶而下和自底而上是两种常用的设计方法.在自顶而下的设计中,先定义顶层模块,然后再定义顶层模块中用到的子模块.而在自底而上的设计中,底层的各个子模块首先被确定下来,然后将这些子模块组合起来构成顶层模块.2.在用MAX+PLUS II 软件设计数字钟电路时,简述对60进制计数器进行仿真分析的大致过程.若仿真时栅格的大小(GRID SIZE)为0.5ms,设置CP信号时倍率(Multiplied By)为软件默认值1,那么仿真文件的时间至少需要多长才能完整反映计数过程?答: 至少要0.5ms * 60 = 30ms八、试验中遇到的问题与解决办法这次实验主要是Verilog代码的编写和仿真, 在波形的仿真过程中, 有许多操作并不清楚, 尤其是部分功能的波形仿真输出和如何手动调整时钟的波形仿真, 虽然最后有同学帮忙, 但是最后还是操作得很不熟练。
数字钟实习报告总结

实习报告总结:数字钟设计与实现一、实习背景与目的随着现代电子技术的快速发展,数字钟作为一种常见的电子设备,已经被广泛应用于日常生活和工业领域。
本次实习的主要目的是学习和掌握数字钟的设计与实现方法,培养自己的实际动手能力和创新思维能力。
二、实习内容与过程1. 数字钟的设计原理在实习初期,我首先学习了数字钟的设计原理,包括数字电路的基本组成、时钟信号的产生与处理、显示电路的设计等。
通过学习,我了解了数字钟的工作原理和设计思路,为后续的实际操作奠定了基础。
2. 硬件设计在硬件设计方面,我选择了常用的微控制器AT89S52作为数字钟的控制核心。
通过编程,实现了时钟信号的产生、分秒的计数和显示等功能。
同时,我还设计了按键输入电路,以便进行时间设置和调整。
3. 软件编程在软件编程方面,我使用了C语言进行编程。
通过编写程序,实现了数字钟的计时、显示等功能。
在程序设计过程中,我充分运用了所学的算法和编程技巧,提高了自己的编程能力。
4. 系统调试与优化在系统调试阶段,我通过不断测试和调整,发现并解决了数字钟运行中出现的问题。
同时,我对程序进行了优化,提高了数字钟的运行效率和稳定性。
三、实习收获与总结通过本次实习,我收获颇丰。
首先,我掌握了数字钟的设计原理和实现方法,为自己的实际工作积累了宝贵的经验。
其次,我在硬件设计和软件编程方面提高了自己的实际动手能力,为今后的职业发展打下了基础。
最后,我在实习过程中培养了团队协作意识和创新思维能力,对自己的人生发展具有积极意义。
同时,我也认识到自己在本次实习中存在的不足。
例如,在硬件焊接和调试过程中,我对一些细节处理不够到位,导致数字钟运行不稳定。
在今后的工作中,我将更加注重细节,提高自己的动手能力。
总之,本次实习使我受益匪浅。
通过学习和实践,我掌握了数字钟的设计与实现方法,提高了自己的实际动手能力和创新思维能力。
在今后的学习和工作中,我将继续努力,不断提高自己,为实现自己的职业目标奋斗。
大学数字钟实训报告

一、摘要本次实训旨在通过设计和制作一个数字时钟,加深对数字电子技术理论知识的理解,提高动手实践能力。
在实训过程中,我们学习了数字钟的原理、电路设计、元件选择、焊接调试等技能。
最终,我们成功制作出了一个具有时、分、秒显示功能的数字时钟,并通过实际运行验证了其功能。
二、实训目的1. 掌握数字电子钟的原理和设计方法。
2. 熟悉常用数字电路元件的功能和特性。
3. 提高动手实践能力,培养创新意识。
4. 增强团队协作精神,提高沟通能力。
三、实训内容1. 数字钟原理数字钟是一种将时间信息转换为数字信号,并通过数码管显示的电子计时设备。
其基本原理是利用石英晶体振荡器产生稳定的时钟信号,通过计数器进行计数,并通过译码器和数码管显示时间。
2. 电路设计本次实训采用以下电路设计:(1)时钟信号产生:利用555定时器产生1Hz的时钟信号。
(2)秒计数器:采用CD4060计数器,实现秒的计数。
(3)分计数器:采用CD4518计数器,实现分的计数。
(4)时计数器:采用CD4518计数器,实现时的计数。
(5)译码器:采用CD4511译码器,将计数器的输出信号转换为数码管所需的信号。
(6)数码管显示:采用共阴极七段数码管,显示时、分、秒。
3. 元件选择本次实训选用的元件如下:(1)时钟信号产生:555定时器、电阻、电容。
(2)计数器:CD4060、CD4518。
(3)译码器:CD4511。
(4)数码管显示:共阴极七段数码管。
(5)其他元件:电阻、电容、电位器、晶体管、开关等。
4. 焊接调试(1)按照电路图进行元件焊接。
(2)检查电路连接是否正确,并进行初步调试。
(3)调整电位器,使数码管显示正确的时间。
(4)测试电路功能,确保时、分、秒显示准确。
四、实训总结1. 通过本次实训,我们掌握了数字电子钟的原理和设计方法,熟悉了常用数字电路元件的功能和特性。
2. 在实训过程中,我们提高了动手实践能力,培养了创新意识。
3. 团队协作精神得到了加强,沟通能力得到提高。
数字钟 实验报告

数字钟实验报告数字钟实验报告1. 引言数字钟是一种以数字形式显示时间的装置,广泛应用于日常生活中。
本实验旨在通过搭建数字钟电路并进行实际测试,了解数字钟的工作原理和实现方式。
2. 实验材料和方法实验材料:电路板、电子元件(集成电路、电阻、电容等)、数字显示屏、电源、万用表等。
实验方法:按照电路图连接电子元件,将数字显示屏连接到电路板上,接通电源后进行测试。
3. 实验步骤3.1 搭建电路根据提供的电路图,将电子元件按照正确的连接方式搭建在电路板上。
确保连接的准确性和稳定性。
3.2 连接数字显示屏将数字显示屏连接到电路板上的指定位置,注意极性的正确性。
3.3 接通电源将电路板连接到电源上,确保电源的稳定输出。
3.4 进行测试打开电源,观察数字显示屏上的显示情况。
通过调整电路中的元件,如电容和电阻的数值,观察数字显示屏上的时间变化。
4. 实验结果在实验过程中,我们成功搭建了数字钟电路,并进行了多次测试。
通过调整电路中的元件数值,我们观察到数字显示屏上的时间变化。
数字钟准确地显示了当前的时间,并且实时更新。
5. 讨论与分析通过本次实验,我们了解到数字钟的工作原理是通过电路中的集成电路和元件来控制数字显示屏的显示。
数字钟的精确性和稳定性取决于电路的设计和元件的质量。
在实际应用中,数字钟通常会采用更加精确的时钟芯片来保证时间的准确性。
6. 实验总结本次实验通过搭建数字钟电路并进行测试,使我们更加深入地了解了数字钟的工作原理和实现方式。
通过调整电路中的元件,我们观察到数字显示屏上的时间变化,验证了数字钟的准确性和实时性。
在今后的学习和工作中,我们将更加注重电路设计和元件的选择,以提高数字钟的精确性和稳定性。
7. 参考文献[1] 电子技术基础教程,XXX,XXX出版社,2010年。
[2] 数字电路设计与实验,XXX,XXX出版社,2015年。
8. 致谢感谢实验室的老师和同学们对本次实验的支持和帮助。
他们的耐心指导和积极讨论使本次实验取得了圆满成功。
数字钟实验报告5篇范文

数字钟实验报告5篇范文第一篇:数字钟实验报告数字钟实验报告班级:电气信息i类112班实验时间:实验地点:指导老师:目录一、实验目的-----------------3二、实验任务及要求--------3三、实验设计内容-----------3(一)、设计原理及思路3(二)、数字钟电路的设计--------------------------4(1)电路组成---------4(2)方案分析---------10(3)元器件清单------11四、电路制版与焊接---------11五、电路调试------------------12六、实验总结及心得体会---13七、组员分工安排------------19一、实验目的:1.学习了解数码管,译码器,及一些中规模器件的逻辑功能和使用方法。
2.学习和掌握数字钟的设计方法及工作原理。
熟悉集成电路的引脚安排,掌握各芯片的逻辑功能及使用方法了解面包板结构及其接线方法。
3.了解pcb板的制作流程及提高自己的动手能力。
4.学习使用protel软件进行电子电路的原理图设计、印制电路板设计。
5.初步学习手工焊接的方法以及电路的调试等。
使学生在学完了《数字电路》课程的基本理论,基本知识后,能够综合运用所学理论知识、拓宽知识面,系统地进行电子电路的工程实践训练,学会检查电路的故障与排除故障的一般方法锻炼动手能力,培养工程师的基本技能,提高分析问题和解决问题的能力。
二、实验任务及要求1.设计一个二十四小时制的数字钟,时、分、秒分别由二十四进制、六十进制、六十进制计数器来完成计时功能。
2.能够准确校时,可以分别对时、分进行单独校时,使其到达标准时间。
3.能够准确计时,以数字形式显示时、分,发光二极管显示秒。
4.根据经济原则选择元器件及参数;5..小组进行电路焊接、调试、测试电路性能,撰写整理设计说明书。
三、实验设计内容1、设计原理及思路 3.1数字钟的构成数字钟一般由振荡器、分频器、计数器、译码器、显示器、较时电路、报时电路等部分组成,这些都是数字电路中应用最广的基本电路3.2原理分析数字钟实际上是一个对标准频率(1hz)进行计数的计数电路。
电子工艺实习报告数字钟
一、实习背景随着科技的不断发展,电子工艺技术在我国得到了广泛应用。
为了提高自身的实践能力,了解电子工艺的基本原理和应用,我参加了为期一个月的电子工艺实习。
本次实习的主要内容是设计和制作一个数字钟。
二、实习目的1. 熟悉电子工艺的基本原理和操作流程;2. 掌握数字钟的设计和制作方法;3. 提高动手能力和团队合作精神;4. 培养严谨、细致的工作态度。
三、实习内容1. 数字钟的原理及设计数字钟是一种利用电子电路实现计时功能的装置。
它主要由时钟电路、显示电路和电源电路组成。
时钟电路负责产生稳定的脉冲信号,显示电路用于显示时间,电源电路为整个装置提供电能。
(1)时钟电路:采用555定时器产生1Hz的脉冲信号,经过分频电路得到1秒的脉冲信号。
(2)显示电路:采用数码管显示时间,数码管有8个引脚,分别对应8段,通过控制这些引脚的高低电平,可以实现数字的显示。
(3)电源电路:采用稳压电路为整个装置提供稳定的5V电压。
2. 数字钟的制作(1)准备材料:555定时器、电阻、电容、数码管、面包板、导线等。
(2)制作步骤:①按照电路图连接555定时器、电阻、电容等元件;②将数码管插入面包板,连接好数码管的8个引脚;③将电路板插入面包板,连接好各个元件;④调试电路,观察数码管显示的时间是否准确;⑤根据实际情况调整电路参数,确保时间显示准确。
3. 数字钟的调试与改进(1)调试:首先检查电路连接是否正确,然后观察数码管显示的时间是否准确。
若不准确,检查电路参数,进行调整。
(2)改进:为了提高数字钟的显示效果,可以增加以下功能:①设置闹钟功能,在指定时间发出声音提醒;②增加时间调整功能,方便用户调整时间;③优化电路设计,提高稳定性。
四、实习总结通过本次电子工艺实习,我掌握了数字钟的设计和制作方法,提高了自己的动手能力和团队合作精神。
以下是实习过程中的几点体会:1. 理论与实践相结合:在实习过程中,我深刻体会到理论与实践相结合的重要性。
数字时钟实验报告
数字时钟实验报告一、实验目的本次数字时钟实验的主要目的是设计并实现一个能够准确显示时、分、秒的数字时钟系统,通过该实验,深入理解数字电路的原理和应用,掌握计数器、译码器、显示器等数字电路元件的工作原理和使用方法,提高电路设计和调试的能力。
二、实验原理1、时钟脉冲产生电路时钟脉冲是数字时钟的核心,用于驱动计数器的计数操作。
本实验中,采用石英晶体振荡器产生稳定的高频脉冲信号,经过分频器分频后得到所需的秒脉冲信号。
2、计数器电路计数器用于对时钟脉冲进行计数,分别实现秒、分、时的计数功能。
秒计数器为 60 进制,分计数器和时计数器为 24 进制。
计数器可以由集成计数器芯片(如 74LS160、74LS192 等)构成。
3、译码器电路译码器将计数器的输出编码转换为能够驱动显示器的信号。
常用的译码器芯片有 74LS47(用于驱动共阳数码管)和 74LS48(用于驱动共阴数码管)。
显示器用于显示数字时钟的时、分、秒信息。
可以使用数码管(LED 或 LCD)作为显示元件。
三、实验器材1、集成电路芯片74LS160 十进制计数器芯片若干74LS47 BCD 七段译码器芯片若干74LS00 与非门芯片若干74LS10 三输入与非门芯片若干2、数码管共阳数码管若干3、电阻、电容、晶振等无源元件若干4、面包板、导线、电源等四、实验步骤1、设计电路原理图根据实验原理,使用电路设计软件(如 Protel、Multisim 等)设计数字时钟的电路原理图。
在设计过程中,要合理布局芯片和元件,确保电路连接正确、简洁。
按照设计好的电路原理图,在面包板上搭建实验电路。
在搭建电路时,要注意芯片的引脚排列和连接方式,避免短路和断路。
3、调试电路接通电源,观察数码管是否有显示。
如果数码管没有显示,检查电源连接是否正确,芯片是否插好。
调整时钟脉冲的频率,观察秒计数器的计数是否准确。
如果秒计数器的计数不准确,检查分频器的连接是否正确,晶振的频率是否稳定。
自动报时数字钟实训报告
一、实训目的本次实训旨在通过制作一个自动报时数字钟,加深对数字电路原理的理解,提高电子制作技能,并学会使用相关电子元件和设备。
通过本次实训,我们期望达到以下目标:1. 掌握数字电子钟的基本工作原理和电路设计方法。
2. 熟悉数字电路元件的识别、测试和焊接技术。
3. 学会使用数字电路测试仪器,如示波器、逻辑分析仪等。
4. 提高团队合作能力和问题解决能力。
二、实训环境实训地点:电子实验室实训设备:数字电子钟制作套件、万用表、示波器、逻辑分析仪、焊接工具、电源等。
三、实训原理数字电子钟主要由以下几个部分组成:时钟电路、译码电路、显示电路和报时电路。
1. 时钟电路:由晶振、分频器等组成,产生稳定的时钟信号。
2. 译码电路:将时钟电路产生的时钟信号转换为可以驱动显示器的信号。
3. 显示电路:由数码管组成,用于显示时间。
4. 报时电路:在设定的时间触发报时功能,发出声音或灯光提示。
四、实训过程1. 电路设计:根据实训要求,设计数字电子钟的电路图,包括时钟电路、译码电路、显示电路和报时电路。
2. 元件准备:根据电路图,准备所需的电子元件,如晶振、分频器、译码器、数码管、报时模块等。
3. 电路焊接:按照电路图,将元件焊接在电路板上,注意焊接质量,避免短路或虚焊。
4. 电路调试:使用万用表测试电路的电压、电流等参数,确保电路正常工作。
5. 报时功能调试:设置报时时间,测试报时功能是否正常。
6. 测试与验证:使用示波器、逻辑分析仪等测试仪器,对电路进行测试,确保电路功能正常。
五、实训结果经过调试,我们成功制作了一个自动报时数字钟。
该数字钟可以显示时、分、秒,并在设定的时间发出声音或灯光提示。
六、实训总结1. 技术收获:通过本次实训,我们掌握了数字电子钟的基本工作原理和电路设计方法,学会了使用相关电子元件和设备,提高了电子制作技能。
2. 团队合作:在实训过程中,我们进行了团队合作,分工合作,共同完成了实训任务。
3. 问题解决:在实训过程中,我们遇到了一些问题,如电路故障、元件故障等,通过查阅资料、讨论和请教老师,我们成功解决了这些问题。
数字钟电子实习报告
实习报告实习时间:2023年7月1日至2023年7月31日实习单位:XX科技有限公司实习内容:数字钟的设计与制作一、实习目的通过本次实习,我希望能够掌握数字钟的设计原理,了解数字钟的制作流程,提高自己的实际操作能力,培养自己的创新意识和团队协作能力。
二、实习要求1. 熟悉数字钟的设计原理和制作流程。
2. 能够独立完成数字钟的设计和制作。
3. 了解常用电子元器件的性能和使用方法。
4. 具备一定的电路调试和故障排除能力。
三、实习过程1. 设计阶段:在实习的第一周,我们学习了数字钟的设计原理,包括时钟芯片的使用、显示模块的连接、电路图的设计等。
在导师的指导下,我们独立完成了数字钟的设计方案,并进行了讨论和修改。
2. 制作阶段:在实习的第二周,我们开始着手制作数字钟。
我们按照设计方案,选择了合适的电子元器件,进行了电路连接和焊接。
在制作过程中,我们遇到了一些问题,如电路连接错误、元器件损坏等,但在导师的帮助下,我们逐一解决了这些问题。
3. 调试阶段:在实习的第三周,我们开始对制作的数字钟进行调试。
我们使用了调试工具,如万用表、示波器等,对电路进行了检测和调整。
通过不断的调试,我们成功地使数字钟运行起来,并进行了功能测试。
4. 总结与改进:在实习的最后一周,我们对制作的数字钟进行了总结和评估。
我们发现了一些不足之处,如显示模块的亮度不够、时钟精度不够高等。
我们讨论了改进的方法,并提出了一些改进方案,如使用更亮的显示模块、调整时钟频率等。
四、实习收获通过本次实习,我掌握了数字钟的设计原理和制作流程,提高了自己的实际操作能力。
我学会了如何选择合适的电子元器件,进行电路连接和焊接,掌握了调试工具的使用方法,能够对电路进行检测和调整。
在制作过程中,我学会了如何解决问题和团队合作,培养了自己的创新意识和团队协作能力。
五、实习体会通过本次实习,我深刻体会到了理论与实践相结合的重要性。
只有在实际操作中,我们才能真正理解和掌握所学知识。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字电子技术实验报告数字钟设计实验1.设计要求在Xilinx FPGA上实现数字钟。
2.问题分析数字钟Verilog程序采用8421BCD计数,并行在一个模块中实现时钟功能。
时钟主程序可用一个模块来实现,此外还包括有数码管动态显示、初始化、校时、计时和反馈模块。
3.功能描述数字钟cp信号为通过FPGA上集成的主时钟(50MHz)分频得到秒信号,计秒到60时分加1,秒清零,计分到60时,分清零,计时到24时,则全部清零。
数字钟校时模块是通过四个开关进行操作,四个开关分别控制时位和分位,通过长按开关以达到校时的目的。
4.实验程序1)HDL程序//顶层设计module clock(input clk,input en,input key1,input key2,input key3,input key4,output sec,output wire[7:0] seg,output wire[3:0] digit);wire[3:0] num0,mum1,num2,num3;disp u0(clk,num0,mum1,num2,num3,seg,digit);clk_gen u1(clk,en,key1,key2,key3,key4,sec,num0,mum1,num2,num3);endmodule////////////////////////////////////数码管动态显示module disp(input clk,input [3:0] num0,input [3:0] num2,input [3:0] num3,output reg[7:0] sm_seg,output reg[3:0] an);reg[1:0] s;reg[3:0] digit;reg[16:0] clkdiv;always@(*)beginan=4'b1111;//禁止所有数码管显示s<=clkdiv[16:15];//间隔2.6ms使能anan[s]=0;//根据s使能数码管其中之一case(s)//根据s取对应的数码管上要显示的数据0:digit<=num0;1:digit<=num1;2:digit<=num2;3:digit<=num3;default:digit<=num0;endcasecase(digit)//七段译码表,跟书上的其实是一样的,只不过用的是16进制4'h0 : sm_seg = 8'hc0; // "0"4'h1 : sm_seg = 8'hf9; // "1"4'h2 : sm_seg = 8'ha4; // "2"4'h3 : sm_seg = 8'hb0; // "3"4'h4 : sm_seg = 8'h99; // "4"4'h5 : sm_seg = 8'h92; // "5"4'h6 : sm_seg = 8'h82; // "6"4'h7 : sm_seg = 8'hf8; // "7"4'h8 : sm_seg = 8'h80; // "8"4'h9 : sm_seg = 8'h90; // "9"default : sm_seg = 8'hff; // "x"endcaseendalways@(posedge clk)//主时钟计数:50MHz时钟,周期20ns,计数到1FFFFh时长2621420ns,约2.6msclkdiv<=clkdiv+17'd1;endmodule///////////////////////////////////////////初始化module clk_gen(input clk,input en,input bt0,input bt1,input bt3,output reg sec,output [3:0] num0,output [3:0] num1,output [3:0] num2,output [3:0] num3);reg[25:0] ctr;reg[3:0] time[3:0];reg[7:0] s;assign num0=time[0];assign num1=time[1];assign num2=time[2];assign num3=time[3];always@(posedge clk)//产生秒脉冲beginctr<=ctr+26'd1;if(ctr==25000000-1)beginctr<=0;sec<=~sec;endend//wire sen;//assign sen=(sec)|(bt0)|(bt1)|(bt2)|(bt3);always@(negedge sec)//校时阶段if(!en)//使能无效beginif(bt0)begintime[0]<=time[0]+4'd1;if(time[0]==9) time[0]<=0;endelse if(bt1)begintime[1]<=time[1]+4'd1;if(time[1]==5) time[1]<=0;endelse if(bt2)begintime[2]<=time[2]+4'd1;if(time[2]==9) time[2]<=0;endelse if(bt3)begintime[3]<=time[3]+4'd1;if(time[3]==2) time[3]<=0;endif(time[3]==2 && time[2]==3 && bt2 || time[3]==2 && time[2]==3 && bt3)//显示23时,按下左一或左二按钮可回到00begintime[2]<=0;time[3]<=0;endendelse//使能有效,计时阶段begins<=s+1;//s计数,当s从0到59时,计秒得分if(s==59)begins<=0;time[0]<=time[0]+4'd1;if(time[0]==9)begintime[0]<=0;time[1]<=time[1]+4'd1;if(time[1]==5)begintime[1]<=0;time[2]<=time[2]+4'd1;if(time[3]==2 && time[2]==3)begintime[2]<=0;time[3]<=0;endif(time[2]==9)begintime[2]<=0;time[3]<=time[3]+4'd1;endendendendendendmodule2)约束文件#Basys2约束文件NET "clk" LOC = "B8";NET"seg[0]" LOC="L14";NET"seg[1]" LOC="H12";NET"seg[2]" LOC="N14";NET"seg[3]" LOC="N11";NET"seg[4]" LOC="P12";NET"seg[5]" LOC="L13";NET"seg[6]" LOC="M12";NET"seg[7]" LOC="N13";NET "digit[0]" LOC = "F12";NET "digit[1]" LOC = "J12";NET "digit[2]" LOC = "M13";NET "digit[3]" LOC = "K14";NET "key4" LOC = "A7"; # Bank = 2, Signal name = BTN3 NET "key3" LOC = "M4"; # Bank = 2, Signal name = BTN2 NET "key2" LOC = "C11"; # Bank = 2, Signal name = BTN1 NET "key1" LOC = "G12"; # Bank = 2, Signal name = BTN0 NET "en" LOC = "P11"; # Bank = 2, Signal name = sw0NET "sec"LOC="M5";5.实验结果数字钟输入输出与引脚标示数字钟层顶设计图6.实验小结通过此次实验,我基本掌握了Verilog语言的使用,加深了对于数字电子技术、时序逻辑电路的理解,提高了解决问题、分析问题的能力,为后续课程的学习做好了准备。