




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
ADSP上机实验报告学院:电子工程学院专业:信息对抗技术班级:020731学号:02073044姓名:张晓羽目 录第一次上机实验报告1实验一VISUALDSP+的使用入门1练习一运行C程序1练习二运行C和汇编混合程序4练习三数据绘图(Plotting)5练习四性能统计7第二次上机实验报告8实验二GPIO实验8练习一 基于描述符的存储器DMA实验8练习二定时器的演示实验8第三次上机实验报告11实验三数据采集和谱分析11第四次上机实验报告14实验四数据采集与滤波处理14第五次上机实验报告17实验五自主实验17第一次上机实验报告实验一VISUALDSP+的使用入门练习一运行C程序1. 实验目的练习启动Visual DSP+ 4.0,建立一个用C源代码的工程(Project),同时用调试器来评估用C语言所编写代码的性能2. 实验步骤l) 进入Visual DSP十并打开一个工程(Project)进入 Visual DSP,显示Visual DSP+的集成开发和调试环境窗口(Integrated Development and Debugger Environment,简称IDDE)。选择菜单File 中Open 打开文件unit_1dot_product_c dotprodcdpj。VisualDSP+环境将装载dotprodc工程,并列出相应的源文件。在输出窗口(Output Window)中显示简要信息。2) 编译 dotprodc工程在菜单 Project中选择 Build Project来对工程进行编译。此时,输出窗口显示程序编译时的各种状态信息(包括出错和编译进程信息)。当编译检测到错误时,将在输出窗口出现相应的出错信息,用鼠标双击它,编译器将自行打开源文件。这时可对源文件编辑、修改错误,再次进行编译。当编译不再有错时,输出窗口将显示“Build completed successfully”。VisualDSP+开发环境的编辑窗口和输出窗口以及所显示的程序编译时的各种状态信息如图1所示:图1 VisualDSP+开发环境的编辑窗口和输出窗口3) 运行VsualDSP+调试器在编译完成后,环境将自动进入调试状态,对于初次进入debugger,将显示对象选择对话框,在其中指定对象和处理器信息。 若在调试过程中需定义不同的对象和处理器类型,选取菜单Sessions中NeW Session项来重新定义。NeW Session 对话框图2所示:图2 NeW Session 对话框用VisualDSP十调试时,调试器会自动调入工程的可执行文件dotprodcdxe。4) 运行dotprod.c从 Debug菜单中选择 Run项,程序将被执行,其输出结果在 Output window中显示。如图4所示:图3 dotprod.c 输出结果5) 评估函数 a_doc_c 的性能(profile)Profile用来分析程序的运行时间特性,通过Profile可以找到最耗时的程序段,这可能就是需要进一步优化性能的程序段。通过下述步骤来设置Profile功能并显示其结果:(1) 选 ToolsLinear ProfilingNew Profile命令(2) 出现一个Profile的子窗口,在该窗口上点击右键弹出如图7.6(1)的快捷菜单,如图7.6(1)所示:(3) 点击菜单中的Properties.,选中第二个选项卡“filter”然后设置开始地址和结束地址; (4)重新编译加载程序,按F5继续运行程序,程序完全执行后,将在Console窗口显示结果,并在Profile窗口中显示程序运行过程中的各种数据。点击右键菜单中View Sample Count,显示如图4(1)所示:图4 Profile窗口(1)将Project Options中的编译器设置将代码优化功能选中,重新编译和链接程序后,对程序中的三个子函数的运行性能重新进行评估,如图5(2)所示,对比优化前和优化后的区别,说明其原因。 图5 Profile窗口(2)练习二运行C和汇编混合程序1. 实验目的练习创立一个新的工程,修改源码来调用一个汇编(asm)程序,重新编译工程,用调试器来评估用汇编语言所写程序的性能2实验步骤l)创建一个新的工程(project)从 Project菜单中选取New项,在弹出的工程保存对话框中,将工程名定义为dot_product_asm.dpj,并保存在unit_1dot_product_asm目录下。2) 向dot_product工程中添加文件选取菜单ProjectAdd to Projectfile(s)项,按住Ctrl键来同时选中dotprod_mainc,dotprodc,dotprod_funcasm和dotprodasm.ldf文件,点击“Add”将这几个文件加到工程中。结果如图6所示:图6 添加文件对话窗3)创建链接描述文件4) 修改工程源文件5) 修改链接描述文件当工程源文件修改该完毕后,编译在工程,输出窗口如下图7所示:图76) 编译和运行dot_product先选取菜单 ProjectBuild Project项来编译工程;再选取菜单 DebugRun项来运行程序。在输出窗口(Output Windows)中就会得到运行结果:Dot product 0 = 13273595Dot product 1 = -49956078Dot product 2 = 358725187) 评估a_dot_asm的效率要评估汇编代码的效率,要在评估属性设置窗口中的“Memory ranges”中设定评估代码的起始地址。将Start Address设置为汇编子程序入口地址_a_dot_c_asm,将End Address设置为汇编子程序的出口地址_a_dot_c_asm.end。重新加载程序,并运行程序进行评估,评估的结果如图8示:图8 a_dot_asm Profile 结果窗口练习三数据绘图(Plotting)1. 实验目的练习利用调试器的绘图(plot)功能来图形显示一个卷积算法中的有关数据的波形。2. 实验步骤l) 将算法程序调入Debugger环境关闭所有已打开的工程和文件,选择菜单 FileLoad Program.项或点击图标。在出现的对话框中选择文件firdebugfirdxe。并在随后的源文件对话框中选择文件 firfir.c。可以在C代码源文件中看到两个全局数组:IN和OUT。2) 打开绘图窗口并设定参数选择菜单 ViewDebug WindowsPlotNew项,将出现Plot参数设置窗口。在 Plot Type项中选择 Line Plot,在 Plot Title中输入fir。各行参数在设置完后,点击“Add”加入,最后点击“OK”。此时屏幕将出现Plot设置对话框如图9所示的绘图窗口:图9 程序运行之前的Plot窗口IN变量图3) 运行fir程序并在图形窗口中观察数据接F5运行程序,当程序Halt(SHIFT-F5)后,用Plot窗口绘出出现数据OUT的曲线。图中的两条曲线分别代表IN(绿)和OUT(紫)数组的值,程序运行后的Plot窗口如图10所示:图10 程序运行后的Plot 窗口4)绘制幅度谱线图在plot窗口点击右键,选择“modify setting”,在“plot setting”窗口选择“data processing”,在“data sets”窗口选择“IN”,在“data process”窗口选择“FFT Magnitude”,然后点“OK”,重复一以上操作,把数据“OUT”也改为“FFT Magnitude”,在plot窗口可以看到如下图11所示:图11 fir滤波前后的数据频谱图练习四性能统计1. 实验目的利用调试器的性能统计功能(Statistical profile)来检查练习三中卷积算法的效率。利用所收集到的性能统计数据就能看出算法中最耗时的地方2. 实验步骤l) 打开fir程序2) 打开统计特性选项选 ToolsLinear ProfilingNew Profile命令,出现 Statistical Profiling Results窗口图12 Statistical Profiling Results窗口3) 收集和检查统计特性数据图13 统计特性数据窗口3. 实验结果分析从窗口中可以看出,内循环占去了67.05的时间。因此,在编程时若需提高算法的执行效率,可将该段代码用汇编语言重新编写来提高它的效率。4. 实验总结通过本次实验熟悉了VISUAL DSP+的开发环境。学会了启动Visual DSP+ 4.0,建立一个用C源代码的工程(Project),同时用调试器来评估用C语言所编写代码的性能,掌握了利用调试器的绘图(plot)功能来绘制有关数据的波形;第二次上机实验报告实验二GPIO实验练习一 基于描述符的存储器DMA实验1.实验目的本实验利用ADSPBF533-EZ-KIT板的硬件资源,完成Blackfin存储空间中的存储器对存储器的DMA传送。本实验中三种不同的描述符(DMA传送方法)得到的结果不一样,可以通过观察各个输出存储器的窗口看到现象。通过这个实验加深对menDMA数据传送方式的理解。2.实验硬件资源硬件资源包括:a) 微型计算机一台;b) 多功能信号发生器一台;c) 示波器一台;d) ADSPBF533-EZ-KIT板一套,含EZ-KIT稳压电源;e) USB串口电缆一根;3.实验基本原理 实验中各设备的连接关系如图14所示:图14实验中各设备的连接关系图15 硬件实验的基本原理4.实验程序简介1) 程序结构:程序包括主函数main.asm、memDMAfunc.asm、memdmainit.asm等3个模块,以及常数和宏定义、全局变量定义部分。其中main.asm 函数完成整个功能程序的控制,memDMAfunc.asm完成各种描述符(DMA数据传送方法)的设定和dma_engine的启动,memdmainit.asm完成基于描述的DMA初始化。2) 程序工作流程:_main先调用memdma_init完成对基于描述的DMA初始化,再调用memdma_move1D、call memdma_move1Dto2D、memdma_move2Dto2D三种不同的描述符(传送方法)进行存储器到存储器的数据传送,最后调用ctivate_dma_engine启动DMA传送数据。 5. 实验步骤1)连接硬件 关闭PC机的电源,按照硬件连接图正确连接各个硬件设备,检查EZ-KIT板上的跳线位置是否正确,按照硬件连接图检查确保正确连接各个硬件设备。2)加电和启动程序 检查无误后,分别打开PC机、评估板的电源,运行VisualDSP+,新建一个工程,工程名称自定义,正确设置工程的各个选项,将unit_2Descriptor Base 目录下的源文件加入到工程中。或者打开unit_2Descriptor Base目录下已经存在的工程memdma_example.dpj。3)选择或者建立正确的会话类型按照要求选择或者建立EZ-KIT类型的会话。4)编译连接 编译链接该工程,编译有误时双击错误处可以找到错误程序行进行修改;没有错误后运行程序。5)典型实验结果 运行前后MEMORY窗口的输出数据表如下面表所示:练习二 定时器的演示实验1.实验目的利用ADSPBF533-EZ-KIT评估板的硬件资源,通过事先定义好LED状态的数据组,并把数组存放在评估板的存储器FLASHA。主要采用定时操作读取数据并通过FLASHA PORTB口直接输出来控制LED的状态来实现的,通过本次试验对定时器有了更深的了解。2. 实验测试程序简介实验程序是通过先定义数据组和初始化定时器和中断使能,等待定时中断服务程序的到来。中断服务子程序的功能就是每中断执行一次就读取数组中的一个数据送至LED显示端口。LED状态间隔时间由定时初始时间决定,可以改变初始时间来改变状态间变换快慢;也可以改变数据组来得到实验者想要的状态。1)程序结构:程序主函数main.c包括main()主程序,EX_INTERRUPT_HANDLER()定时器中断服务程序模块,以及常数和宏定义、全局变量定义部分。其中main()函数完成程序的控制,还包括对EBIU、Timer0、Interrupt的初始化。2)程序工作流程:先是在定义用于控制LED灯的数组,再主程序main()通过设置EBIU的控制寄存器EBIU_AMGCTL、EBIU_AMGCTL0、EBIU_AMGCTL1进行初始化,设置Timer0 的控制寄存器TIMER0_CONFIG使定时器的中断使能、设成PWM-OUT模式,寄存器TIMER0_WIDTH、TIMER0_PERIOD、TIMER_ENABLE设置定时时间,设置定时中断的优先级、中断向量以及解除中断屏蔽开启定时中断等待中断的到来。3. 实验步骤1) 连接硬件 关闭PC机的电源,按照硬件连接图正确连接各个硬件设备,检查EZ-KIT板上的跳线位置是否正确,按照硬件连接图检查确保正确连接各个硬件设备。2)加电和启动程序 检查无误后,分别打开PC机、评估板的电源,运行VisualDSP+,新建一个工程,工程名称自定义,正确设置工程的各个选项,将unit_2timer目录下的源文件加入到工程中。3) 选择或者建立正确的会话类型 按照要求选择或者建立EZ-KIT类型的会话,详细要求请参阅前面的有关内容。4) 编译链接编译链接该工程,编译有误时双击错误处可以找到错误程序行进行修改;没有错误后运行程序。4. 实验结果分析 *pTIMER0_CONFIG= 0x0019;*pTIMER0_PERIOD= 0x00800000;*pTIMER0_WIDTH= 0x00200000;*pTIMER_ENABLE= 0x0001;(1)pTIMER0_CONFIG为定时器控制字,使用0x0019地址端口,使能中断请求,采用周期计数,负激活脉冲,PWM输出模式;(2)TIMER0_PERIOD:配置周期,默认值为ox00800000,若改为ox00200000,即周期变短,可以观察到LED等闪烁的更快。(3) pTIMER0_WIDTH:配置脉冲宽度,默认值为ox00200000,若改为ox00600000,即脉冲宽度变为默认值三倍,我们可以观察到,LED点亮的时间会相对更长。(4)pTIMER_ENABLE:使能定时器0,若将其改为ox0000,我们观察到定时器不能正常工作,LED灯不亮。5. 实验总结通过本次实验了解了ADSPBF533-EZ-KIT板的硬件资源,清楚了实验板的最基本连接,加深对menDMA数据传送方式的理解,同时也对定时器有了更进一步的了解。第三次上机实验报告实验三数据采集和谱分析1. 实验目的利用ADSPBF533的评估板的硬件资源,完成对信号的采样与FFT变换输出,输出结果可以从示波器上实时地观察到,也可以利用VisualDSP+的plot功能描绘出来。通过本次实验理解离散傅立叶变化的原理,掌握DFT的快速算法,同时了解连续信号的采样后的频谱,加深对数字信号处理理论的理解。2.实验硬件资源硬件资源包括:f) 微型计算机一台;g) 多功能信号发生器一台;h) 示波器一台;i) ADSPBF533-EZ-KIT板一套,含EZ-KIT稳压电源;j) USB串口电缆一根;3. 实验程序简介) 程序结构:程序包括主函数main()、Process_data()、Initialize()和ISR()等4个模块,以及常数和宏定义、全局变量定义部分。其中main()函数完成程序的控制,Initialize()完成CODEC和BF533个部分的初始化,Process_data ()完成数据采集和计算,ISR()实现中断控制。) 程序工作流程:main()首先调用init_codec(),将CODEC和BF533进行初始化,然后调用中断函数ISR(),程序进入数据采集,通过CODEC的A/D采集数据,采集完256点数据后,转入数据处理,并且将处理结果送回CODEC,通过它的D/A转换成模拟信号。连续运行时,程序处于数据采集数据处理等待数据采集(256点)的无限循环中,直到被用户干预停止。) 数据采集和处理模式的切换:程序设置了全局整形变量Ready2FFT标志当前工作状态。若Ready2FFT=0时,工作在数据采集模式,此模式下中断程序每触发一次,程序从外部的SPORT_RX送一个数据到BF533内部缓冲区InbufLeft和InbufRight,当采集到256个数据后,子程序Process_data()会自动设置Ready2FFT=1,即进入数据处理阶段。数据处理结束后,重新进入数据采集阶段开始新的循环。4. 实验步骤1)连接硬件断开所有电源,参考图14连接好信号源、EZ-KIT板、微机、示波器等。检查EZ-KIT板上的跳线位置是否正确,按照硬件连接图检查确保正确连接各个硬件设备。2)加电和启动程序检查无误后,分别打开PC机、信号源、评估板和示波器的电源,启动VisualDSP+,新建一个工程,工程名称自定义,正确设置工程的各个选项,将源程序加入到工程中。3) 选择或者建立正确的会话类型按照要求选择或者建立EZ-KIT类型的会话.。4)编译链接运行程序编译链接该工程。在程序中恰当位置设置断点(如main函数中的“optr = OutputBuffer;”程序行前),利用VisualDSP+软件的Plot功能,分别绘制ADC数据数组tempdata 和 频谱数组数据Magnitude的数值。4) 改变信号再观察调节信号发生器,利用示波器监视其输出幅度为0.51Vpp,频率为14kHZ。产生方波,观察并记录示波器上的输出结果,或者利用VisualDSP+的Plot功能进行记录。5.实验结果(a) 使用矩形窗时(b) 使用汉明窗时图16 方波的频谱分析结果6.实验结果分析 图16为信号发生器产生方波,利用示波器监视其输出幅度为0.51Vpp,频率为14kHZ时利用VisualDSP+的Plot功能绘出的频谱分析结果图。其中(a)为使用矩形窗截取时的频谱图,(b)为使用汉明窗截取时的频谱图。由数字信号处理的知识分析可得,周期信号方波的频谱包络应该为离散的辛克函数sa(x)式的包络,由于计算只能处理离散信号,我们在处理信号时必须对其进行离散化,即采样,对于周期信号,我们只需用适当的窗截取其一个周期内的信号即可做出相应的分析,此时得到的信号频谱即为我们观察到的信号频谱图。观察图16的结果,我们不难发现频谱的大致包络为辛克函数式包络,符合我们的理论分析。7.实验总结通过本次实验我对离散傅立叶变化的原理, DFT的快速算法,连续信号的采样后的频谱,以及数字信号处理理论有了更近一步的理解。第四次上机实验报告实验四数据采集与滤波处理1. 实验目的 利用ADSPBF533-EZ-KIT板的硬件资源,完成对信号的采样和滤波分析。通过实验加深对数字滤波处理信号的方法的理解。2.实验硬件资源硬件资源包括:k) 微型计算机一台;l) 多功能信号发生器一台;m) 示波器一台;n) ADSPBF533-EZ-KIT板一套,含EZ-KIT稳压电源;o) USB串口电缆一根;3. 实验程序简介) 程序结构:程序包括主函数main()、Process_data()、Initialize()和ISR()等4个模块,以及常数和宏定义、全局变量定义部分。其中main()函数完成程序的控制,Initialize()完成CODEC和BF533个部分的初始化,Process_data ()完成数据采集和计算,ISR()实现中断控制。) 程序工作流程:main()先调用Initialize()完成对CODEC、BF533以及FIR滤波器系数初始化,再调用ISR()运行中断服务程序,在中断服务程序中,调用子函数Process_data ()完成对信号的采集、滤波和输出,Process_data ()的运行模式是:采样FIR运算输出采样的无限循环。) 数据源选择:变量Process_Stat为采集状态标志位,若Process_Stat=0,则从CODEC取采样数据存入Inbuf0;Process_Stat=1,则从CODEC取采样数据存入Inbuf1;Process_Stat=2,则对Inbuf中的数据进行滤波,然后输出。) 滤波类型:通过滤波器类型变量filter=1,设定滤波类型为低通。滤波器的参数都放在数组变量hFIR_TAPS中。数据经过FIR滤波器后,才送往示波器。4. 实验步骤1)连接硬件 关闭PC机的电源,按照硬件连接图正确连接各个硬件设备,检查EZ-KIT板上的跳线位置是否正确,按照硬件连接图检查确保正确连接各个硬件设备。2)加电和启动程序 检查无误后,分别打开PC机、信号源、评估板和示波器的电源,运行VisualDSP+,新建一个工程,工程名称自定义,正确设置工程的各个选项,将源文件加入到工程中。3)选择或者建立正确的会话类型 按照要求选择或者建立EZ-KIT类型的会话。4) 编译链接和观察结果 编译链接该工程,没有错误后运行程序。正确的设置Settings后,从示波器上观察输出结果。5) 改变信号类型观察调节信号发生器,利用示波器监视其输出幅度为0.51Vpp,分别产生正弦波、方波和三角波,使其频率从直流到采样频率连续地变化,观察示波器上输出信号幅度和波形的变化。window=1表明加了汉明窗Compress=1 表明对原滤波器进行了时域压缩。Shift=1 表明对原滤波器进行了移位,低通变为了带通。5.实验结果时域压缩Window=1 Shift=0 Compress=0图16 时域未压缩(上:时域图;下:频域图) Window=1 Shift=0 Compress=1图16 时域压缩(上:时域图;下:频域图)频域调制Window=1 Shift=0 Compress=0 Window=1 Shift=1 Compress=0 图17 滤波器幅频特性曲线6.实验结果分析信号通过低通滤波器,输入信号的频率从直流到采样频率连续地变化时,当信号频率小于低通滤波器的截止频率时,其输出波形与输入波形一致;当信号频率大于低通滤波器的截止频率时其输出被截止,即输出为零。信号通过带通滤波器,输入信号的频率从直流到采样频率连续地变化时,当信号频率小于带通滤波器的下截止频率时,其输出被截止,即输出为零;当信号频率大于带通滤波器的上截止频率时其输出被截止,即输出为零;当信号频率大于带通滤波器的下截止频率且小于带通滤波器的上截止频率时其输出与输入波形一致。7.实验总结今天利用ADSPBF533-EZ-KIT板的硬件资源,经过漫长的研究和调试过程,完成了对信号的采样和滤波分析,通过本次实验加了我对深对数字滤波这种信号处理的方法的理解,提高了自己的动手能力,并有了更强的动手欲望,激发了我对数字信号处理的更大的学习热情。第五次上机实验报告实验五自主实验运用ADSPBF533实现矩阵乘法 1实验目的 运用前面实验一至实验四四个实验所学的知识,使用ADSPBF533进行自主编程,完成一个简单的,矩阵生成矩阵运算的过程,加深对visual DSP+的使用熟练度,并加深对数字信号处理的理解。2.试验程序简介1) 程序结构:程序包括主函数main()、dsp_shiyan2_heaptab.c()、oper.c()等3个模块,以及常数和宏定义、全局变量定义部分。其中main()函数完成程序的控制,dsp_shiyan2_heaptab.c()完成CODEC和BF533个部分的初始化,oper.c()完成数据采集和计算。2) 程序工作流程:main()首先调用dsp_shiyan2_heaptab.c()将CODEC和BF533进行初始化,然后自己生成A、B、C、D四个矩阵,再通过调用oper.c()进行运算,使其完成A*B+C*D。3.试验原程序 main(): #include #include #include extern void c_matrix_oper(int *,int *,int *,int *,int *);/进行矩阵操作的主函数void main() int i,j,k; int a66,b66,c66,d66,e66;/声明五个六维数组,保存矩阵参数 srand(time(0);/调用C语言随机函数,用来生成矩阵里的每个数 for(i = 0;i 6;i+) for(j = 0;j 6;j+) aij = rand()%10;/给A、B、C、D矩阵赋值,随机产生1-10中的任意一个数 bij = rand()%10; cij = rand()%10; dij = rand()%10; eij = 0; /*/ /将四个矩阵分别打印输出 printf(nA = n); for(i = 0;i 6;i+) for(j = 0;j 6;j+) printf(%d ,aij);/ 输出矩阵A printf(n); printf(nB = n); for(i = 0;i 6;i+) for(j = 0;j 6;j+) printf(%d ,bij);/输出矩阵B printf(n); printf(nC = n); for(i = 0;i 6;i+) for(j = 0;j 6;j+) printf(%d ,cij);/输出矩阵C printf(n); printf(nD = n); for(i = 0;i 6;i+) for(j = 0;j 6;j+) printf(%d ,dij);/输出矩阵D printf(n); /*完成矩阵操作A*B + C*D并打印结果*/ printf(nA*B + C*D = n); c_matrix_oper(*a,*b,*c,*d,*e);/调用子函数完成矩阵运算并打印出结果,子程序调用结束即释放空间 /所以以返回值返回指针的时候不能将整个矩阵打印出来dsp_shiyan2_heaptab.c():/* User heap source file generated on Mar 30, 2010 at 21:44:03.* Copyright (C) 2000-2006 Analog Devices Inc., All Rights Reserved.* This file is generated automatically based upon the options selected* in the LDF Wizard. Changes to the LDF configuration should be made by * changing the appropriate options rather than
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年保安考试抽查试题及答案
- 2025年西藏民族大学人才招聘(33人)模拟试卷及1套参考答案详解
- 中医综合考试试题及答案
- 行政礼品定制方案范本
- 偃师废气喷淋塔施工方案
- 城镇垃圾场施工方案范本
- 2025年变态心理测试题及答案
- 综采队架间喷雾施工方案
- 张家口塑料跑道施工方案
- 2025内蒙古土地资源收储投资(集团)有限公司常态化招聘急需紧缺专业人员50人模拟试卷附答案详解(典型题)
- 苏教版一年级上册科学素材期末复习知识点总结
- 废铅酸电池中回收高纯度金属铅和α-PbO新工艺及其电化学性能研究
- 2024年高考数学一模试题分类汇编:立体几何(原卷版)
- 露天停车场施工方案
- 山东省青岛第三十九中学2023-2024学年九年级上学期月考数学试卷(10月份) (月考)
- HR如何筹划年终奖?(10大经典个税筹划案例)汇编
- GB/T 43063-2023集成电路CMOS图像传感器测试方法
- 作文格子纸-word版本
- 抵押还款协议-1
- GB/T 18103-2022实木复合地板
- GB/T 29084-2012航天器接地要求
评论
0/150
提交评论