




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上实验1 连续节拍发生电路设计实验一、 实验内容掌握节拍发生器的设计方法,理解节拍脉冲发生器的工作原理。二、 实验原理1. 连续节拍发生电路连续节拍发生电路由四个D触发器组成,可产生四个等间隔的时序信号T1-T4。其中CLK1为时钟信号。当RST1为低电平时,T1输出为“1”,而T2、T3、T4输出为“0”;当RST1由低电平变为高电平后,T1-T4将在CLK1的输入脉冲作用下,周期性轮流的输出正脉冲,机器进入连续运行状态(EXEC)。T1-T4以及CLK1、RST的工作波形如下所示。图1-1 连续节拍发生电路2. 单步节拍发生电路将图1-1电路稍加改变即可得到图1-2
2、所示的单步运行电路。每当RST1出现一个负脉冲后,该电路仅输出一组T1、T2、T3、T4节拍信号,直到RST1出现下一个负脉冲。图1-2 单步节拍发生电路3. 单步/连续节拍发生电路 增加两个2选一多路选择器,可将1-2的电路改变为1-3的电路。S0是单步或连续节拍发生控制信号,当S0=0,选择单步运行模式;当S0=1,选择连续运行方式。图1-3 单步/连续节拍发生电路三、 实验任务1. 连续节拍发生电路示例顶层文件是T4.bdf。硬件电路如图1-1所示。下载T4.sof文件,选择实验模式No.1,CLOCK0接4Hz,键8控制RST1,高电平时可以看到,发光管1-4分别显示T1-T4的输出电
3、平。实验结果与书上的仿真波形图比较。2. 单步节拍发生电路用单步节拍发生电路可以对微程序进行单步调试运行,电路如1-2所示。该电路每当RST1出现一个负脉冲后,仅输出一组T1、T2、T3、T4节拍信号,直到RST1出现下一个负脉冲。顶层文件是T5.bdf。下载T5.sof文件,选择实验模式No.1,CLOCK0接4Hz,键8控制RST1。实验结果与书上的仿真波形图比较。3. 单步/连续节拍发生电路增加两个2选1多路选择器,可将图1-2的电路改变为图1-3的电路。S0是单步或连续节拍发生控制信号,当S0=0,选择单步运行方式;当S0=1,选择连续运行方式。顶层文件是TS5.bdf。下载TS5.s
4、of文件,选择实验模式No.1,CLOCK0接4Hz,键8控制RST1。实验结果与书上的仿真波形图比较。 四、 实验步骤1.软件编译2.仿真波形图a.连续节拍发生电路 图1-4连续节拍发生电路b.单步节拍发生电路 图1-5单步节拍发生电路c.单步/连续节拍发生电路图1-6单步/连续节拍发生电路3.分析报告a.连续节拍发生电路 高电平时可以看到,发光管1-4分别显示T1-T4的输出电平。b.单步节拍发生电路 每出现一个负脉冲,发光管1-4分别显示T1-T4的输出电平一次。c.单步/连续节拍发生电路发光管1-4分别显示T1-T4的输出电平。五、 问题分析1. 单步运行于连续运行有何区别,它们各自的
5、使用环境怎样? 单步运行只运行固定时钟周期的信号,而连续运行会一直发生信号。2. 如何实现单步/连续运行工作方式的切换?使用S0引脚控制21MUX的2选1控制端。当 S0=0 时,Y=A,为单步方式;当 S0=1 时,Y=B,为连续方式。3. 给出每个电路的原理图分析说明为何能产生所需节拍。对于实验任务2特别要对比没有t5输入时的仿真时序图,借此说明t5的作用。任务1由四个D触发器组成,可产生四个等间隔的时序信号T1-T4。当RST1为低电平时,T1输出为1,而T2、T3、T4输出为0;当RST1由低电平变为高电平后,T1-T4将在CLK1的输入脉冲作用下,周期性地轮流输出正脉冲;任务2中,每
6、当RST1出现一个负脉冲后,该电路仅输出一组T1、T2、T3、T4节拍信号,直到RST1出现下一个负脉冲;没有T5时,一个周期结束后,下一个时钟信号到来时,会进入下一周期,为连续节拍发生器;有T5时,在一个周期结束后,T5=1,所有触发器收得的时钟信号始终为1,不会有下一个时钟信号上升沿到来,为单步节拍发生器。在任务3中,S0为单步或连续节拍发生控制信号,可以选择运行方式。实验2 LPM_ROM与 LPM_RAM一、 实验内容1. LPM_ROM掌握FPGA中LPM_ROM的设置,作为只读存储器ROM的工作特性和配置方法;用文本编辑器编辑MIF文件配置ROM,学习将程序代码以MIF格式文件加载
7、于LPM_ROM中;在初始化存储器编辑窗口编辑MIF文件配置ROM;验证FPGA中LPM_ROM的功能。2. LPM_RAM了解FPGA中RAM lpm_ram_dq的功能;掌握lpm_ram_dq的参数设置和使用方法;掌握lpm_ram_dq作为随机存储器RAM的仿真测试方法、工作特性和读写方法。二、 实验原理1. LPM_ROM程序存储器是用来存放用户程序的,通常采用只读存储器ROM来存储程序。CPU中的一些重要部件,如RAM、ROM等,可直接调用LPM模块构成。图2-1 LPM_ROM图2-2 rom_a.mif2. LPM_RAM数据存储器存放运算数据及中间结果,一般采用随机存储器RA
8、M来实现其功能。CPU中的一些重要部件,如RAM、ROM等,可直接调用LPM模块构成。图2-3 LPM_RAM三、 实验任务1. LPM_ROM用图形编辑设计LPM_ROM。要求:用LPM元件库设计LPM_ROM,地址总线宽度address和数据总线宽度q分别为6位和24位;建立相应的工程文件,设置LPM_ROM数据参数,LPM_ROM配置文件的路径(ROM_A.mif),并设置在系统ROM/RAM读写允许,以便能对FPGA中的ROM在系统读写;锁定输入输出引脚;完成全程编译;下载SOF文件至FPGA,改变LPM_ROM的地址a5.0,外加读脉冲,通过实验台上的数码管比较读出的数据是否与初始化
9、数据(rom4.mif中的数据)一致;打开QuartusII的在系统存储模块读写工具,了解FPGA中的ROM中的数据,并对其进行在系统写操作;记录实验数据,写出实验报告,给出仿真波形图。2. LPM_RAM 数据从ram_dp0的左边D7.0输入,从右边Q7.0输出,R/W为读/写控制信号端。数据的写入:当输入数据和地址准备好以后,在inclock是地址锁存时钟,当信号上升沿到来时,地址被锁存,数据写入存储单元。 数据的读出:从A7.0输入存储单元地址,在CLK信号上升沿到来时,该单元数据从Q7.0输出。四、 实验步骤 1.软件编译2.仿真波形图a. LPM_ROM图2-4 ROM读
10、写情况b. LPM_RAM图2-5 RAM读写情况图2-6 仿真波形图4. 分析报告a. LPM_ROM 24位数据输出由数码管8-3显示,六位地址由键2、键1输入,键1负责低四位,地址锁存时钟CLK由键8控制,每一次上升沿,将地址锁入,数码管8-3将显示ROM中输出的数据。发光管8-1显示输入的6位地址值。b. LPM_RAM 通过键1、键2输入RAM的8位数据,键3、键4输入存储器的8位地址。键8控制读写允许,低电平时读允许,高电平时写允许;键7(CLK0)产生读写时钟脉冲,即生成写地址锁存脉冲,对lpm_ram_dq进行写/读操作。五、 问题分析如何建立lpm_ram_dq的数据初始化,
11、如何导入和存储lpm_ram_dq参数文件?生成一个MIF文件,并导入以上的RAM中。 数据从左边D7.0输入,从右边Q7.0输出。在lpm_ram_dq中可以加入初始化文件(如:5_ram.mif)。首先控制读出初始化数据,与载入的初始化文件中的数据进行比较,然后控制写入一些数据,再读出比较;写入的数据也可以在读写窗口中观察mif文件的变化,导入的数据存储在mif文件中。实验3 程序计数器PC与地址寄存器AR实验一、 实验内容掌握地址单元的工作原理;掌握PC的两种工作方式,加1计数和重装计数器初值的实现方法;掌握地址寄存器AR从程序计数器PC获得数据和从内部总线BUS获得数据的实现方法。二、
12、 实验原理a. 采用总线多路开关联接方式地址单元主要由三部分组成:程序计数器PC、地址寄存器AR和多路开关BUSMUX。程序计数器PC用以指出下一条指令在主存中的存放地址,CPU正是根据PC的内容去存取指令的。因程序中指令是顺序执行的,所以PC有自增功能。程序计数器提供下一条程序指令的地址,如图4-64所示,在T4时钟脉冲的作用下具有自动加1的功能;在LDPC信号的作用下可以预置计数器的初值(如子程序调用或中断相应等)。当LDPC为高电平时,计数器装入data 端输入的数据。aclr是计数器的清0端,高电平有效(高电平清零);aclr为低电平时,允许计数器正常计数。 地址寄存器AR(DFF_8
13、)锁存访问内存SRAM的地址。地址寄存器AR的地址来自两个渠道,一是程序计数器PC的输出,通常是下一条指令的地址;二是来自于内部数据总线的数据,通常是被访问操作数的地址。为了实现对两路输入数据的切换,在FPGA的内部通过总线多路开关BUSMUX进行选择。LDAR与多路选择器的sel相连,当LDAR为低电平,选择程序计数器的输出;当LDAR为高电平时,选择内部数据总线的数据。图3-1采用总线多路开关联接方式b. 采用PC、AR通过三态门lpm_bustri与BUS连接程序计数器PC与地址寄存器AR结合,产生对存储器RAM进行读写的地址。地址单元主要由三部分组成:程序计数器PC、地址寄存器AR和三
14、态门lpm_bustri。程序计数器PC用以指出下一条指令在主存中的存放地址,CPU正是根据PC的内容去存取指令的。程序计数器提供下一条程序指令的地址,在时钟脉冲PC_CLK的作用下具有自动加1的功能;在LOAD_PC信号的作用下可以预置计数器的初值(如子程序调用或中断响应等)。当LOAD_PC为高电平时,计数器装入data7.0端输入的数据。RST是计数器的清零端,高电平有效(高电平清零);RST为低电平时,允许计数器正常计数。地址寄存器AR采用锁存器lpm_latch结构,锁存访问内存SRAM的地址。图3-2 采用PC、AR通过三态门lpm_bustri与BUS连接三、 实验任务a. 采用
15、总线多路开关联接方式按照图4-1,程序计数器原理图编辑、输入电路,实验台选择0工作模式。对输入原理图进行编译、引脚锁定、并下载到实验台。首先下载pc_unit.sof,用模式键选模式“0”,再按一次右侧的复位键;键2和键1可输入8位总线数据B7.0(此值显示于发光管D1D8和数码管2/1);CLR(键5)按2次(010),产生一正脉冲,高电平清零;LDAR(键6)=0时,BUSMUX输出程序计数器PC的值;LDAR=1时,BUSMUX输出B7.0总线数据。LDPC(键7):程序计数器PC预置控制端,当LDPC=1时,将B7.0总线数据装入程序计数器PC;当LDPC=0时,程序计数器PC处于计数
16、自动工作状态,对T4进行计数;T4(键8):程序计数器PC的计数时钟CLK,键8按动两次产生一个计数脉冲。 通过B7.0设置程序计数器的预加载数据。当LDPC=0时,观察程序计数器自动加1的功能;当LDPC=1时,观察程序计数器加载输出情况。b. 采用PC、AR通过三态门lpm_bustri与BUS连接按照图4-2,对程序计数器原理图进行编辑、输入电路,采用LPM库中的元件lpm_latch锁存器、lpm_counter计数器和lpm_bustri总线三态输出缓冲器进行设计,选择电路模式No.0。四、 实验步骤 1.软件编译2.仿真波形图图3-3 仿真波形图3. 分析报告a. 采用总
17、线多路开关联接方式所有键置0,键2/键1输入A5;按键5àPC计数器清0(0à1à0); 连续按动键8,可以从数码8/7上看到AR的输出,即PC值;按键6,输出高电平 1,选通直接输出总线上的数据A5作为PC值,按键8,产生一个脉冲上升沿,即可看到AR(显示在数码8/7)的输出为A5;使键6=0,仍选通PC计数器输出,这时键2/1输入86,按键7产生一个上升脉冲(0à1à0),即用LDPC将86加载进PC计数器;连续按动键8,可以发现AR的输出在86上累加输出:86、87、88等。b. 采用PC、AR通过三态门lpm_bustri与BUS连接键
18、1、键2输入8位地址数据,键3-8分别作为RST、PC_CLK、LOAD_PC、INPUT_B、PC_B、AR_CLK;D1-D8显示输入的地址数据,数码管1、2显示地址锁存器的输出数据AR7.0,数码管3、4显示程序计数器的输出数据PC7.0。对输入原理如进行编译、引脚锁定,并下载到实验台进行硬件验证。五、 问题分析从存储器读取运算数据和执行指令操作时,地址控制单元完成的操作有何不同?存取运算数据时,PC计数器加一,AR从PC中读取数据;取指令操作时,PC和AR均从总线中读取数据。实验4 算术逻辑单元(ALU)设计实验一、 实验内容了解运算器的数据传输通路;验证运算器的组合功能;掌握算术逻辑
19、运算加、减工作原理;验证实验台运算的8位加、减、与、直通功能;按给定数据,完成几种指定的算术运算和逻辑运算。二、 实验原理算术逻辑单元ALU的数据通路如图4-1所示。图4-1 算术逻辑单元ALU其中运算器ALU181根据74LS181的功能用VHDL硬件描述语言编辑而成,构成8位字长的ALU,VHDL语言的部分示例如图4-2所示。参加运算的两个8位数据分别为A7.0和B7.0。运算模式由S3.0的16种组合决定,而S3.0的值由4位二进制计数器LPM_COUNTER产生,计数时钟是Sclk。ALU181的运算功能由图4-3所示。图4-2 生成ALU的VHDL程序图4-3 ALU181的运算功能
20、三、 实验任务按照图4-1所示,在此验证性示例中用A0_B1(键3)产生锁存信号,将IN7.0的8位数据进入对应的8位数据锁存器中;即首先使A0_B1(键3)=0,用键2、键1分别向A7.0置数(55H),这时在数码管2、1上显示输入的数据(55H);然后用键3输入高电平1,再用键2、键1分别向B7.0置数(AAH),这时在数码管4、3上显示输入的数据(AAH);这时表示在图中的两个8位数据锁存器中分别锁入了加数55H和被加数AAH。设定键8为低电平,即M=0(允许算术操作),键6控制时钟Sclk。若设定键8为高电平,即M=1,键6控制时钟Sclk,设置S3.0=0-F,键7设置CN=0或CN
21、=1,验证ALU的逻辑运算功能,并记录实验数据。四、 实验步骤 1.软件编译2.仿真波形图与ALU数据表表4-1 ALU数据表S3S2S1S0A7.0B7.0算术运算M=0逻辑运算M=1CN=0(无进位)CN=1(有进位)0000AA55AAAB550001AA55FF00000010AA55AAAB550011AA5500FF000100AA555455FF0101AA55A9AAAA0110AA555554FF0111AA55AAA9AA1000AA55AAAB551001AA55FF00001010AA55AAAB551011AA5500FF001100AA555455011101AA5
22、5A9AAAA1110AA555455FF1111AA55AAA9AA图4-4 ALU仿真波形图3.分析报告ALU数据表主要由计算得出,在给予S3、S2、S1和S0的初始值的前提下,根据图4-3中的公式,使用算术计算或逻辑计算,得到所求值得结果,再在数码管的显示中判断自己的计算是否正确。五、 实验结果及问题分析或结论在实验中,我们得到了正确的实验结果及波形图,在下载到试验箱后,也看到了正确的显示。实验5 微控制器组成实验一、 实验内容掌握微程序控制器的工作原理和构成原理;掌握微程序的编写、输入,观察微程序的运行。二、 实验原理微程序控制电路是CPU控制器的核心电路,控制产生指令执行时各部件协调
23、工作的所有控制信号,以及下一条指令的地址。微程序控制器的组成如图5-1所示,主要由三个部件组成,分别是微指令控制电路、微指令寄存器和微指令存储器LPM_ROM。图5-1微程序控制器的电路结构a. 微指令控制电路微指令控制电路用组合电路对指令中的I7.2、操作台控制信号SWA和SWB的状态、状态寄存器的输出状态FC、FZ,产生微地址变化的控制信号,实现对微地址控制,原理图如图5-2所示:图5-2 微指令控制电路b. 微地址寄存器电路微地址寄存器控制电路的基本输入信号是微指令存储器的下地址字段M6.1,同时还受微指令控制电路的输出信号SE6.1和复位信号RST的控制,输出下一个微指令的地址;原理图
24、如图5-3所示:图5-3 微地址寄存器电路c. 数据寄存器译码控制电路在指令中除了操作码以外,还有源操作数寄存器和目的操作数寄存器。原理图如5-4所示:图5-4 数据寄存器译码控制三、 实验任务a. 微指令控制电路输入图5-2微指令控制电路,并按照图中说明锁定引脚,编译、下载到实验系统中,选择实验台电路模式1。根据微程序控制器的内部结构,记录当FC、FZ变化时,微指令I7.2的变化对输出微地址控制信号SE6.1的影响。观察、记录当微指令I7.2的值变化时,SE6.1的变化情况。观察、记录分支信号P4.1有效时,微指令I7.2的变化对输出微地址控制信号SE6.1的影响。观察、记录SWA、SWB对
25、输出微地址控制信号SE6.1的影响。b. 微地址寄存器电路输入图5-3微地址寄存器电路,并按照图中说明锁定引脚,编译、下载到实验系统中,选择实验台电路模式1。观察记录微地址寄存器在正常工作情况下,由d6.1输入、q6.1输出的微地址实验数据,以及发生控制/转移情况下,当S6.1信号有效时,q6.1输出的微地址发生变化的情况。c. 数据寄存器译码控制电路输入图5-4数据寄存器译码控制电路,并按照图中说明锁定引脚,编译、下载到实验系统中,选择实验台电路模式5。观察、记录微指令信号中I3.0的变化,控制信号LDRI、RD_B、RS_B、RJ_B的变化,对输出选通信号LDR0-LDR2、R0_B-R2
26、_B的影响。四、 实验步骤 1.软件编译2.分析报告a. 微指令控制电路键1、键2输入6位微指令数据I7.2,键2中的高两位还作为标志位FC、FZ;键3输入分支控制信号P4.1;键4输入控制台的控制信号SWA、SWB;键8输入节拍信号T4;数码管5、6显示微地址控制信号SE6.1。b. 微地址寄存器电路键1、键2输入D触发器数据d6.1;键4、键3输入D触发器置“1”控制信号S6.1,低电平有效;键7输入D触发器复位(清零)控制信号,低电平有效;键8输入时钟信号CLK;数据管7、8显示D触发器输出信号q6.1。c. 数据寄存器译码控制电路LDR0-LDR2、R0_B-R2_B发光管显示出译码的
27、结果。五、 问题分析当控制信号SWA、SWB取不同的值时,对微指令控制电路中输出S6.1有何影响?SE6=1SE5=(FC+FZ)+T4+P3SE4=I7+T4+P1SE3=I6+T4+P1SE2=(I5*T4*P1+ I3*T4*P2+ SWB*T4*P4)SE1=(I4*T4*P1+ I2*T4*P2+ SWA*T4*P4)实验6 基本模型机设计与实现一、 实验内容深入理解基本模型计算机的功能和组成知识;深入学习计算机各类典型指令的执行流程;学习微程序控制器的设计过程和相关技术,掌握LPM_ROM的配置方法;在掌握部件单元电路实验的基础上,进一步将单元电路组成系统,构造成一台基本模型计算机
28、;定义五条机器指令,并编写相应的微程序,上机调试,掌握计算机整机概念,掌握微程序的设计方法,学会编写二进制微指令代码表;通过完整的计算机的设计,全面了解并掌握微程序控制方式计算机的设计方法。二、 实验原理在微过程的控制下自动产生各部件单元控制信号,实现特定的功能。实验中,计算机数据通路的控制将由微过程控制器来完成,CPU从内存中取出一条机器指令到指令执行结束的一个指令周期,全部由微指令组成的序列来完成,即一条机器指令对应一个微程序。本实验采用五条机器指令:IN(输入)、ADD(二进制加法)、STA(存数)、OUT(输出)、JMP(无条件转移)。8位模型计算机的数据通路框图如图6-1所示,微指令
29、流程图如图6-2所示。图6-1 8位CPU的顶层设计电路原理图图6-2 微指令流程图三、 实验任务了解所有控制信号的作用;掌握在QuartusII环境下,采用图形编辑方法的设计技术;掌握在微程序控制下机器指令的写入、读出和程序设计方法;掌握LPM_RAM的配置方法,实现对机器指令输入;掌握微程序的设计方法,学会编写二进制微指令代码表;掌握对LPM_ROM的配置方法,实现微指令代码表的输入;设计新的指令和包含新指令的程序,在此CPU中运行。四、 实验步骤 1.软件编译2.仿真波形图无3.分析报告通过液晶屏,观察各相关寄存器、ALU、DR1、PC、IR、AR、BUS、MC等内容的变化情况,根据图6
30、-2微指令控制流程,单步跟踪微程序的执行情况。通过INPUT(键2、键1)输入运算数据,跟踪程序的执行情况,并详细记录每条微指令执行后,相关单元输出数据的变化情况,依次执行机器指令,从而验证所设计的正确性。最终可由液晶屏的显示得到程序设计取得了正确的结果。五、 问题分析除了已有的IN、ADD、STA、OUT、JMP指令外,再设计减法SUB、带进位加法ADDC、逻辑与AND、逻辑或OR和异或XOR指令,共10条指令;编写相应微程序流程图,写出微程序代码表,硬件实现选作。在原有指令的基础上再添加五条新指令,微指令流程图如下:图6-3 补充后的微指令流程图实验7 K8051单片机核基本系统构建和测试
31、一、 具体应用描述在本次实验中,我们使用K8051单片机核进行音乐播放器的构建和测试;在实验中,我们使用了中断发声的方式,使用8051芯片内置定时器1的模式1(16位计时模式)来产生驱动喇叭的方波,通过设置计时值来控制产生声波的频率,而音节播放的时间通过使用循环指令实现;通过对载入ROM内的汇编程序进行进一步编辑,我们在原有播放音乐的基础上,进一步加入了暂停、快进、切歌的功能。二、 Quartus下硬件设计原理图、模式及引脚说明1. 硬件设计原理图 图7-1 硬件设计原理图我们使用K8051单片机核,单片机工作时钟设置在20MHz。2. 模式及引脚说明在实验中我们使用模式1,其中,复位键由键8
32、控制,高电平复位;键1控制快进,0为不快进,1为快进;键2控制暂停,0为不暂停,1为暂停;键3控制切歌,0为第一首歌,1为第二首歌。根据各键的功能锁定引脚。除此之外,数码管8、7显示当前播放的音符,数码管1显示快进键的当前值,数码管2显示暂停键的当前值,数码管显示切歌键的当前值,从而方便调试与运行。除此之外,Dx发光管也根据频率闪烁。结 束快进判断是否暂停判断是否快进取下一个音符和时长初始化切歌判断是否切歌开 始暂停三、 软件设计流程图及相关描述首先,对初始环境进行初始化,然后判断切歌键是否按下,若按下,则根据按键来判断播放的音乐,若未按下,则继续播放;再判断是否按下暂停键,若按下,则暂停播放
33、,否则继续播放;再判断是否按下快进键,若按下,则快进播放乐曲,否则以正常速度播放。四、 音符计时值表格及计算方法图7-2 各音符不同八度的频率计时值 = 65536-11M/(12×频率×2)经过计算得到的音符频率如下:图7-3 计算得的各音符计时值五、 汇编源代码(需加详细注释) ;用定时器T1方式1来产生歌谱中各音符对应频率的方波,由P1.0输出驱动喇叭。;节拍控制可通过调用延时子程序次数来实现。SPK EQU P1.0 ; 蜂鸣器所在端口PAUEQU P0.4QUIEQU P0.0SWI EQU P3.0ORG0000H;程序入口地址JMPSTARTORG001BH;
34、timer1中断处理程序入口地址JMPTIME ;*;30H TAB OFFSET;31H DELAYCON OFFSET;32H TAB2 OFFSET;33H DELAYCON2 OFFSETORG0035HSWIVALUE:DB 01H;35HSWI VALUEORG0040HSTART:MOVTMOD,#10H;timer1方式1,16进制计数MOVIE,#88H;允许timer1中断MOV30H,#0HMOV31H,#0HMOV32H,#0HMOV33H,#0HAG5:;CALLDELAYTEST;JMPAG5CLREACLRTR1MOVR1,#0E0HMOVR0,#00HMOVA,
35、R1 MOV P2,AMOVTH1,R1;计数值高8位MOVTL1,R0;低8位SETBTR1SETBEA;JMPAG5AG2:CLREAMOVA,SWIVALUE ;对切歌键的输入进行判断做数据准备ORLA,#0HJNZAG20MOVDPTR,#TAB1;乐谱1始地址MOVA,30HMOVCA,A+DPTRMOV R1,A;高8位INC30HMOVA,30HMOVDPTR,#TAB1;乐谱1始地址MOVCA,A+DPTRMOVR0,A;低8位JMPAG21AG20:MOVDPTR,#TAB2;乐谱2始地址MOVA,32HMOVCA,A+DPTRMOV R1,A;高8位INC32HMOVA,3
36、2HMOVDPTR,#TAB2;乐谱2始地址MOVCA,A+DPTRMOVR0,A;低8位AG21:SETBEAMOVA,R1MOV P2,AORLA,#00HJNZAG31JMPSTARTAG31:CLREACLRTR1MOVTH1,R1;计数值高8位MOVTL1,R0;低8位SETBTR1SETBEAMOVA,SWIVALUEORLA,#0HJNZAG22MOVA,31HMOVDPTR,#DELAYCON1;DELAYCON地址(音符的持续时长)MOVCA,A+DPTRJMPAG23AG22:MOVA,33HMOVDPTR,#DELAYCON2;DELAYCON地址MOVCA,A+DPTR
37、JMPAG23AG23:MOVR2,A;延时常数LOOP1:JMPDELAYAG33:DJNZR2,LOOP1;CPLP0.5MOVA,SWIVALUEORLA,#0HJNZAG24INC30HINC31HJMPAG25AG24:INC32HINC33HAG25:AJMPAG2;*产生定时延迟*;200MSDELAY:MOVR4,#006HDEL1:MOVR3,#0FFHAG1:MOVR5,#0FFHDJNZR5,$DJNZR3,AG1 ;SWITCHJBSWI,AG28;SWI=0MOVA,SWIVALUEORLA,#0HJZAG29;35H=1MOVSWIVALUE,#00HJMPSTAR
38、TJMPAG29AG28:;SWI=1MOVA,SWIVALUEORLA,#0HJNZAG29;35H=0MOVSWIVALUE,#1HJMPSTARTAG29:;PAUSE暂停JNBPAU,AG8CLRTR1AG9:JNBPAU,AG11JMPAG9AG11:SETBTR1AG8:;QUICK快进JNBQUI,AG12JMP AG13AG12:DJNZR4,DEL1AG13:JMPAG33;200MSDELAYTEST:MOVR4,#011HDEL10:MOVR3,#0FFHAG10:MOV A,R1MOV R6,AAG30:NOPNOPNOPNOPNOPNOPNOPNOPDJNZ R6,AG30CPLP1.
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 纱线环保染料的研发与应用考核试卷
- 废弃资源综合利用的水环境与水资源保护技术考核试卷
- 泡沫塑料的耐候性与耐久性研究考核试卷
- 玻璃纤维增强塑料的耐应力松弛性能评估考核试卷
- 皮革制品的绿色制造与可持续发展考核试卷
- 站内商业资源整合与创新发展模式探索考核试卷
- 矿物在风力发电叶片材料中的应用考核试卷
- 森林改培与生态保护与生态保护与生态恢复材料应用考核试卷
- 珠海市普通高中上学期高二英语期末模拟试题
- 上海市实验学校2025届高三高考全真模拟卷(四)数学试题含解析
- T-CACM 1218-2019 中医骨伤科临床诊疗指南 股骨粗隆间骨折
- 园林植物器官的识别-园林植物营养器官的识别
- PB塑料加工工艺
- 《用户画像-大数据时代的买家思维营销》读书笔记
- 产妇护理脓毒血症
- 《抢救记录书写》课件
- 2023年英语四级听力真题(第一套)题目-原文与答案
- 有机化学(下)实验操作考试试题 标准答案和评分标准
- 船舶概论课件
- 数据安全与保护:确保企业数据安全与合规性
- 大学生创业基础智慧树知到课后章节答案2023年下湖北工业大学
评论
0/150
提交评论