微机原理与接口技术电子琴实验mimi

合集下载

《微机原理与接口技术》实验指导书

《微机原理与接口技术》实验指导书

《微机原理与接口技术》课程实验指导书实验内容EL-8086-III微机原理与接口技术教学实验系统简介使用说明及要求✧实验一实验系统及仪器仪表使用与汇编环境✧实验二简单程序设计实验✧实验三存储器读/写实验✧实验四简单I/0口扩展实验✧实验五8259A中断控制器实验✧实验六8253定时器/计数器实验✧实验七8255并行口实验✧实验八DMA实验✧实验九8250串口实验✧实验十A/D实验✧实验十一D/A实验✧实验十二8279显示器接口实验EL-8086-III微机原理与接口技术教学实验系统简介使用说明及要求EL-8086-III微机原理与接口技术教学实验系统是为微机原理与接口技术课程的教学实验而研制的,涵盖了目前流行教材的主要内容,该系统采用开放接口,并配有丰富的软硬件资源,可以形象生动地向学生展示8086及其相关接口的工作原理,其应用领域重点面向教学培训,同时也可作为8086的开发系统使用。

可供大学本科学习《微机原理与接口技术(8086)》,《单片机应用技术》等课程提供基本的实验条件,同时也可供计算机其它课程的教学和培训使用。

为配合使用EL型微机教学实验系统而开发的8086调试软件,可以在WINDOWS 2000/XP等多种操作系统下运行。

在使用本软件系统调试程序时,可以同时打开寄存器窗口、内存窗口、反汇编窗口、波形显示窗口等等,极大地方便了用户的程序调试。

该软件集源程序编辑、编译、链接、调试与一体,每项功能均为汉字下拉菜单,简明易学。

经常使用的功能均备有热键,这样可以提高程序的调试效率。

一、基本特点EL型微机教学实验系统是北京精仪达盛科技有限公司根据广大学者和许多高等院校实验需求,结合电子发展情况而研制的具有开发、应用、实验相结合的高科技实验设备。

旨在尽快提高我国电子科技发展水平,提高实验者的动手能力、分析解决问题能力。

系统具有以下特点:1、系统采用了模块化设计,实验系统功能齐全,涵盖了微机教学实验课程的大部分内容。

微机原理课程设计——简易电子琴实验

微机原理课程设计——简易电子琴实验

微机原理与接口技术课程设计——简易电子琴的设计作者:王雨轩指导老师:张金花摘要:本设计主要是利用可编程并行I/O接口芯片8255,通过对电子琴主体部分的电路进行模仿设计,达到电子琴固有的基本功能,故叫简易电子琴。

利用定时器可发出不同频率的方波的原理,使不同频率的方波进入蜂鸣器发出不同音调。

Abstract: This design mainly is to use programmable parallel I/O interface chip 8255 to design the main body part of the electronic keyboard’s circuit,to achieve the basic function of the inherent.So called simple electronic keyboard.The principle of using the timer can make different frequency square wave,let the different frequency square wave into the buzzer to make different tones.关键字:微机原理接口技术 8255 电子琴目录说明书总页数:14页简易电子琴的设计 (3)一、课题要求与内容 (3)(一)课题要求 (3)(二)课题内容 (3)(三)使用设备 (3)二、系统总体方案设计 (4)(一)系统流程图 (4)三、系统硬件设计 (5)(一)设计原理图 (5)(二)主机连线说明 (5)(三)硬件调试 (5)四、系统软件设计 (6)(一)程序清单 (6)(二)软件调试 (12)五、结束语 (13)六、参考文献 (14)简易电子琴的设计随着电子科技的飞速发展,电子技术正在逐渐改善着人们的学习、生活、工作。

计算机是一种严格按照时序进行工作的数字化、智能化机器,实现电子琴的微型化,可以用作玩具琴、音乐转盘以及音乐童车等等。

简易电子琴实验

简易电子琴实验

哈尔滨理工大学单片机原理及接口技术课程设计报告设计题目:简易电子琴实验专业:电机与电器班级:电机10-1姓名:刘国生学号:1030350111《单片机原理及接口技术》课程设计任务书课题描述随着社会发展,计算机硬件技术越来越多的应用到生活中的各个领域,人们对软硬件技术结合开发出来的产品的要求越来越迫切,需求日益增加,如今用软硬件结合设计电子产品已经成为了一大时尚。

本设计编写的一个用开关模拟电子琴的程序,以8086作为处理器,用8255接八个开关K1~K8,做电子琴按键输入,以8253控制扬声器,拨动不同的开关,发出相应的音阶。

其中K1代表静音,K2发si的音,K3发la 的音,K4发sol的音,K5发fa的音,K6发mi的音,K7发re的音,K8发do的音。

开发工具:汇编语言;DICE-8086K实验系统。

电子琴是现代电子科技与音乐结合的产物,是一种新型的键盘乐器。

它在现代音乐扮演着重要的角色,单片机具有强大的控制功能和灵活的编程实现特性,它已经溶入现代人们的生活中,成为不可替代的一部分。

一、课程设计目的1、通过本次课程设计加深对单片机课程的认识和掌握,对单片机的应用做进一步了解。

2、通过本次课程设计提高学生的编程能力、调试能力、文献资料查阅能力,为毕业设计和以后工作打基础。

3、学生的创新意识,巩固了解汇编语言知识并要掌握8255芯片的使用并熟悉实验系统。

4、掌握蜂鸣器的使用方法;掌握蜂鸣器的不同发音的方法。

二、实验内容1、简易电子琴原理:(1)蜂鸣器输入不同频率的方波,会发出不同的声音(2)通过按键,由单边机控制产生不同频率的方波,从而发出不同的声音。

2、实验过程(1)通过单边机,使G6区的1到7号键由低到高发出1到7的音阶。

三、功能简介本简易电子琴的设计可实现的功能如下:通过一个独立键盘可以实现对该音乐的播放和停止操作的控制。

连续按下不同的按键,可以实现乐曲的演奏。

当按下某一按键,会发出相应的音调。

微机原理课程设计 电子琴课程设计报告

微机原理课程设计 电子琴课程设计报告

计算机与信息工程系《系统接口设计》报告电子琴课程设计院系:计算机信息工程系专业:计算机应用班级:Z090551班学号:Z09055115姓名:刘莎指导老师:赵国增完成时间:2011年6月10日评语:成绩:批阅教师签名:批阅时间:目录摘要 (1)第1章电子琴课程设计 (2)1.1 电子琴课程设计的目的与意义 (2)1.1.1 电子琴课程设计的目的 (2)1.1.2 电子琴课程设计的意义 (2)1.2 电子琴课程设计的内容与要求 (2)1.2.1 电子琴课程设计的内容 (2)1.2.2 电子琴课程设计的要求 (3)1.3 电子琴课程设计应解决的主要问题 (3)第2章电子琴课程设计的原理、思路和流程图 (3)2.1 电子琴课程设计的原理 (3)2.1.1 各个音节频率的设定 (4)2.1.2 电路连接图 (4)2.2 电子琴课程设计思路 (5)2.3 电子琴课程设计的流程图 (5)第3章电子琴课程设计的源代码 (9)第4章系统调试与运行 (20)4.1 电子琴课程设计运行结果 (20)4.2 电子琴课程设计的特色和改进方向 (21)第5章心得体会 (22)参考文献 (22)摘要随着科技的高速发展,计算机已经经过了好几代的更新,然而计算机的运行的基本原理依然没有改变的。

而今,我们通过两年的学习,已经初步了解了计算机的基本结构和原理,并且已经学会了用汇编语言进行基本的程序编写。

而本次课程设计的主要目的就是巩固所学过的知识,用汇编语言熟练地运用三大结构,进一步掌握一些指令的功能、掌握子程序的定义及调用和中断的使用,同时熟练运用通用寄存器和堆栈来进行编写一个完整的具有某种特定功能的程序。

这个简易的电子琴设计采用了软硬件结合的方法完成了设计的要求不。

应用了8255和8253的芯片,CPU和8086达到软硬件的结合。

从而实现了PC机电子琴的弹奏和播放音乐的两种功能:1 、弹奏用户每按奏一个键盘琴键就会发出相应的音符;2、按下键盘上某些特定的键后,会自动弹奏预存琴谱的功能。

微机原理——简易电子琴

微机原理——简易电子琴

课程名称:微型计算机原理与接口技术设计题目:模拟简易电子琴一、题目分析题目:模拟简易电子琴1.由于题目要求该程序有多个功能,而且是分工合作,所以采用菜单选择形式实现多功能实现在一个程序里,再用不同的子函数实现不同的功能,用主函数在不同的输入指令下调用不同的子程序来实现不同的功能。

2.为了使计算机无需音响输出设备就可以发声,我们利用ROM BIOS中的BEEP子程序,它能根据BL中给出的时间计数值控制8254定时器,产生持续声音。

通过对BEEP的修改可以使其产生任一频率的声音。

用汇编语言编写的程序GENSOUND,能使PC机发出指定频率和指定延迟时间的声音,它是一个很好的通用发声程序。

组成乐曲的每个音符的频率值和持续时间是乐曲发声程序所必须的两组数据,知道了音调及频率的关系后,就可以按照乐曲的乐谱将每个音符的频率和持续时间定义成两个数据表,然后编程依次取出表中的频率值和时间值,调用GENSOUND程序发出各种声音,本程序通过调用GENSOUND程序演奏乐曲。

二、总体设计1.把所有变量写进data中,完成data和stack的定义;2.利用宏的定义设计功能菜单,在程序中为了能够循环起来,运用比较(cmp)和跳转(jz)使菜单循环起来;3.写一个在模拟钢琴中,已经有的音乐,我们以粉刷匠这首儿歌为例,把它插在其中实现原有音乐的播放;4.根据PC机的键盘数字八度音程的钢琴程序,整理,能发出6,7,1,2,3,4,5,6,7,i,十个音调三、实验环境,在其中运用,子程序的调用和宏定义;5.运用录音的功能把在上一个用键盘实现按键功能的音乐录下来,在写一个播放音乐的子程序,调用录音子程序,实现回放功能;三、实验环境1.用editplus去编写汇编语言;2.用masm去编译,再用link去连接,然后在dos运行exe文件。

四、制作步骤1.编写步骤,我们采用不同子程序整合为一个总程序的办法逐步实现2. 运行步骤,按1键演奏乐曲,按2键可以演奏歌曲,在输入音键的同时输出相应音符并在屏幕上显示出来,按3键演奏刚刚在步骤2中用户演奏的乐曲,按0键自行推出程序,。

微机原理与接口技术实验报告

微机原理与接口技术实验报告

微机原理与接口技术实验报告微机原理与接口技术实验报告一、引言微机原理与接口技术是计算机科学与技术专业中的一门重要课程,通过学习该课程可以了解计算机硬件的基本原理和接口技术的应用。

本实验报告旨在总结和分析我们小组在该课程中进行的实验内容和实验结果,以及对所学知识的理解和应用。

二、实验目的本次实验的主要目的是通过实际操作,深入理解微机原理和接口技术的相关知识,掌握计算机硬件的基本原理和接口技术的应用方法。

具体实验目标如下:1. 熟悉计算机硬件的基本组成和工作原理;2. 学习并掌握接口技术的基本原理和应用方法;3. 能够使用接口技术实现不同设备之间的数据传输和通信。

三、实验内容本次实验主要包括以下几个方面的内容:1. 计算机硬件的基本组成和工作原理:通过拆解和组装计算机主机,了解主板、CPU、内存、硬盘等硬件组件的作用和相互连接方式,以及计算机的工作原理。

2. 接口技术的基本原理和应用方法:学习串口、并口、USB等接口的工作原理和应用场景,了解不同接口的特点和使用方式。

3. 使用接口技术实现数据传输和通信:通过编写程序和使用相应的接口设备,实现计算机与外部设备之间的数据传输和通信,如串口通信、并口通信等。

四、实验过程与结果在实验过程中,我们首先进行了计算机硬件的拆解和组装实验,通过拆解主机并观察各个硬件组件,深入了解了计算机的内部结构和工作原理。

然后,我们学习了串口和并口的基本原理和使用方法,并通过实际操作进行了串口和并口通信的实验。

最后,我们使用USB接口实现了计算机与外部设备之间的数据传输和通信。

在实验中,我们成功地通过串口实现了计算机与打印机之间的数据传输和通信,实现了打印机的控制和数据输出。

同时,我们还通过并口实现了计算机与外部设备之间的数据传输和通信,成功地控制了外部设备的运行和数据输入。

此外,我们还成功地使用USB接口实现了计算机与移动存储设备之间的数据传输和通信,实现了文件的读写和存储。

微机原理与接口技术_汇编语言,单片机设计简易电子琴

微机原理与接口技术_汇编语言,单片机设计简易电子琴

微机原理与接口技术_汇编语言,单片机设计简易电子琴微机原理与接口技术课程设计报告电子琴(八音盒)目录1 课题描述 ..................................................................... . (1)1.1 DICE-8086k试验系统 ..................................................................... .. (1)1.2 8255与8253结构 ..................................................................... (1)1.3功能说明 ..................................................................... . (4)2 设计过程 ..................................................................... . (6)2.1硬件设计...................................................................... . (6)2.2软件设计...................................................................... . (6)2.3系统原理说明 ..................................................................... (7)3 测试 ..................................................................... ........................................................................9总结 ..................................................................... ........................................................................10附录代码 ..................................................................... . (11)参考文献 ..................................................................... (13)1 课题描述随着社会发展,计算机硬件技术越来越多的应用到生活中的各个领域,人们对软硬件技术结合开发出来的产品的要求越来越迫切,需求日益增加,如今用软硬件结合设计电子产品已经成为了一大时尚。

微机原理及接口技术实验指导书

微机原理及接口技术实验指导书

微机原理及接口技术实验指导书书写实验名称时请按下表内容填写:实验一、熟悉实验运行环境实验一、实验目的1、熟悉汇编语言程序的调试环境2、掌握部分DEBUG命令二、实验内容编写一个汇编语言程序,计算1+2+3+…+99+100,并将结果存入SUM字单元。

通过调试程序熟悉汇编语言的上机操作过程及部分命令。

三、上机操作过程1、建立ASM文件(编辑源程序)使用编辑程序EDIT在磁盘上建立源程序EX.ASM例如:D:\MASM>EDIT EX.ASM用MASM程序产生OBJ文件源文件建立后,就要用汇编程序对源文件汇编,汇编后产生二进制的目标文件(OBJ文件)例如:D:\MASM>MASM EX3 、用LINK程序产生EXE文件汇编程序已产生出二进制的目标文件(OBJ),但OBJ文件并不是可执行文件,还必须使用连接程序(LINK)把目标文件转换为可执行的EXE文件例如:D:\MASM>LINK EX4、调试运行在建立了EXE文件后,就可以直接从DOS执行程序。

如果用户程序有错误或者没有直接将结果在终端上显示出来,程序执行完之后无法看见正确的结果。

那么怎么知道程序执行的结果是正确的呢?此外,大部分程序必须经过调试阶段才能纠正程序执行中的错误,得到正确的结果。

这里就要使用调试程序。

例如:D:\MASM>DEBUG EX.EXE①R命令显示或修改寄存器中的内容例如:_R BXBX 0369:059E不作修改,直接回车;否则键入修改内容,并回车②U命令反汇编a、_U[地址] 从指定地址开始,反汇编32个字节。

如果地址省略,则从上一个U命令的最后一条指令的下一个单元开始显示32个字节b、_U[范围] 对指定范围的内存单元进行反汇编例如:_U 04BA:0100 0108③T命令单步执行命令(一次执行一条指令)例如:从代码段的0000H处开始单步执行_R IPIP XXXX: 0000_T④G命令执行命令(执行多条指令)_G 地址1 地址2表示从地址1开始执行指令到地址2结束例如:从代码段的0000H处开始连续执行指令,知道0013H处_R IPIP XXXX: 0000_G 0013⑤D命令显示内存单元的内容a、_D 地址b、_D 范围例如:显示数据段中0000H开始的若干个字节单元的内容_D DS:0000例如:显示数据段中0000H到0010H各字节单元的内容_D DS:0000 0010⑥E命令修改存储单元的内容例如:修改数据段0002H字节单元的内容为0FFH_E DS:0002XXXX:0002 XX FF⑦Q命令退出DEBUG程序实验二、分支程序设计一、实验目的1、掌握分支程序的结构形式2、掌握分支程序的设计方法 二、实验内容1、计算分段函数,X 为8位带符号数2、算法分析先将X 的范围确定在-10≤x ≤20之内,除此之外结果全为0,然后计算X+5,再根据结果的符号求绝对值。

《微机原理与接口技术》课程设计--简易电子琴设计

《微机原理与接口技术》课程设计--简易电子琴设计

微机原理与接口技术课程设计简易电子琴的设计摘要本次设计主要是通过对电子琴主体部分的电路进行模仿设计,达到电子琴固有的基本功能,故叫简易电子琴。

利用定时器可发出不同频率的方波,不同频率的方波经喇叭就会发出不同音调。

其次,定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平,由于定时参数不同,就发出不同频率的方波,本设计中按键一次,会发出方波,松开后随之延时,但在延时的期间继续检测按键,若此时又有键被按下,若被按下的仍为原键则声音不变,否则键盘会译出被按下的另一个键的音调。

单片机控制通用MIDI音源模块制作出的电子琴,结构简单,可靠性高,并且价格低廉,具有实用的价值。

这种电子琴能够支持单音和复音弹奏,如果与高品质的音源芯片连接,音质更可与高档电子琴相媲美。

手机中通用的音乐芯片构成音源模块,效果不错,价格更低廉,如韩国产的QS6400 等,这些芯片的驱动要复杂一些,需要对芯片进行初始化设置。

此外还有音乐盒、附有生日歌的生日卡片等等。

所以利用微机制作的简易电子琴在我们的日常生活中随处可见。

第一章简易电子琴的硬件设计方案1.1简易电子琴的设计构想⑴采用8个拨码开关为输入(其中SB1~SB7为简易电子琴的弹奏按键,另外一个SB0作为控制自动弹奏预存琴谱的开关);⑵扬声器为输出;⑶由输入控制输出,即拨码开关控制扬声器;1.2 简易电子琴的功能与要求⑴功能一弹奏:用户每按一个键盘琴键就弹奏相应的音符;⑵功能二演奏:按下键盘上某一个指定的建后自动弹奏预存琴谱功能;1.3 简易电子琴硬件设计方案的确定⑴根据扬声器发声原理可知:不同频率的方波通过扬声器可发出不同的声音。

⑵由此构想运用8253工作在方式3的状态下控制其2#计数器对应寄存器中的数值,然后将输出端口OUT2产生的方波通过扬声器转换成为声音。

⑶为了实现弹奏按键(即拨码开关)来控制扬声器,可以通过用拨码开关改变8253(工作在方式3的状态下)2#计数器对应寄存器中的数值,8253输出端口OUT2通过反相器后与扬声器相连接。

微机原理与接口技术课程设计实验报告

微机原理与接口技术课程设计实验报告

微机原理与接口技术课程设计实验报告2006年12月23日星期六上午01:26微机接口课程设计实验报告计算机31班秦鹏程03055014实验一电子琴一、实验目的1.通过D/A转换器产生模拟信号,使PC机作为简易电子琴2.了解利用数模转换器产生音乐的基本方法二、实验内容实验电路如图所示,8253的CLK0接1MHz时钟,GATE0接+5V,OUT0接8255的PA0,J1接喇叭,编程使计算机的数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音阶。

三、编程提示1.对于一个特定的D/A转换接口电路,CPU执行一条输出指令将数据送入D/A,即可在其输出端得到一定的电压输出,给D/A转换器输入按正弦规律变化的数据,在其输出端即可产生正弦波,对于音乐,每个音阶都有确定的频率。

各个音阶标称频率值:音阶频率:(单位Hz)1 261.12 293.73 329.64 349.25 392.06 440.07 493.92.产生一个正弦波的数据可取32个(小于亦可),不同频率的区别,可通过调节向A/D转换器输出数据的时间间隔,例如:发“1”频率为261.1Hz周期为1/261.1=3.83.ms,输出数据的时间间隔为3.83/32=0.12ms,定时时间可以由8253配合8255实现,按下某键后发音时间的长短可以由发出的正弦波的个数多少来控制。

3.程序流程4.源程序data segmentdata1 db 80h,96h,0aeh,0c5h,0d8h,0e9h,0f5h,0fdh;正弦波数据数据区db 0ffh,0fdh,0f5h,0e9h,0d8h,0c5h,0aeh,96hdb 80h,66h,4eh,38h,25h,15h,09h,04hdb 00h,04h,09h,15h,25h,38h,4eh,66htime db 120,106,94,89,79,70,63,59;发不同音时的计数器初值msg db 'Press 1,2,3,4,5,6,7,8,Esc:',0dh,0ah,'$'num db ? ;8253计数器初值的序号data endscode segmentassume cs:code,ds:datastart:mov ax,datamov dx,offset msgmov ah,9int 21h ;显示提示信息sss:mov ah,7int 21h ;从键盘接收字符不回显cmp al,1bhje exit ;若为Esc键,则转Exitcmp al,31hjl ssscmp al,38hjg sss ;若不在'1'~'8'之间转ssssub al,31mov num,al ;求出相应的时间常数的序号mov cx,60 ;取次个正弦波数据ddd:mov si,0lll:mov al,data[si] ;取正弦波数据mov dx,290hout dx,al ;放音call delay ;调延时子程序inc sicmp si,32 ;是否取完个数据jl lllloop ddd ;总循环次数是否完,若没有,则继续jmp sssexit:mov ah,4chint 21hdelay proc near ;延时子程序ccc: mov bx,offset timemov dx,283hmov al,10hout dx,almov dx,28bh ;设A口输入mov al,9bhout dx,almov al,num ;取相应的时间常数xlatmov dx,280hout dx,al ;向计数器输出kkk:mov dx,288hin al,dx ;从A口读一个字节test al,01 ;判PA0口是否为jz kkkret ;子程序返回delay endpcode endsend start四、实验现象在DOS环境下,用汇编程序进行汇编,生成DZQ.EXE可执行程序,并运行可执行程序。

微机原理课程设计—电子琴的设计

微机原理课程设计—电子琴的设计

课程设计任务书学生姓名:刘沛专业班级: 电气0901指导教师:张锐工作单位:自动化学院题目:计算机电子琴软件软件设计初始条件:1.用于调试程序的IBM兼容PC机一台;2。

安装DOS/WIN98操作系统或运行于DOS/ WIN98兼容方式;3。

EDIT 等文本编辑器输入80x86汇编程序,MASM 5。

0编译及链接程序。

要求完成的主要任务:(包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.使用汇编语言设计一个运行于计算机的电子琴软件,软件应实现弹奏功或演奏。

其中弹奏:用户每按一琴键弹奏相应音符;演奏:按下某键后自动弹奏预存琴谱功能;还可以附加变调、变速和记录创作等其它功能。

2.说明书撰写格式应符合《课程设计说明书统一书写格式》。

时间安排:1。

程序框图设计,3天2。

编程,4天3。

调试,3天4.编写设计报告,4天指导教师签名:年月日系主任(或责任教师)签名:年月日目录摘要 (I)1 设计任务和思路 (1)1.1设计任务 (1)1.2设计思路 (1)2更件部分工作原理 (2)2。

1 8255工作原理 (2)2.2 8253工作原理 (2)3程序流程图 (4)3.1主程序流程图 (4)3。

2演奏子程序流程 (5)3.3音乐播放子程序流程 (6)3.4弹奏子程序流程图 (6)3.5发音子程序流程图 (7)4各部分功能实现说明 (7)4。

1 发音部分功能实现 (7)4。

2 变调功能的实现 (8)4.3 弹奏功能的实现 (8)4.4演奏功能的实现 (9)4.4。

1歌曲选择功能实现 (9)4.4。

2 音乐播放功能实现 (9)5 程序运行结果 (10)结束语 (12)参考文献 (13)附录程序清单 (14)成绩评定表 (19)摘要汇编语言是一种功能很强的程序设计语言,也是利用计算机所有硬件特性并能直接控制硬件的语言。

利用汇编语言能够直接访问与硬件相关的存储器或I/O端口,从而最大限度地发挥硬件的功能.本文主要介绍了利用汇编语言设计一个运行于计算机的电子琴软件,软件能够实现弹奏,演奏的功能,当按下弹奏键时,实现弹奏功能,发出音符对应频率的声音,按下演奏键时,实现演奏功能,播放预存的音乐,按下指定的音调选择按键后,选择低音,中音或高音,则分别用低音,中音或高音进行弹奏或演奏。

《单片机原理与接口技术》课程设计报告 电子琴设计

《单片机原理与接口技术》课程设计报告 电子琴设计

《单片机原理与接口技术》课程设计报告姓名学号院系班级指导教师年月目录一、课程设计目的 (2)二、课程设计内容 (2)(一)设计任务及要求 (2)(1)设计任务 (2)(2)设计要求 (2)(二)设计的基本方案 (3)三、硬件电路设计及描述 (4)(一)芯片介绍: (4)(二)硬件接线: (7)1、4x4矩阵键盘控制模块 (7)2、两位数码管 (8)3、音频输出 (9)4、复位电路 (9)5、电路设计图如下: (9)四. 软件设计思想及流程 (10)(一)件总体方案 (10)(二)简易流程图 (10)1、程序简易流程图 (11)2、弹奏程序流程图 (12)3、自动播放歌曲程序流程图 (13)五.硬件的调试过程及调试方法 (14)六.源代码 (14)七、课程设计体会 (28)八.参考文献 (28)一、课程设计目的单片机课程设计作为独立的教学环节,是自动化及相关专业集中实践性环节系列之一,是学习完《单片机原理及应用》课程后,并在进行相关课程设计基础上进行的一次综合练习。

单片机课程设计过程中,学生通过查阅资料,接口设计,程序设计,安装调试等环节,完成一个基于MCS-51系列单片机,涉及多种资源应用,并且有综合功能的小应用系统设计。

使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路,电子元器件等方面的知识进一步加深认识,同时在软件编程,调试,相关仪器设备和相关软件的使用技能等方面得到较全面的锻炼和提高。

使学生增进对单片机的感性认识,加深对单片机理论方面的理解,加深单片机的内部功能模块的应用,如定时器/计数器,中断,片内外存储器,I/O 接口,串行口等。

使学生了解和掌握单片机应用系统的软硬件设计过程,方法及实现,强化单片机应用电路的设计与分析能力。

提高学生在单片机应用方面的实践技能和科学作风,培育学生综合运用理论知识解决问题的能力。

二、课程设计内容(一)设计任务及要求(1)设计任务基于MCS系列单片机AT89C51。

微机原理与接口技术电子琴实验mimi

微机原理与接口技术电子琴实验mimi
DB0AH, 0DH,'Please use the key "1 2 3 4 5 6 7" to control the piano'
DB0AH, 0DH,'the key "ESC" to exit', 0AH, 0DH,'$'
DATASENDS
CODESEGMENT
ASSUMECS:CODE, DS: DATAS
DELAY1:MOVCX, 0CFFFH;延时
DELAY2: LOOP DELAY2
DECBX
JNZ DELAY1MBiblioteka VAL, B;设置B组端口的低两位为0
OUT 61H, AL;将AL中内容送至8255的B端口终止喇叭发声
JMP PS;跳转PS以待按下下一个键
CODEENDS
ENDSTART
3.3运行结果的分析
1.2
1.根据音阶频率表,利用定时器可以产生相应频率的脉冲信号,不同频率的脉冲信号经驱动电路放大后,就会发生不同的音调。
2.对于每个按键的音调发音时间由软件延时控制,如键一直按下,就会连续发音各音阶标称频率值:要使扬声器发出不同的音调,就得输入不同频率的波形。通过给8253定时/计数器装入不同的计数值,可以使其输出不同频率的方波。经过放大器的放大作用,便可驱动扬声器发出不同的音调,只要插入一段延时程序之后,再将扬声器切断,音调的声音就可以持续一端时间。通过计算机的不同按键输出不同的音调,需要使用系统调用功能以接收键入字符,并且要建立一张表,使键入字符与频率构成一个对应关系。
图3.1主要模块流程图
3.2源程序清单与注释
DATASSEGMENT
menuDB0AH, 0DH,'-----------------------------------------'

微机原理与接口技术(电子琴设计报告)

微机原理与接口技术(电子琴设计报告)

微机原理与接口技术课程设计基于 8086系统的电子琴设计报告05级电子信息工程 2班杨锡乐学号:0504030223参与成员:田友详、李丽华一、设计任务及要求1. 以 8255接八个开关 K1~K8,做电子琴按键输入。

2. 以 8253控制扬声器,拨动不同的开关,发出相应的音阶。

要求:K1—静音K2—发 si 的音 493HzK3—发 la 的音 440HzK4—发 sol 的音 392HzK5—发 fa 的音 349HzK6—发 mi 的音 329HzK7—发 re 的音 293HzK8—发 do 的音 261Hz二、方案比较和认证通过 8255和 8253来实现电子琴模拟,主要可以分成两部分,分别为输入部分和发音部分。

输入部分主要是由 8255和 8个常开型开关来完成。

常开型开关如右图。

8个常开型开关 K1~K8与 8255的 A 口 PA0~PA7相接,不触动开关时,为高电平输入,当按下开关时,就接地,为低电平输入。

例如当 K1键按下时,从 8255中 A 口输入的数为 11111110B ,十六进制为 0FEH 。

每一个开关按下时,都对应一个 ASCII 码,如下表所示:开关 K1 K2 K3 K4 K5 K6 K7 K8对应数据 0FEH 0FDH 0FBH 0F7H 0EFH 0DFH 0BFH 7FH对应频率静音 493 Hz 440 Hz 392 Hz 349 Hz 329 Hz 293 Hz 261 Hz输入部分的硬件实现比较简单, 所以说主要还是在发音部分。

在设计中驱动扬声器地声的主要有两种方式, 分别是以位触发和定时器控制。

下面就这两种不同的方式确定两个不同的设计方案。

方案 1:发声采用位触发方式。

电路原理图如下所示。

程序直接控制 PPI (8255可编程序外围接口芯片的输出控制寄存器(I/O端口为 61H 的第一位,使该位按所需的频率进行 1和 0的交替变化,从而产生一串脉冲控制波形,这些脉冲经过放大后驱动扬声器发出声音。

微机原理与接口技术课程设计报告——电子琴

微机原理与接口技术课程设计报告——电子琴

一、设计内容编写一实现电子琴的程序,并实现若干扩展功能。

功能:1.在程序中可预设多首曲目,按不同的敏感键可播放不同的曲目2.弹奏:用户每按一个键盘琴键就弹奏相应的音符;3. 当弹奏不同音阶时,双色点阵LED显示器显示不同的图案二、元件与仪器1.计时器82532.并行控制器8255A3.实验台TDN-MD三、设计原理、思路及流程图1.电子琴的设计原理及思路1.用试验箱上的晶振输出一个高频的信号,接入8253,用软件给8253和敏感键区进行初始化,敏感键控制不同的频率,并送此分频数给8253,从8253输出相应的音频后,接一个非门,再接入硬件扬声器,扬声器接受到不同频率的波后发出不同的声音。

2.用敏感键触发中断服务子程序来判断是给出了哪一个频率。

3.用ESC按键来控制是自动演奏曲目1并亮红灯,其他7个键分别控制da,ri,mi,fa,sa,la,si并亮绿灯。

4.其中用一个延时程序,使得发一个音有一定的延时时间。

5.有个停止程序,使得晶振不能使得扬声器发声。

对于一个特定的D/A转换接口电路,CPU执行一条输出指令将数据送入D/A,即可在其输出端得到一定的电压输出。

给D/A转换器输入按正弦规律变化的数据,在其输出端即可产生正弦波。

对于音乐,每个音阶都有确定的频率。

各音阶标称频率值和8253的计数初值:不同频率的区别,可通过调节向D/A转换器输出数据的时间间隔,例如:发"1"频率为647HZ,周期为1/647=1.55ms,由于实验箱中的晶振可产生一个为1.8432MHZ的频率。

1.625MHZ/647HZ=2511,即分频数。

转化为十六进制的数为:9CFH,再经过频率处理,除以25H得到8253的计数初值:43H。

其他的初值的计算同理。

2.电子琴的硬件框图和硬件连接图图 1 硬件框图图 2 电路连接图3.电子琴的流程图设计四、源程序1.主程序:A 2000MOV AL,86HOUT 63H,ALMOV AX,3000MOV [00A8],AXMOV AX,0000MOV[00AA],AX//表示ESC键的中断向量地址,自动播放音乐MOV AX,3100MOV [00AC],AXMOV AX,0000MOV [00AE],AX//表示`键的中断向量地址,发音1MOV AX,3200MOV [00B0],AXMOV AX,0000MOV [00B2],AX//表示-键的中断向量地址,发音2MOV AX,3300MOV [00B4],AXMOV AX,0000MOV [00B6],AX//表示\键的中断向量地址,发音3MOV AX,3400MOV [00B8],AXMOV AX,0000MOV [00BA],AX//表示;键的中断向量地址,发音4MOV AX,3500MOV [00BC],AXMOV AX,0000MOV [00BE],AX//表示,键的中断向量地址,发音5MOV AX,3600MOV [00C0],AXMOV AX,0000MOV [00C2],AX//表示。

《微机原理与接口技术》实验报告简易电子琴

《微机原理与接口技术》实验报告简易电子琴

《微机原理与接⼝技术》实验报告简易电⼦琴海南⼤学信息学院信息安全系专业课程《微机原理与接⼝技术》简易电⼦琴实验报告⽬录⼀、设计要求 (3)⼆、设计思路 (3)三、实验材料、⼯具、或软件 (4)四、实验内容 (4)1、实验电路连接 (4)2、程序流程图 (5)3、实验电路图 (6)4、8253与8255A相关结构及原理说明 (7)⑴8253 (7)⑵8255A (9)5、⽅案确定 (12)6、设计原程序及注释 (13)7、简易电⼦琴的安装与调试 (16)五、实验总结 (17)六、参考⽂献 (17)⼀、设计要求利⽤⽤实验箱上的扬声器与8个开关设计⼀个电⼦琴。

⽤开关模拟琴键,当开关拨为“1”时,相当于有键按下,喇叭发出声⾳。

拨动不同的开关则对应不同的⾳符,每次只能拨⼀个开关(相当于按下⼀个键)。

连续拨动开关,喇叭发出⾳乐。

⼆、设计思路简易电⼦琴设计选⽤8253计数器,8255A并⾏接⼝两个芯⽚:1. (输⼊部分)以8255A接⼋个开关K1~K8,做电⼦琴按键输⼊,由输⼊控制输出,即拨码开关控制扬声器;2. (发⾳部分)以8253控制扬声器(扬声器为输出),拨动不同的开关,发出相应的⾳阶。

将8255A芯⽚的B端⼝作为输出端⼝,PB0-PB7与输出端的K1-K8(分别对应⾳符1、2、3、4、5、6、7、i)相连接,⽽8253的时钟输⼊引脚CLK0与相应的时钟发⽣器相连接,8253的GATA0接开关K9(静⾳),8253的0通道的OUT0信号与LB区的SIN⼝相连接,从⽽驱动并控制喇叭的发⾳:当INPUT上的开关对应为“1”时喇叭连通,能够发出声⾳;当INPUT上的开关对应为“0”时喇叭被中断,不能发出声⾳。

这样,我们在硬件上实现了通过8255A芯⽚输⼊设备的输⼊信号并通过它传送给8253,让8253进⾏相应的处理后输出给喇叭的功能。

我们要通过对8255A的初始化和编程控制它的相关⼯作,使其能够实现上⾯提到的相应功能。

《微机原理与接口技术》课程设计报告——左昊

《微机原理与接口技术》课程设计报告——左昊

《微机原理与接口技术》课程设计报告摘要《微机原理与接口技术》课程是理工科学生一门重要的专业课程,且实践性较强。

对于电气工程及其自动化专业的学生尤其重要。

此课程的课程设计是对学生的一种基本素质训练的较好形式,可以通过课程设计加强学生的实践能力、动手能力和学习能力。

将所学的理论知识和实际情况结合起来,从而制定了多功能音乐电子琴系统这一题目。

如今经济的飞速发展使得城市的建设逐渐走向科学化、智能化。

其中各种功能的融合整合,现在成为技术发展的主流趋势。

我们把音乐播放器、音乐电子琴进行改造,使电机同步转动智能化的整合。

在为期一周的课程设计期间,我们将利用所学的《微机原理与接口技术》知识,模拟简单音乐播放器和电子琴智能化整合的控制系统。

运用了各类芯片及硬件实现了常规音乐播放及电子琴按键放音模式,调试过程正常,并按计划实现了既定目标。

目录一、课程设计任务 (1)1.课题选择 (1)二、总体设计方案 (2)三、各部分电路设计及功能解说 (3)3.1、放音模块 (3)3.2、日期显示模块 (3)3.3、音乐电子琴模拟及控制模块 (4)四、硬件接线图 (6)五、软件流程图 (7)六、各程序段功能汇总 (8)七、实验结果及分析 (9)八、实验总结 (10)九、参考文献 (11)附录一、程序清单 (12)一,课程设计任务1,课题选择——多功能音乐电子琴播放器出于对音乐的喜爱,以及对软硬件实现音乐播放原理的好奇,制定了音乐彩灯这一设计课题,基本内容如下:利用定时电路与并行接口演奏一首乐曲,并点亮不同色彩的发光二极管,要求随着乐曲的节拍或旋律使发光二极管有节奏地变化。

把乐曲的音符,节拍及发光二极管驱动码制成表格,当需要更换乐曲时只需改变此表格。

在此基础功能上,创造性的加入了选歌功能,可通过按键选择不同歌曲播放。

电子琴功能,可通过七个按键演奏七个不同的音符。

一、总体设计方案整个实验内容依据Star ES8688试验箱为中心进行展开,充分利用已有的芯片,尽可能的达到预期的效果:(1)采用8086为控制器为控制核心;(2)采用8255接口芯片控制音乐模式选择,按键输入输出,及LED灯相应。

微机原理与接口实验_电子琴设计

微机原理与接口实验_电子琴设计

微机原理与接口实验_电子琴一、设计目的通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。

通过查阅资料,结合所学知识进行软、硬件的设计,使学生初步掌握应用微机解决问题的步骤及方法。

为以后学生结合专业从事微机应用设计奠定基础。

二、设计的原始资料及依据查阅定时器8254,可编程8255及音节的频率范围等资料。

通过改变键盘输入来改变8254输出频率,实现扬声器发音。

三、设计的主要内容及要求利用微机原理试验箱,设计简易电子琴,要求至少可以弹出7个音阶。

四、设计完成后应提交成果的种类、数量、质量等方面的要求;提交课程设计说明书一份。

在说明书中要有设计原理、硬件电路接线图、设计的程序及必要注释等。

七、主要参考资料(文献)1、《微机原理与应用》大连理工大学出版社2、《微机原理与接口技术》北京航空航天大学出版社3、《微型计算机原理与汇编语言》电子工业出版社4、《8088/8086汇编语言程序设计》中央广播电视大学出版社中文摘要和关键词本实验是利用微机原理试验箱、8255芯片、8254芯片、键盘、扬声器等硬件设备,设计简易电子琴。

首先利用了编程程序,编辑了8255芯片控制字, 对其进行初始化,使其工作在方式0,即基本输入输出状态,将8255的A端口设置为输出,C端口进行,经CPU运算后, 输出到8254芯片的A端口中,由此实现对其的初始化。

将8254芯片设置为工作在方式3,即输出对称方波状态。

A端口为输入,“OUT”指令可将输出对应一定频率的方波送到扬声器中,由此实现发声。

本实验通过频率大小控制发出声音的高低,通过对延时程序的调用控制发出声音的长短。

并通过所编程序实现对键盘的重复扫描,重而可以弹奏多个音符的试验目的。

关键字: 编程、工作方式、运算一、设计题目:简易电子琴设计二、设计内容:利用微机原理试验箱,设计简易电子琴。

三、设计目的:通过课程设计使学生更进一步掌握微机原理及应用课程的有关知识,提高应用微机解决问题的能力,加深对微机应用的理解。

微机实验9(电子琴)

微机实验9(电子琴)

《综合设计性实验》预习报告实验项目:电子琴一引言:利用实验仪上提供的键盘,使数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音调。

用8255的PA.0 口发出音频脉冲,驱动喇叭。

二实验目的:1. 了解计算机发声原理。

2. 进一步熟悉定时器编程方法.3. 进一步熟悉键盘扫描电路工作原理及编程方法三实验原理:输出端口的方波经放大滤波后,驱动扬声器发声。

声音的频率由端口输出延时控制。

键盘电路无需连线,原理图可参考实验五。

连线连接孔1 连接孔21 8255_CS CS02 KEY/LED_CS CS13 PA0 喇叭脉冲输入四、实验说明利用定时器,可以发出不同频率的脉冲,不同频率的脉冲经喇叭驱动电路放大滤波后,就会发出不同的音调.定时器按设置的定时参数产生中断,这一次中断发出脉冲低电平,下一次反转发出脉冲高电平。

由于定时参数不同,就发出了不同频率的脉冲。

本实验中按键一次,会发50个脉冲。

发完后继续检测键盘,如果键还按下,继续发音。

四实验内容:利用实验仪上提供的键盘,使数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音调。

用8255的PA.0 口发出音频脉冲,驱动喇叭。

五重点问题:程序编写、电路调试六参考文献:广州大学《微机原理实验指导书(10-11-1)》林土胜《单片机技术及工程实践》北京:机械工业出版社《综合设计性实验》实验报告实验名称:电子琴一引言:使数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音调。

二实验要求:利用实验仪上提供的键盘,使数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音调。

用8255的PA.0 口发出音频脉冲,驱动喇叭。

三实验仪器:1、电脑2、伟福编译器3、伟福实验箱四实验步骤:(1) 制作外扩电路板。

(2) 输入程序并检查,保存程序。

(3) “编译”程序。

(4) “全速执行”程序。

(5) 记录实验结果及分析。

五数据处理及实验结果表示:数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音调六实验结果分析:本实验按照预期的效果,实现了利用实验仪上提供的键盘,使数字键1、2、3、4、5、6、7作为电子琴按键,按下即发出相应的音调。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

信息工程学院《微机原理与接口技术》课程考核论文(设计)题目:电子琴指导教师:史先桂专业班级: 10计科特色班B组学号姓名: 1042157130 陈效龙1042157131 (组长)程蜜蜜1042157132 杜欢欢日期: 2012年5月28日摘要随着科学技术的迅猛发展,计算机在各个领域的应用越来越广泛。

计算机已成为人们生活、学习、工作的必备工具,计算机技术成为每一个专业技术人员必备的知识。

本次专业课程设计作为前阶段学习知识的一个检验,培养了我们的动手能力以及独立思考设计的能力,也是大学培养的一个重要实践步骤。

设计初期,我们通过网络,图书馆以及利用所学知识等资源查找设计制作电子琴的相关信息,对不同的方案进行细致的分析比较。

并且按照题意与实际情况进行改进,使之符合要求。

制作过程中发现的一些问题通过共同的分析研究得到的解决,此次课程设计巩固了前期的理论知识,增强了动手实践能力。

本电子琴实验包括了对8253、8255等可编程器件的编程,电子琴是由8253计数器、8255A以及扬声器和键盘的数字键组成的,8255对播放的控制以及键盘对声音的控制等操作。

设计先从硬件,软件入手,逐步进行研究和完善,能够基本实现设计任务的要求。

关键字:频率; 电子琴;键盘;8255A;8253计数器ABSTRACTAlong with the rapid development of scientific technology,computer application in all fields more and more widely. The computers have become a people life, study, work the necessary tools, the computer technology to become every professional technology personnel the necessary knowledge.The professional course design as the first stage of the study knowledge one inspection, and train our practical ability and the ability of independent thinking design, is also one of the important university training practice steps. The early design, we through the network, the library and the use of knowledge resources such as search design of electronic information, to a different plan we analyzed and compared. And according to the actual conditions and improved cet4, to comply with the requirements. The production process found some questions through joint analysis research settled, the course design of the consolidated the knowledge, enhance the practical capability.This keyboard experiment included the 8253, 8255A, the programmable deviceof programming, keyboard is from 8253 to 8255 A counter, and the speaker and the keyboard keys of composition, 8255 to play and the control of the keyboard to sound control operation. First the design of the hardware and software of study and improve gradually, to realize the basic tasks for design.KEYWORDS:frequency ;electronic keyboard ;keyboard ;8255A8253 counter目录摘要 (I)ABSTRACT (II)1 功能设计与要求 (1)1.1实现功能 (1)1.2设计要求 (1)2电路原理图与说明 (2)2.1音阶频率表 (2)2.2电路原理图 (2)3软件设计 (3)3.1主要模块流程图 (3)3.2源程序清单与注释 (4)3.3运行结果的分析 (7)小结 (7)参考资料 (8)1 功能设计与要求1.1实现功能利用微机键盘上的数字键1~7作为电子琴键,具有发出do re mi fa sol la si 7个音的功能,对输入的信号,首先判断是否为ESC键,若是直接退出程序,若不是判断是否是1~7键中的任意数字键,若是,程序用键值得到各个音阶的频率值发出相应的音调,按1键发出do音,按2键发出re音,按3键发出mi音,按4键发出fa音,按5键发出sol音,按6键发出la音,按7键发出si音,按其他数字键均不发音且按ESC退出程序。

1.2设计要求1.根据音阶频率表,利用定时器可以产生相应频率的脉冲信号,不同频率的脉冲信号经驱动电路放大后,就会发生不同的音调。

2.对于每个按键的音调发音时间由软件延时控制,如键一直按下,就会连续发音各音阶标称频率值:要使扬声器发出不同的音调,就得输入不同频率的波形。

通过给8253定时/计数器装入不同的计数值,可以使其输出不同频率的方波。

经过放大器的放大作用,便可驱动扬声器发出不同的音调,只要插入一段延时程序之后,再将扬声器切断,音调的声音就可以持续一端时间。

通过计算机的不同按键输出不同的音调,需要使用系统调用功能以接收键入字符,并且要建立一张表,使键入字符与频率构成一个对应关系。

2电路原理图与说明2.1音阶频率表电子琴发出的音阶是通过1~7当中各个数字键所对应的频率才发出相应的音调的。

表2.1音阶频率表按键 1 2 3 4 5 6 7音阶 1 2 3 4 5 6 7频率值523 578 659 698 784 880 980 (hz)2.2电路原理图利用实验板上的8253计数/定时器和8255并行接口,定时器8253利用工作方式3产生一定频率信号,通过可编程的并行外围接口芯片8255控制频率信号的断。

8255的B口设置为输出,8255的B口的低两位用来控制扬声器驱动,当输出端口的PB0位为“1”或为“0”时,将使控制驱动器的与门电路接通或关闭,使8253所发出的音频信号能到达驱动器或被阻断。

这样通过控制PB0的变化,可使扬声器接通和断开,控制扬声器是否能发出声音。

此外,通过控制PB0的通断时间,就能发出不同的音长。

8255的PB1位为“1”时,控制8253定时器产生驱动扬声器发声的音频信号,该位为“0”则不发信号。

8253有三个定时器,分为0号、1号和2号定时器,驱动扬声器的是2号定时器,该定时器工作在方式3,是一个频率发生器,它负责向扬声器发送指定频率的脉冲信号。

当8255的PB0和PB1都为1时,8253发出指定频率的声音信号的前提下,声音信号过与门到达驱动器驱动扬声器发声图2.2总体电路图3软件设计3.1主要模块流程图通过键盘输入数字到赋给8253,然后根据8086的程序,将不同的分频数与数字键一一对应,通过程序从8086给8253赋个初值(即不同的分频数),用分频电路给8253提供一个2MHZ的时钟脉冲,将得到的音频数据通过8253传到扬声器,发出声音图3.1主要模块流程图3.2源程序清单与注释DATAS SEGMENTmenu DB 0AH, 0DH, '-----------------------------------------' DB 0AH, 0DH, ' Number piano'DB 0AH, 0DH, '-----------------------------------------', 0AH, 0DHDB 0AH, 0DH, 'Please use the key "1 2 3 4 5 6 7" to control the piano' DB 0AH, 0DH, 'the key "ESC" to exit', 0AH, 0DH,'$'DATAS ENDSCODE SEGMENTASSUME CS:CODE, DS: DATAS;宏定义字符串输出strout MACRO STRINGOUT ;将字符串STRINGOUT输出LEA DX, STRINGOUT ;将STRIN的偏移地址送到DX寄存器MOV AH, 9 ;09H字符串输出功能INT 21H ;调用系统中断ENDMSTART:MOV AX, DATAS ;将数据段地址送到AX中MOV DS, AX ;由AX转送到送到DSstrout menuMOV AL,10110110B ;初始化8253 的2号寄存器工作在方式3(方波发生器)OUT 43H, AL ;将控制字送到控制寄存器MOV AL, '1' ;自行输入第一个字符'1',跳过第一个字符的输入过程JMP PS2PS:MOV AH, 01H ;输入一个字符INT 21H ;字符默认输入到AL中PS2:CMP AL, '1' ;判断是否输入1JE P1 ;为1时跳转P1CMP AL, '2' ;判断是否输入2JE P2 ;为2时跳转P2CMP AL, '3' ;判断是否输入3JE P3 ;为3时跳转P3CMP AL, '4' ;判断是否输入4JE P4 ;为4时跳转P4CMP AL, '5' ;判断是否输入5JE P5 ;为5时跳转P5CMP AL, '6' ;判断是否输入6JE P6 ;为6时跳转P6CMP AL, '7' ;判断是否输入7JE P7 ;为7时跳转P7CMP AL, 27 ;判断是否输入ESCJE E ;为ESC时跳转结束JMP PS ;都不是跳转PS 待重新输入字符E: MOV AH,4CH ;结束INT 21HP1: MOV BX, 523 ;对应的输出频率 523,578,659,698,784,880,980 JMP D ;跳转除法操作P2: MOV BX, 578JMP DP3: MOV BX, 659JMP DP4: MOV BX, 698JMP DP5: MOV BX, 784JMP DP6: MOV BX, 880JMP DP7: MOV BX, 980JMP DD: MOV DX, 12H ;将时钟的主频率送至被除数MOV AX, 34DEHDIV BX ;进行除法操作商保存在AX中OUT 42H, AL ;将AX中的计数次数送至8253的存储器2,送低位MOV AL, AH ;OUT 42H, AL ;送高位MOV AL, 00000011B ;设置B组端口的低两位为1OUT 61H, AL ;将AL中内容送至8255的B端口允许喇叭发声MOV BX, 1000 ;延时一段时间让喇叭持续输发声DELAY1: MOV CX, 0CFFFH ;延时DELAY2: LOOP DELAY2DEC BXJNZ DELAY1MOV AL, 00000000B ;设置B组端口的低两位为0OUT 61H, AL ;将AL中内容送至8255的B端口终止喇叭发声JMP PS ;跳转PS以待按下下一个键CODE ENDSEND START3.3运行结果的分析通过设计的电路图接线,编译程序并运行程序,就可以实现通过键盘,按中1~7的任何一个键就可以发出相应的do re mi fa sol la si 7个音调,它本来就是一个简易的电子琴,也可以用它来弹奏美好的音乐,因此可以选择不同的按键组合,实现电子琴的基本功能,用户可自编曲目。

相关文档
最新文档