数字秒表的电路设计1
数字逻辑电路(数电)课程设计_电子秒表_VHDL实现(含完整源代码!!)

电子科技大学UNIVERSITY OF ELECTRONIC SCIENCE AND TECHNOLOGY OF CHINA数字逻辑设计实验报告实验题目:电子秒表学生姓名:指导老师:一、实验内容利用FPGA设计一个电子秒表,计时范围00.00 ~ 99.00秒,最多连续记录3个成绩,由两键控制。
二、实验要求1、实现计时功能:域值范围为00.00 ~ 99.00秒,分辨率0.01秒,在数码管上显示。
2、两键控制与三次记录:1键实现“开始”、“记录”等功能,2键实现“显示”、“重置”等功能。
系统上电复位后,按下1键“开始”后,开始计时,记录的时间一直显示在数码管上;按下1键“记录第一次”,次按1键“记录第二次”,再按1键“记录第三次”,分别记录三次时间。
其后按下2键“显示第一次”,次按2键“显示第二次”,再按2键“显示第三次”,数码管上分别显示此前三次记录的时间;显示完成后,按2键“重置”,所有数据清零,此时再按1键“开始”重复上述计时功能。
三、设计思路1、整体设计思路先对按键进行去抖操作,以正确的得到按键信息。
同时将按键信息对应到状态机中,状态机中的状态有:理想状态、开始状态、3次记录、3次显示、以及其之间的7次等待状态。
因为需要用数码管显示,故显示的过程中需要对数码管进行片选和段选,因此要用到4输入的多路选择器。
在去抖、计时、显示的过程中,都需要用到分频,从而得到理想频率的时钟信号。
2、分频设计该实验中有3个地方需要用到分频操作,即去抖分频(需得到200HZ时钟)、计时分频(需得到100HZ时钟)和显示分频(需得到25kHZ时钟)。
分频的具体实现很简单,需首先算出系统时钟(50MHZ)和所需始终的频率比T,并定义一个计数变量count,当系统时钟的上升沿每来到一次,count就加1,当count=T时就将其置回1。
这样只要令count=1~T/2时clk=‘0’,count=T/2+1~T时clk=‘1’即可。
VHDL数字秒表

数字秒表一设计任务设计用于体育比赛的数字秒表,要求:1.计时精度大于1/1000秒,计时器能显示1/1000秒的时间,提供给计时器内部定时器的时钟频率为10MHz;计时器的最长计时时间为1小时,为此需要一个7位的显示器,显示的最长时间为59分59.999秒。
2.设计复位和起/停开关。
(1)复位开关用来使计时器清零,并做好计时准备。
(2)起/停开关的使用方法与传统的机械式计时器相同,即按一下起/停开关,启动计时器开始计时,再按一下起/停开关时终止。
(3)复位开关可以在任何情况下使用,即使在计时过程中,只要按一下复位开关,计时器进程立即终止,并对计时器清零。
二方案选择与设计方案选择利用VHDL语言进行数字秒表设计有多种方法。
可以利用原件例化语句将各模块联系起来,也可以使用原理图的方法实现此功能,考虑到此次设计中端口众多,使用例化语句繁琐易错,因此采用了条理清晰的绘制原理图的方法生成顶层文件,实现数字秒表功能。
根据上述设计要求,可以预先设计若干个不同进制的计数器单元模块,然后将其进行例化组合来得到数字秒表系统。
要满足数字秒表的精度,首先要获得精确的计时基准信号,这里的系统精度要求为0.001秒,因此必须设置周期为0.001秒的时钟脉冲。
0.001秒、0.01秒、0.1秒、秒、分等计时单位之间的进位转换可以通过不同进制的计数器实现。
设置十进制计数器和六进制计数器,每位计数器均能输出相应计时单位计数结果,其中,十进制计数器可以实现0.01秒、0.1秒、秒、分为单位的计数,六进制计数器可以实现以10秒、10分为单位的计数。
把各级计数器级联,即可同时显示0.001秒、0.01秒、0.1秒、秒、分钟。
级联可分为串行进位方式和并行进位方式。
在串行进位方式中,以低位片的进位输出信号作为高位片的时钟输入信号。
在并行进位方式中,以低位片的进位输出信号作为高位片的工作状态信号(计数的使能信号EN),两片的CLK端同时接计数输入信号。
数电课程设计:电子秒表

数电课程设计:电子秒表
电子秒表是一种常见的计时工具,它通过使用电子元件实现高精度的计时功能。
下面是一个基于数电的电子秒表的设计方案:
1. 运算部分设计:
- 使用一个1Hz的时钟源,可以通过计数器或者振荡器实现。
- 使用一个可重置的二进制计数器,位数根据需要的计时范
围确定。
例如,如果计时范围为1小时,可使用一个4位二进制计数器。
- 计时开始/停止控制逻辑:这可以通过一个开关电路实现,可以使用一个门电路或者触发器电路。
- 计数器重置逻辑:可以使用一个按钮或者开关来重置计数
器的值。
2. 显示部分设计:
- 使用数码管或者液晶显示器来显示计时结果。
数码管可以
使用共阳或者共阴的7段数码管。
- 使用译码器将计数器的二进制输出转换为译码信号,用于
控制数码管显示的数字。
3. 其他功能:
- 可以添加一个暂停功能,通过一个按钮或者开关来实现。
当计时中按下暂停按钮时,计时器会停止计数,再次按下暂停
按钮时,计时器继续计数。
- 可以添加一个拆表功能,通过一个按钮或者开关来实现。
按下拆表按钮时,计时器会记录当前的计时值,然后重置为0,再次按下拆表按钮时,计时器恢复原来的计时状态。
该设计方案中的电子秒表可根据实际需求进行调整和扩展,例如增加更多的功能按钮、调整计时范围和精度等。
同时,需要注意电路的稳定性和可靠性,以及对供电电源和信号的处理。
期末大作业 数字秒表设计

if cnt0="1001" then
co<='1';
cnt0:="0000";
elsif cnt0<"1001" then
cnt0:=cnt0+1;
co<='0';
end if;
else cnt0:=cnt0;
end if;
end if;
secm0<=cnt0;
end process;
time:in std_logic_vector(23 downto 0);
h1,h0,m1,m0,s1,s0:in std_logic_vector(3 downto 0);
qlk:out std_logic);
end nz;
architecture sss_arc of nz is
begin
process(clk)
use ieee.std_logic_unsigned.all;
entity MINUTE is
port(clk,en,clr:in std_logic;
min1,min0:out std_logic_vector(3 downto 0);
co:out std_logic);
end MINUTE;
architecture MIN of MINUTE is
期末大作业数字秒表设计
一、实验任务及要求
设计用于体育比赛用的数字秒表,要求:
1、及时精度大雨1/1000秒,计数器能显示1/1000秒时间,提供给计时器内部定时的始终频率为12MHz;计数器的最长计时时间为1小时,为此需要一个7位的显示器,显示的最长时间为59分59.999秒。
简易数字秒表的电路设计 概述及解释说明

简易数字秒表的电路设计概述及解释说明1. 引言1.1 概述本文主要介绍了一种简易数字秒表的电路设计。
秒表是一种用于计算时间间隔的常见工具,广泛应用于日常生活和各行各业中。
传统的机械秒表用起来不够便捷,因此我们将使用电路设计来实现一个数字秒表,使其更加方便使用。
1.2 文章结构本文分为四个主要部分进行阐述。
首先,在“引言”部分中我们将对文章进行概述和介绍。
接下来,在“简易数字秒表的电路设计”部分中,我们将详细介绍设计原理、电路元件选择与说明以及电路连接与布局等内容。
然后,在“解释说明”部分中,我们将解释秒表功能的实现方法,并探讨其功能扩展可能性,并指出在电路设计过程中需要注意的问题。
最后,在“结论”部分中,我们对本次设计成果进行总结,并就可能存在的改进空间进行分析和未来应用进行展望和思考。
1.3 目的本文旨在通过详细描述并解释简易数字秒表的电路设计,提供一个清晰易懂、全面深入的指南,帮助读者了解该设计思路及其实现方法。
同时,通过对功能扩展可能性的探讨和对电路设计过程中需要注意的问题的分析,可以引导读者在实际应用和改进中做出更好的决策。
最后,通过总结和展望,为未来的研究和发展提供参考思路。
2. 简易数字秒表的电路设计2.1 设计原理:简易数字秒表的电路设计基于计时器和显示器组成。
其主要原理是利用计时器模块产生一个稳定的时间基准,然后将该时间以数字形式显示在显示器上。
2.2 电路元件选择与说明:在设计简易数字秒表的电路时,我们需要选取合适的电子元件来实现功能。
以下是一些常见的元件选择:- 计时器芯片:可选择集成型计时器芯片,如NE555等,它们具有稳定的时钟信号输出。
- 显示屏:一般选用7段LED数码管,由于它们能够直观地显示数字。
- 驱动芯片:如果使用多个7段LED数码管进行显示,则必须选择合适的驱动芯片,如74HC595等。
这些元件经过合理的选择和配套可以实现精确、稳定地测量和显示时间。
2.3 电路连接与布局:简易数字秒表电路连接和布局对功能稳定性有重要影响。
数字秒表设计报告

摘要要求设计一个计数范围在0.0-9.9秒的数字秒表,精确度为0.1秒。
电路设计基本包括0.1秒脉冲发生器、信号控制端、整形电路、计数电路、译码电路和显示器这几部分构成。
0.1秒脉冲发生器由555定时器构成的多谐振荡电路实现,信号控制端由D触发器实现,即74LS74N,能够对整个电路进行清零、计数、停止和复位的作用。
计数器由两个十进制BCD 码74LS160级联而成。
在计数器的四个输出端分别接译码器的四个置数端,译码器由74LS48实现。
这个电路设有两个开关s1,s2,来实现对电路的清零、计数、暂停、复位的控制。
这样,一个简易的数字秒表便设计完成了。
关键字:555定时器、D触发器、编码、译码ABSTRACTDesign a digital stopwatch counting range in 0.0-9.9 seconds, accuracy of 0.1 seconds. Basic including 0.1 second pulse generator circuit design, signal control terminal, shaping circuit, counting circuit, decoding circuit and a display of this a few parts. More than 0.1 second pulse generator composed of 555 timer harmonic oscillation circuit implementation, signal control comprised D flip-flop, namely 74LS74N, can be reset to the whole circuit, counting, stop and reset. Two decimal counter by BCD 74LS160 cascade. In the four output end of the counter four load respectively at the decoder side, decoder by 74LS48 implementation. This circuit is equipped with two switch S1, S2, to implement to reset circuit, counting, suspend, and reset the control. So will design a simple digital stopwatch is complete.Key Word:555 timer, D flip-flop, encoding and decoding目录摘要------------------------------------------------------------------------1 1.设计目的及要求------------------------------------------------------31.1设计目的-----------------------------------------------------------31.2设计要求-----------------------------------------------------------32.设计原理及分析------------------------------------------------------42.1设计构想框图-------------------------------------------------------42.2设计原理分析-------------------------------------------------------42.2.1多谐振荡电路------------------------------------------------42.2.2开关控制端与D触发器----------------------------------------52.2.3与非门电路--------------------------------------------------52.2.4显示译码电路------------------------------------------------53.制作过程--------------------------------------------------------------73.1布局连线-----------------------------------------------------------73.2调试---------------------------------------------------------------73.3遇到问题及解决方法-------------------------------------------------84.心得感悟--------------------------------------------------------------8参考文献------------------------------------------------------------------9附录附录一元器件清单------------------------------------------------------10 附录二电路图----------------------------------------------------------101.设计目的及要求1.1设计目的通过对数字秒表的设计,熟练掌握555定时器脉冲信号产生的原理和D触发器的功能及原理,利用所学的电子技术基础(模拟部分)知识,回顾脉冲信号产生、计数、编码、译码的原理机制,进行对生活中不可或缺的秒表的设计。
秒表计时电路设计verilog

电子科技大学通信学院秒表计时电路实验报告班级通信一班学生学号教师秒表计时电路秒表计时电路一、设计思路概述1.设计要求秒表计时功能,显示分、秒、0.01秒具有启动、暂停、停止和清空功能增加有趣的流水灯输入信号:4bit按键,50MHz时钟输出信号:6位数码管2.设计分析本设计要求秒表计时功能,显示分、秒、0.01秒,而这可以由分频电路实现,将电路的输入时钟进行分频,得到1/60Hz,1Hz,和100Hz信号,就可以达到本设计要求的显示要求了。
本设计要求具有启动、暂停、停止和清空功能,而这个可以由状态机实现,通过合理的配置状态转换,就可以达到要求。
流水灯的实现说来简单,其实也可以做的复杂,漂亮的流水灯其观赏性还是很好地,这里我们只讨论简单流水灯的实现,即单个灯从左到右逐步发光。
这实际是一个移位寄存器,我们可以通过不同的时钟来驱动它,实现不同的流水速度。
这里,我们实现了一个1Hz,和一个10Hz的流水灯电路。
二、总体设计框图及详细说明三、各部分代码设计1、500000进制计数器(分频器)设计:always @(negedge clk or negedge rst10ms)beginif (~rst10ms) beginclk10ms<=0;clk10msreg<=0;endelse if (clk10msreg == 249999) beginclk10ms<=~clk10ms ;clk10msreg<=clk10msreg+1;endelse if (clk10msreg==499999) beginclk10ms<=~clk10ms;clk10msreg<=0;endelse begin clk10msreg<=clk10msreg+1;endend2、状态机设计always @(negedge clk or negedge clear) beginif (~clear) beginstate <= idlestate; rst <= 0; rst10ms <= 0;endelse begincase (state)idlestate: beginif(~start)beginstate<= prestate; rst<=0;rst10ms<=0;endelsestate<=idlestate; endprestate: beginstate<=runstate;rst<=1;rst10ms<=1;endholdstate: beginif(~stop)beginstate<=idlestate; rst<=1;rst10ms<=0;endelse if(~start)beginstate<= runstate; rst<=1;rst10ms<=1;endelsestate<=holdstate; endrunstate: beginif(~stop)beginstate<=idlestate; rst<=1;rst10ms<=0;endelse if(~hold)beginstate<= holdstate; rst<=1;rst10ms<=0;endelsestate<=runstate;enddefault: state <= state;endcaseendend3.10进制计数器(分频器)设计module count10(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) beginif (~rst) begin clkout<=0;counter<=0;endelse if (counter == 4) begin clkout<=~clkout;counter<=counter+1; endelse if (counter == 9) begin clkout<=0;counter<=0; endelse begin counter<=counter+1;endendendmodule4、6进制计数器(分频器)设计module count6(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) beginif (~rst) beginclkout <= 0;counter <= 0;endelse if (counter == 2) beginclkout <= ~clkout;counter <= counter + 4'b1;endelse if (counter == 5) beginclkout <= ~clkout;counter <= 0;endelse begincounter <= counter + 4'b1;endendendmodule5、流水灯设计always @(negedge clk1s or negedge rst)beginif (~rst)ledg <= 8'b0;else if (ledg == 8'b0)ledg<=8'b10000000;elseledg<=(ledg>>1);endalways @(negedge clk100ms or negedge rst) beginif (~rst)ledr <= 18'b0;else if (ledr == 18'b0)ledr<=18'b100000000000000000;elseledr<=(ledr>>1);end6、显示译码电路设计always @(negedge clk or negedge rst) begin if (~rst) begindisplayreg <= 3'b000;segcode[0] <= 7'b1111111;segcode[1] <= 7'b1111111;segcode[2] <= 7'b1000000;segcode[3] <= 7'b1000000;segcode[4] <= 7'b1000000;segcode[5] <= 7'b1000000;segcode[6] <= 7'b1000000;segcode[7] <= 7'b1000000;endelse begincase (timeout[displayreg])0: segcode[displayreg] <= 7'b1000000;1: segcode[displayreg] <= 7'b1111001;2: segcode[displayreg] <= 7'b0100100;3: segcode[displayreg] <= 7'b0110000;4: segcode[displayreg] <= 7'b0011001;5: segcode[displayreg] <= 7'b0010010;6: segcode[displayreg] <= 7'b0000010;7: segcode[displayreg] <= 7'b1011000;8: segcode[displayreg] <= 7'b0000000;9: segcode[displayreg] <= 7'b0010000;default: segcode[displayreg] <= 7'b1111111;endcasedisplayreg <= displayreg + 3'b1;endend四、总体电路设计module today(key, ledr, ledg, hex, clk);input [3:0] key;input clk;output reg [17:0] ledr;output reg [7:0] ledg;output [55:0] hex;wire clear;wire start;wire stop;wire hold;assign clear = key[0];assign start = key[1];assign stop = key[2];assign hold = key[3];reg [19:0] clk10msreg;reg clk10ms;wire clk100ms;wire clk1s;wire clk10s;wire clk1min;wire clk10min;wire clk1h;reg [1:0] state;parameter idlestate = 2'b00, prestate = 2'b01, holdstate = 2'b10, runstate = 2'b11;reg rst;reg rst10ms;reg [2:0] displayreg;wire [3:0] timeout [7:0];reg [6:0] segcode[7:0];assign hex = {segcode[7], segcode[6], segcode[5], segcode[4], segcode[3], segcode[2], segcode[1], segcode[0]};always @(negedge clk or negedge clear) beginif (~clear) beginstate <= idlestate; rst <= 0; rst10ms <= 0;endelse begincase (state)idlestate: beginif(~start)beginstate<= prestate;rst<=0;rst10ms<=0;endelsestate<=idlestate;endprestate: beginstate<=runstate;rst<=1;rst10ms<=1;endholdstate: beginif(~stop)beginstate<=idlestate;rst<=1;rst10ms<=0;endelse if(~start)beginstate<= runstate;rst<=1;rst10ms<=1;endelsestate<=holdstate;endrunstate: beginif(~stop)beginstate<=idlestate;rst<=1;rst10ms<=0;endelse if(~hold)beginstate<= holdstate;rst<=1;rst10ms<=0;endelsestate<=runstate;enddefault: state <= state;endcaseendendalways @(negedge clk or negedge rst10ms)beginif (~rst10ms) beginclk10ms<=0;clk10msreg<=0;endelse if (clk10msreg == 249999) beginclk10ms<=~clk10ms ;clk10msreg<=clk10msreg+1;endelse if (clk10msreg==499999) beginclk10ms<=~clk10ms; clk10msreg<=0;endelse begin clk10msreg<=clk10msreg+1;endendcount6 min10counter(rst, clk10min, clk1h, timeout[7]); count10 min1counter (rst, clk1min,clk10min, timeout[6]); count6 sec10counter(rst, clk10s,clk1min, timeout[5]); count10 sec1counter (rst, clk1s, clk10s, timeout[4]); count10 ms100counter(rst, clk100ms, clk1s, timeout[3]); count10 ms10counter (rst, clk10ms, clk100ms, timeout[2]); assign timeout[1] = 4'b1111;assign timeout[0] = 4'b1111;always @(negedge clk or negedge rst) beginif (~rst) begindisplayreg <= 3'b000;segcode[0] <= 7'b1111111;segcode[1] <= 7'b1111111;segcode[2] <= 7'b1000000;segcode[3] <= 7'b1000000;segcode[4] <= 7'b1000000;segcode[5] <= 7'b1000000;segcode[6] <= 7'b1000000;segcode[7] <= 7'b1000000;endelse begincase (timeout[displayreg])0: segcode[displayreg] <= 7'b1000000;1: segcode[displayreg] <= 7'b1111001;2: segcode[displayreg] <= 7'b0100100;3: segcode[displayreg] <= 7'b0110000;4: segcode[displayreg] <= 7'b0011001;5: segcode[displayreg] <= 7'b0010010;6: segcode[displayreg] <= 7'b0000010;7: segcode[displayreg] <= 7'b1011000;8: segcode[displayreg] <= 7'b0000000;9: segcode[displayreg] <= 7'b0010000;default: segcode[displayreg] <= 7'b1111111;endcasedisplayreg <= displayreg + 3'b1;endendalways @(negedge clk1s or negedge rst)beginif (~rst)ledg <= 8'b0;else if (ledg == 8'b0)ledg<=8'b10000000;elseledg<=(ledg>>1);endalways @(negedge clk100ms or negedge rst) beginif (~rst)ledr <= 18'b0;else if (ledr == 18'b0)ledr<=18'b100000000000000000;elseledr<=(ledr>>1);endendmodulemodule count6(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) begin if (~rst) beginclkout <= 0;counter <= 0;endelse if (counter == 2) beginclkout <= ~clkout;counter <= counter + 4'b1;endelse if (counter == 5) beginclkout <= ~clkout;counter <= 0;endelse begincounter <= counter + 4'b1;endendendmodulemodule count10(rst, clk, clkout, counter);input rst;input clk;output reg clkout;output reg [3:0]counter;always @(negedge clk or negedge rst) beginif (~rst) begin clkout<=0;counter<=0;endelse if (counter == 4) begin clkout<=~clkout;counter<=counter+1; endelse if (counter == 9) begin clkout<=0;counter<=0; endelse begin counter<=counter+1;endendendmodule五、总结及心得体会通过这次试验,我们基本掌握了状态机的实现方法,进一步熟悉和掌握了Verilog HDL的基本使用方法。
数字秒表实验报告---EDA

数字秒表实验报告—EDA项目背景本次实验旨在使用EDA工具设计一个数字秒表电路,通过FPGA开发板进行验证,具体要求如下:1.实现毫秒计时,并可以在数码管上显示当前计时数值。
2.支持开始/暂停、清零等操作。
设计思路本次实验的数字秒表电路由以下模块构成:1.时钟发生器模块:用于产生时钟信号,以驱动计数器进行计数。
2.计数器模块:通过时钟信号进行计数,并将计数结果传递给显示模块。
3.显示模块:将计数结果转换为数码管显示的数码信号,并控制数码管进行显示。
其中,时钟发生器模块和计数器模块都是基础电路模块,在这里不再赘述,下面将着重介绍显示模块的设计。
显示模块设计显示模块主要由控制模块和数码管模块构成。
控制模块根据计数结果和当前时间,控制数码管模块显示相应的数码。
在这里,我们采用的是共阳极的数码管。
具体来说,我们将控制模块分为两个子模块:时分秒计数器和数码显存控制器。
时分秒计数器时分秒计数器通过接收计数器模块的计数结果,将其转换为时分秒,并存储在计数器寄存器中。
计数器寄存器是一个64位的寄存器,由三个16位的子寄存器组成,用于存储时分秒。
当计数器模块的计数结果为0时,时分秒计数器会重置计数器寄存器。
数码显存控制器数码显存控制器由一个6位的数据存储器和一个6位的显示寄存器组成。
当计数器模块进行计数时,显示寄存器中存储的数码信号会根据时分秒计数器的值进行更新。
同时,数码显存控制器也会控制共阳极数码管进行相应的显示操作。
原理图设计根据以上的设计思路,我们可以得到数字秒表电路的原理图如下:原理图原理图EDA设计流程设计环境本次实验使用的是Xilinx ISE Design Suite 14.7,这是一个使用VHDL进行设计的EDA工具。
设计流程1.新建工程并设置工程名、目录、设备等基本信息。
2.添加源文件,包括时钟发生器模块、计数器模块、显示模块,以及顶层模块。
将所有模块综合为一个顶层设计。
3.检查时序约束,以保证电路能够正确运行。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字秒表的电路设计
一、设计目的
1.掌握数字秒表的设计、组装与调试方法。
2.熟悉集成电路的使用方法。
二、设计任务与要求
1.设计任务
设计一个能以两位数显示的数字秒表。
2.设计要求
基本要求:
(1) 两位数码显示功能,能够从“0”到“59”依次显示,显示到“59”时,蜂鸣器发出报警。
(2) 具有停摆和清零功能。
发挥部分:
自动报警时,在56秒时,自动发出鸣响声,步长1s,每隔1s鸣叫一次,前两响是低音,最后一响结束为下一个循环开始。
3.设计步骤
(1)根据课题,查阅相关资料。
(2)根据提供的元器件,画出系统原理框图,确定基本电路。
(3)用Multism进行仿真验证,修改。
(4)用万能电路板焊接电路,并调试。
(5)撰写课程设计报告。
三、提供的器材清单。