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

合集下载

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

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

信息工程学院《微机原理与接口技术》课程考核论文(设计)题目:电子琴指导教师:史先桂专业班级: 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退出程序。

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

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

微机原理与接口技术课程设计基于 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.为了使计算机无需音响输出设备就可以发声,我们利用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键自行推出程序,。

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

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

微机原理与接口技术课程设计——简易电子琴的设计作者:王雨轩指导老师:张金花摘要:本设计主要是利用可编程并行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)简易电子琴的设计随着电子科技的飞速发展,电子技术正在逐渐改善着人们的学习、生活、工作。

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

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

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

微机原理与接口技术_汇编语言,单片机设计简易电子琴微机原理与接口技术课程设计报告电子琴(八音盒)目录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 课题描述随着社会发展,计算机硬件技术越来越多的应用到生活中的各个领域,人们对软硬件技术结合开发出来的产品的要求越来越迫切,需求日益增加,如今用软硬件结合设计电子产品已经成为了一大时尚。

基于8086的简易电子琴设计附汇编源程序

基于8086的简易电子琴设计附汇编源程序

《微机原理与接口技术》综合设计实验报告设计课题:基于8086得简易电子琴设计指导老师:学生姓名:学号:院系:专业:通信工程ﻬ基于8086得简易电子琴设计摘要在学习《微机原理与接口设计》得基础上,针对课程设计要求,综合运用相关软件、硬件知识,设计一个简易电子琴,使之具有音区切换、数码管显示音区及当前音符、记录音符与音符持续时间、播放录制得音乐等功能。

关键词:8086;电子琴;仿真调试;汇编ﻩ目录第1章总体方案设计......................................... 错误!未定义书签。

1、1 系统整体架构图..................................... 错误!未定义书签。

1、2 功能介绍ﻩ错误!未定义书签。

第2章硬件设计ﻩ错误!未定义书签。

2、1 硬件资源ﻩ错误!未定义书签。

2、2 硬件接线图ﻩ错误!未定义书签。

2、2、1 8254接线图............................... 错误!未定义书签。

2、2、2 8255及键盘、数码管接线图ﻩ错误!未定义书签。

第3章软件设计ﻩ错误!未定义书签。

3、1程序框图ﻩ错误!未定义书签。

3、1、1 整体框图2ﻩ3、1、2 延时函数.................................... 错误!未定义书签。

3、1、3键盘扫描ﻩ错误!未定义书签。

3、1、4数码管显示.................................. 错误!未定义书签。

3、1、5声音及时间录制............................. 错误!未定义书签。

3、1、6 选择音区(高、中、低)..................... 错误!未定义书签。

3、1、7播放音乐ﻩ错误!未定义书签。

第4章实验结果及演示...................................... 错误!未定义书签。

微机原理与汇编语言课设——电子琴

微机原理与汇编语言课设——电子琴

微机原理与汇编语言课设——电子琴一、引言电子琴是一种常见的电子乐器,其原理主要是利用微控制器和音频芯片来实现音乐的产生和演奏。

本文将介绍微机原理与汇编语言课设中关于电子琴的设计和实现。

二、设计目标本次课设的设计目标是实现一个简单的电子琴,具备以下功能:1. 发出不同音高的音符;2. 支持多种音效,如音量调节、音色切换等;3. 支持多音同时演奏。

三、硬件设计1. 微控制器选择本次设计选用了ATmega328P微控制器作为主控芯片。

它具有丰富的外设资源,适合用于音频处理和控制。

2. 音频芯片选择为了实现音乐的产生,我们选择了一个音频芯片,例如YM2612。

它能够根据输入的音符和音效参数产生相应的音频信号。

3. 键盘电路设计电子琴的键盘通常采用矩阵键盘的设计,通过扫描键盘的状态来检测按键的触发。

我们可以使用行列扫描法来实现键盘的检测。

4. 音频输出电路设计为了将产生的音频信号输出到扬声器上,我们需要设计一个音频输出电路。

一般来说,可以使用功放电路来放大音频信号,然后通过扬声器播放出来。

四、软件设计1. 系统初始化在系统初始化阶段,我们需要对微控制器进行初始化设置,包括时钟配置、引脚配置等。

2. 键盘扫描通过行列扫描法,我们可以检测到按下的键盘按键。

一旦检测到按键按下,我们需要进行相应的处理,例如发出对应的音符。

3. 音符发声根据键盘扫描的结果,我们可以确定需要发出的音符。

通过音频芯片,我们可以将相应的音符转换为音频信号,并输出到音频输出电路。

4. 音效处理除了发出不同音高的音符外,我们还可以通过调节音量、切换音色等方式实现多种音效。

这些音效参数可以通过按键或旋钮来控制。

5. 多音演奏电子琴通常支持多音同时演奏的功能。

为了实现这一功能,我们可以通过多线程或中断的方式来处理多个音符的发声。

五、实验结果经过设计和实现,我们成功地完成了一个简单的电子琴。

它能够发出不同音高的音符,并支持多种音效。

通过按键和旋钮的操作,我们可以控制音量、音色等参数。

汇编语言电子琴设计(微机原理课程设计)

汇编语言电子琴设计(微机原理课程设计)

微机原理课程设计(汇编语言)——电子琴设计一、设计内容编写一实现电子琴的程序,并实现若干扩展功能。

基本功能:用键盘输入对应的七个音阶,通过实验箱的喇叭发出声音,并通过七段数码管显示输入音阶;扩展功能:1、在程序中可预设多首曲目,按一键可以进入预设子菜单,对要播放的曲目进行选择,并实现播放该曲目。

2、程序运行时有友好的用户介面。

3. 当弹奏不同音阶时,双色点阵LED显示器显示不同的图案二、元件与仪器1.计时器82532.并行控制器8255A3.实验台三、设计原理、思路及流程图1、设计原理(1)对于一个特定的D/A转换接口电路,CPU执行一条输出指令将数据送入D/A,即可在其输出端得到一定的电压输出。

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

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

各音阶标称频率值:(2)产生一个正弦波的数据可取32个(小于亦可),不同频率的区别,可通过调节向D/A转换器输出数据的时间间隔,例如:发"1"频率为261。

1HZ,周期为1/261.1=3.83ms,输出数据的时间间隔为3.83ms/32=0.12ms. 定时时间可以由8253配合8255来实现。

按下某键后发音时间的长短可以由发出的正弦波的个数多少来控制。

本程序中设置默认长度为60个正弦波。

(3)实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平,选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。

(4) 点阵LED显示器是将许多LED类似矩阵一样排列在一起组成的显示器件,双色点阵LED是在每一个点阵的位置上有红绿或红黄或红白两种不同颜色的发光二极管。

当微机输出的控制信号使得点阵中有些LED发光,有些不发光,即可显示出特定的信息,包括汉字、图形等。

车站广场由微机控制的点阵LED大屏幕广告宣传牌随处可见。

(5)实验仪上设有一个共阳极8×8点阵的红黄两色LED显示器,其点阵结构如图所示。

微机原理——简易电子琴

微机原理——简易电子琴

课程名称:微型计算机原理与接口技术设计题目:模拟简易电子琴一、题目分析题目:模拟简易电子琴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 课题描述 ..................................................................... . (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 课题描述随着社会发展,计算机硬件技术越来越多的应用到生活中的各个领域,人们对软硬件技术结合开发出来的产品的要求越来越迫切,需求日益增加,如今用软硬件结合设计电子产品已经成为了一大时尚。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

微机原理与汇编语言课设——电子琴

微机原理与汇编语言课设——电子琴

微机原理与汇编语言课程设计电子琴学院:计算机科学技术专业:计算机科学与技术(工)班级:计13-1 班姓名:肖林英学号:2013170101 25指导教师:微2016年6 月10 日微机原理与汇编语言课程设计任务书一、题目:电子琴二、设计的目的1. 掌握利用PC机扬声器发出不同频率声音的方法;2. 学习利用系统功能调用从键盘上读取字符的方法;3. 掌握定时器/计数器8253的工作原理;三、设计要求编写程序,程序运行时使PC 机成为一架可演奏的“钢琴”。

当按下数字键1-8时,依次发出1,2,3,4,5,6,7,七个高音和低音,Esc 则退出演奏状态。

独立完成课程设计。

四、设计容及步骤1.PC 机扬声器电路电路图如图1所示:图1 PC 机扬声器控制电路通过给8253定时器装入不同的计数值,可以使其输出不同频率的波形。

当与门打开后,经过放大器的放大作用,便可驱动扬声器发出不同频率的音调。

为使该音调的声音持续一段时间,要插入一段延时程序,之后再将扬声器关闭(关闭与门)。

2.建立音频表要使计算机成为可弹奏的简易电子琴,需要使用系统调用的01H 功能以接收键入字符,并且要建立一音频表。

五、课程设计工作量每人的程序量应在100行有效程序行以上,不得抄袭,否则给不及格成绩。

六、课程设计工作计划2016年6月6日指导教师讲课,学生准备文献资料;2016年6月6日~2016年6月10日每人完成自己程序并能独立演示;2016年6月10日下午验收,学生撰写课程设计报告。

指导教师签字:专业主任签章:微机原理与汇编语言课程设计指导教师评语与成绩目录一、概述 (1)1.课题描述 (1)2.程序设计目的 (1)二、需求分析 (1)三、总体设计 (2)1.电子琴程序 (2)2.单音调子程序SOUND (3)四、详细设计 (3)1.扬声器 (3)2.界面设计 (4)五、调试与运行结果说明 (5)1.主界面 (5)2.退出界面 (6)六、课程设计总结 (6)七、结束语 (7)八、程序清单 (7)参考文献 (14)一、概述1.课题描述随着社会发展,计算机硬件技术越来越多的应用到生活中的各个领域,人们对软硬件技术结合开发出来的产品的要求越来越迫切,需求日益增加,如今用软硬件结合设计电子产品已经成为了一大时尚。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

课程设计任务书学生姓名:刘沛专业班级: 电气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。

单片机课程设计——简易电子琴

单片机课程设计——简易电子琴
单片机课程设计——简易电子 琴
汇报人:
单击输入目录标题 单片机基础知识 简易电子琴系统设计 单片机与简易电子琴的结合 简易电子琴的功能扩展 简易电子琴的优化与改进
添加章节标题
单片机基础知识
单片机简介
单片机是一种集成电路芯片,将微处理器、存储器、输入/输出接口等集成在一起 单片机具有体积小、功耗低、可靠性高、编程灵活等特点 单片机广泛应用于工业控制、家电、汽车电子等领域 单片机课程设计是学习单片机应用的重要环节,可以提高学生的实践能力和创新能力
音乐播放与控制
单片机控制:通过单片机控制电子琴的音色、音高和节奏 音乐播放:单片机通过控制电子琴的音色、音高和节奏,实现音乐的播放 控制方式:可以通过按键、触摸屏等方式控制音乐的播放 功能扩展:可以增加录音、播放、暂停、快进、快退等功能,提高用户体验
显示模块的应用
显示模块的作用:显示电子琴 的音色、音高、节奏等信息
单片机在简易电子琴中的应用
控制音量:通过单片机控制 音量的大小,实现电子琴的 音量调节功能。
控制音色:通过单片机控制 不同频率的音色,实现电子 琴的多种音色效果。
控制节奏:通过单片机控制 节奏的快慢,实现电子琴的
节奏调节功能。
控制和弦:通过单片机控制 和弦的演奏,实现电子琴的
和弦演奏功能。
单片机开发环境搭建
测试内容:音色、音调、 音量、节奏等性能指标
测试结果分析:对测试数 据进行分析,找出问题并 解决
测试报告:记录测试过程、 结果和分析,为后续改进 提供依据
单片机与简易电子琴的结合
单片机控制简易电子琴的原理
单片机作为核心控制单元,负责接收和处理来自键盘的输入信号
单片机根据接收到的输入信号,控制电子琴的音源产生相应的音调

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

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

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

功能: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//表示。

基于8086的简易电子琴设计附汇编源程序

基于8086的简易电子琴设计附汇编源程序

《微机原理与接口技术》综合设计实验报告设计课题:基于8086的简易电子琴设计指导老师:学生姓名:学号:院系:专业:通信工程基于8086的简易电子琴设计摘要在学习《微机原理与接口设计》的基础上,针对课程设计要求,综合运用相关软件、硬件知识,设计一个简易电子琴,使之具有音区切换、数码管显示音区及当前音符、记录音符与音符持续时间、播放录制的音乐等功能。

关键词:8086;电子琴;仿真调试;汇编目录第1章总体方案设计 (1)1.1 系统整体架构图 (1)1.2 功能介绍 (1)第2章硬件设计 (3)2.1 硬件资源 (3)2.2 硬件接线图 (4)2.2.1 8254接线图 (4)2.2.2 8255及键盘、数码管接线图 (4)第3章软件设计 (5)3.1 程序框图 (5)3.1.1 整体框图 (5)3.1.2 延时函数 (6)3.1.3 键盘扫描 (7)3.1.4 数码管显示 (7)3.1.5 声音及时间录制 (8)3.1.6 选择音区(高、中、低) (8)3.1.7 播放音乐 (9)第4章实验结果及演示 (9)第5章遇到的问题及改进措施 (12)5.1 条件转移指令报错 (12)5.2 无法使用8254作为录音时间计数器 (12)附录 (13)程序源码 (13)第1章总体方案设计1.1 系统整体架构图系统整体架构图如图1-1所示。

图1-11.2 功能介绍本实验设计实现了音区切换、数码管显示当前音区及音符、记录音符与音符持续时间、播放录制的音乐等功能。

功能具体说明如下。

按键0-6为音符键,按下后会有对应的音符音调响起,按键弹起后音符终止,此时,按下的音符以及时间将被记录。

按键12,13,14可以选择低音,中音,高音区。

按下按键15后开始播放录制的音符(不超过16个)。

另外数码管0显示音符,数码管2显示音区。

第2章硬件设计2.1 硬件资源TD-PITE 实验教学系统,其主要系统构成如表2-1 所示。

CPU Intel 386EX系统程序存储器:Flash ROM (128KB)存储器数据存储器:SRAM (128KB)信号源单次脉冲:消抖动脉冲 2 组逻辑电平开关与显示16 组电平开关,16 组电平显示LED 灯(正逻辑)8259、8237、8254、8255、8251、DAC0832、ADC0809、SRAM 、键盘扫描及数接口实验单元码管显示、电子发声、点阵LED、液晶LCD(可选)、步进电机(可选)、直流电机、温度控制实验扩展单元 2 组40 线通用集成电路扩展单元、扩展模块总线单元系统电源+5V/2A,±12V/0.2A表2-1 TD-PITE 系统构成系统硬件结构如图2-1 所示。

基于单片机的简易电子琴设计(汇编语言)

基于单片机的简易电子琴设计(汇编语言)

任务书1.1 课程设计目的本课程设计目的在于培养学生运用已学的单片机原理及应用的基础知识和基本理论,加以综合运用,进行单片机系统设计的初等训练,掌握运用单片机进行系统控制设计的原则、设计内容和设计步骤,为从事单片机相关的毕业设计或今后的工作需要打下良好的基础。

1.2 课程设计内容本次课程设计的主要内容是以单片机为核心控制元件,设计一个电子琴。

以单片机作为主控制核心,与键盘、发光二极管、扬声器等模块组成,其功能是实现单独演奏和自动播放歌曲,主要分为:1.2.1 单独演奏模块通过按键,利用所给键盘的1,2,3,4,5,6,7七个键,能够发出7个不同的音调,即按下按键1、2、3、4、5、6、7,扬声器发出相应音调DO、RE、MI、FA、SO、LA、SI,每当有按键按下时,按键对应的LED灯对应点亮,可以用来演奏不同的歌曲。

1.2.2 自动放歌模块通过按键可以进行单独演奏/自动放歌的选择,利用所给的键盘的第8个按键,能够使电子琴自动播放一首歌曲(歌曲自选,歌曲乐谱通过软件编程实现),自动放歌时,同时配有发光二极管作流水灯显示,达到歌曲与灯同步动作。

1.3 课程设计原则1、尽可能地满足控制系统的的控制要求;2、在满足控制的前提下,力求使控制系统简单、经济;3、保证控制系统运行稳定、可靠;4、考虑到对系统的改进,在选择单片机芯片功能时,应适当留有余量,以便用作扩展功能。

1.4 课程设计步骤1、对设计系统的任务和要求作深入的调查研究,明确控制任务和实现功能;2、选择和确定单片机芯片、音频发声器件和串口下载芯片;3、确定系统整体设计方案;4、电子琴系统仿真设计;5、整体系统的软件设计;6、联机调试;7、撰写设计报告。

1.5 时间安排1.6 基本要求(一)课程设计报告1.系统流程图一张;2.系统仿真图一张;3.系统软件程序清单一张;4.撰写报告一份,包括以下内容:1)写出设计计划和基本步骤。

2)写出系统要求并设计流程图。

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

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

《微机原理与接⼝技术》实验报告简易电⼦琴海南⼤学信息学院信息安全系专业课程《微机原理与接⼝技术》简易电⼦琴实验报告⽬录⼀、设计要求 (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、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

微机原理与接口技术课程设计报告电子琴(八音盒)目录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 课题描述随着社会发展,计算机硬件技术越来越多的应用到生活中的各个领域,人们对软硬件技术结合开发出来的产品的要求越来越迫切,需求日益增加,如今用软硬件结合设计电子产品已经成为了一大时尚。

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

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

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

1.1 DICE-8086k试验系统8086k试验系统软硬件配置完善,实验电路采用分模块,开放型设计,使实验电路配置灵活,用户可直接运用。

系统的主要特点:1)采用主频为4.77mhz的8086cpu为主cpu,并以最小工作方式构成系统2)配有两片61c256静态ram构成系统的64k基本内存,地址范围为00000h-0ffffh,其中00000h-oofffh监控占用。

3)自带键盘,显示器,能够独立运行,为实验程序调试带来方便。

4)提供标准rs232异步通讯口,以连接IBM-PC机。

5)支持联机与脱机二种工作方式,系统扩展有EPROM,把所有实验程序都固化在该片中,脱机工作时,只需按一键,即可完成实验程序下载。

调用实验程序只须在实验仪键盘输入实验程序入口地址,按[EXEC]键即可,非常便捷。

图1.1 8086cpu引脚图1.2 8255与8253结构1) 8255是一个40引脚的双列直插式集成电路芯片.它具有三个8位口,其中A口和B 口是单纯的数据口,供数据I/O使用。

而C口则既可以作数据口,又可以作控制口使用,用于实现A口和B口的控制功能。

2)数据传送中A口所需的控制信号由C口高位部分(PC7~PC4)提供,因此把A口和C口高位部分合在一起称之为A组;同样理由把B口和C口低位部分(PC3~PC0)合在一起称之为B组。

图1.2 8255引脚图图1.3 8255内部结构图3)8253是24脚双列直插式芯片,+5V电源供电。

每个芯片内部有3个独立的计数器(计数通道),每个计数器都有自己的时钟输入CLK,计数输出OUT和门控信号GATE。

数据总线D0~D7:为三态输出/输入线。

片选信号CS,读信号RD,写信号WR,他们为输入信号,低电平有效。

地址线A1、A0,接到系统总线A1、A0上。

计数器时钟信号CLK,作用是在8253进行定时或计数工作是,每输入1个时钟脉冲信号CLK,便使计数值减1。

计数器门控选通信号GATE,计数器输出信号OUT,作用是计数工作时,每来1个时钟脉冲,计数器减1,当计数器值减为0,就在输出线上输出一OUT信号,以示定时或计数以到。

图1.4 8253引脚图4)8253/8254内部有6个模块:数据总线缓冲器,读/写逻辑,控制命令寄存器,计数器0,计数器1,计数器2数据总线缓冲器:3态,双向8位寄存器和D0~D7相连。

读/写逻辑:由CPU发来的读/写信号和地址信号来选择读出或写入寄存器。

控制命令寄存器:接受CPU来控制字。

计数器:8253有3个结构完全相同的计数器。

其内部由16为初值寄存器、减1计数器和当前计数值锁存器组成。

图1.5 8253内部结构图1.3功能说明1)开关控制:8255端口A工作在方式0,且为输入方式,端口B、C任意。

开关接在8255端口A的PA0~PA7,这样就可以通过8255读取开关量。

如下图:D7-D0___RDWRA0A1 8086A2A3.A4.A5.A15M/IOD7-D0PA0___ PA1RD PA2WR PA3A0 PA4A1 PA58255A__ PA6CS PA7 译码器图1.6开关控制图2)扬声器控制:(1)8253计数器2的输出控制扬声器的发声音调(2)8253计数器2只能工作在方式3,才能输出一定频率的方波,经滤波后得到近似的正弦波,进而推动扬声器发声(3)扬声器还受控于并行接口(8255A芯片)(4)必须使8255APB0和PB1同时为高电平,扬声器才能发出预先设定频率的声音;关闭则是利用8255APB0和PB1同时为低电平,关闭与门,扬声器关闭。

图1.7 扬声器控制图2 设计过程本次设计的模拟电子琴是以8253控制扬声器,以8255接8个开关K1-K8作为电子琴的按键输入。

2.1硬件设计采用并口8255A接8个开关K1—K8,利用8255A方式0,端口A输入方式,即AL=10010000B,可以将开关的量输入到CPU中,利用8个开关做电子琴的8个按键。

驱动控制扬声器利用8253与8255A共同执行(如图2.1)。

利用8255A的PB0、PB控制扬声器的开启、关闭。

利用定时器8253驱动发声,CPU通过对8253通道2(端口地址42H)进行编程,利用8253方式3以不同的脉冲频率产生不同的输出方波,方波信号通过滤波器、功率放大器使扬声器发声。

图2.1 硬件电路连接图2.2软件设计利用汇编语言对接口进行编程控制。

程序模块主要包括8255A、8253的初始化、开关量的输入、扬声器的开启、关闭及程序的退出。

在使8253的初值计数与频率相对应有两种方法,一是利用表的操作,但这种操作不太容易实现,硬件的连接也比较麻烦,易出错;所以我采用的是比较跳转的方式,比较简单明了,容易理解。

程序中的模块关系见程序流程图。

图2.2 程序流程图2.3系统原理说明1)利用8个逻辑开关做为电子琴的键盘输入,高电平有效,则开关量由8255A的端口A方式0,输入方式(控制字AL=10010000B)送入CPU中。

此时调用的是7号系统功能调用,从标准设备输入单字符置入AL寄存器中,调用格式为:MOV AH,07HINT 21H2)CPU根据不同的开关量,将程序跳转到相应频率对应的8253的初始化,并给8253赋上频率对应的初始值,此时利用的是8253的通道2,方式3,产生不同频率的方波。

代码如下:MOV AL,0B6HOUT 43H,ALMOV AX,计数值OUT 42H,ALMOV AL,AHOUT 42H,AL3)要使8253O U T发出的方波频率与任务中的频率相同,则要给8253设置计数值,计算方法为:计数值=输入时钟频率/任务要求频率然后CPU将8255A的PB0、PB1置1,打开8253的GATE和与门(图2.1)。

代码如下:IN AL,61HOR AL,03HOUT 61H,AL82534)产生的方波信号通过滤波器形成正弦信号,然后通过功率放大器,将正弦信号放大,驱动扬声器发声。

再然后CPU将8255A的PB0、PB1置0,关闭扬声器。

代码如下:IN AL,61HAND AL,0FCHOUT 61H,AL再次输入开关量,则循环执行上面过程。

5)当输入为PC键盘任意键输入时,则整个程序退出。

此时是调用的6号和4CH号系统功能调用,系统输入键盘任意键,返回DOS。

调用格式为:MOV DL,0FFHMOV AH,6INT 21HMOV AH,4CHINT 21H3 测试接通电路之后,按下开关键,依次拨动各个开关来控制作为扬声器的8253发声,发出静音、Si、La、Sol、 Fa、Mi、Re、Do音调。

由于每个开关的音调发音时间有软件延时控制,所以当开关打开时,就会连续发出音节标称频率的声音。

整体进行硬件电路图和软件测试,把所需程序进行输入一切运行良好,可以完成模拟电子琴,通过开关键实现产生不同音节频率的功能总结通过这两周的硬件课程设计,我对微机原理及应用这门课有了更深的认识,系统的掌握了微机原理及接口的应用知识。

这次课程设计我做的是用开关模拟电子琴发声。

在老师确定题目后,我便去图书馆查阅了大量的关于开关输入和发声程序设计的书籍,然后确定好自己的方案,对自己的设计有了一个大概的思路。

通过编程,我学会了如何独立的写出程序,提高了自己的分析解决问题的能力,并且使自己所学的知识与实践相结合,应用到实践当中。

课程设计中涉及到许多接口芯片,使我对这些芯片有了更深的认识,对芯片的各种工作方式有了更深的理解,虽然没有进行硬件的调试,但通过设计,我也学到了很多书本上没有的知识。

在设计当中遇到了很多的问题,但通过查找资料,克服了这些问题,提高了自己在实际当中解决问题的能力。

虽然此次课程设计的过程是艰辛的,但结果还是令我比较欣慰的。

在此特别感谢老师对我的指导。

附录代码STACK SEGMENT STACKSTACK ENDSCODE SEGMENTASSUME CS:CODESTART: MOV DX,63HMOV AL,90HOUT DX,AL ;8255A初始化INPUT: MOV DX,60HIN AL,DX ;8255A端口A输入MOV AH,07HINT 21H ;从开关输入信号CMP AL,00000001BJZ K1CMP AL,00000010BJZ K2CMP AL,00000100BJZ K3CMP AL,00001000BJZ K4CMP AL,00010000BJZ K5CMP AL,00100000BJZ K6CMP AL,01000000BJZ K7CMP AL,10000000B ;判断从哪个开关输入并跳JZ K8 ;转到相应8253初始化MOV DL,0FFHMOV AH,6INT 21HMOV AH,4CH ;键盘任意输入则退出程INT 21H ;序,返回DOSK1: MOV AL,0B6HOUT 43H,ALMOV AX,0JMP SINGK2: MOV AL,0B6HOUT 43H,ALMOV AX,2420JMP SINGK3: MOV AL,0B6HOUT 43H,ALMOV AX,2712JMP SINGK4: MOV AL,0B6HOUT 43H,ALMOV AX,3044JMP SINGK5: MOV AL,0B6HOUT 43H,ALMOV AX,3419JMP SINGK6: MOV AL,0B6HOUT 43H,ALMOV AX,3627JMP SINGK7: MOV AL,0B6HOUT 43H,ALMOV AX,4072JMP SINGK8: MOV AL,0B6HOUT 43H,AL ;8253初始化MOV AX,4572 ;并给AX赋JMP SING ;值SING: OUT 42H,ALMOV AL,AHOUT 42H,AL ;传送计数值到8253IN AL,61HOR AL,03HOUT 61H,AL ;打开扬声器IN AL,61HAND AL,0FCHOUT 61H,AL ;关闭扬声器JMP INPUT ;跳转到INPUT CODE ENDSEND START参考文献[1] 郑坤.微型计算机技术实验指导书.2007.[2] 戴梅萼,史嘉权.微型计算机技术与运用.清华大学出版社2003.[3] 王爱英.计算机组成与结构.北京. 清华大学出版社.1995.[4] 沈美明,温冬蝉.IBM-PC汇编语言程序设计.北京.清华大学出版社.2003.。

相关文档
最新文档