2862.B可存储式电子琴设计报告(包含小组成员报告源代码等) 个人报告2_第1页
2862.B可存储式电子琴设计报告(包含小组成员报告源代码等) 个人报告2_第2页
2862.B可存储式电子琴设计报告(包含小组成员报告源代码等) 个人报告2_第3页
2862.B可存储式电子琴设计报告(包含小组成员报告源代码等) 个人报告2_第4页
2862.B可存储式电子琴设计报告(包含小组成员报告源代码等) 个人报告2_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计算机科学与技术学院硬件课程设计报告(个人报告)姓 名: 学 号: 专 业: 信息安全 班 级: 设计题目: 可存储式电子琴 成 员: 指导教师: 职 称: 副教授 2008年 7月 徐州课程设计指导教师评阅书指导教师评语:成 绩: 指导教师签字: 年 月 日目 录1设计任务与要求12 个人分工13 8255原 理14硬件设计思路25 电子琴关于8255部分设计电路36 流 程 图47 关于8255部分程序源代码58实验体会69参考文献 61 设计任务与要求 本次硬件课程设计的任务和要求是通过居于8255a芯片和8253芯片上的电路设计和电路连接并通过对它们进行编程实现一个具有可存储音乐和电子

2、琴的基本功能的小器件。该器件不仅具有基本的弹奏功能(输入不同的键能发出不同频率的声音即音符),还具有弹奏存储功能(在先后输入不同的键后,它能将这些键存储起来,然后一并输出)。1.1 本次硬件课程设计是为了实现一个可以存储音乐且具有一般电子琴的基本功能的小器件。1.2 通过硬件设计熟悉并掌握微型计算机与接口技术课程中的关于各个芯片的知识和一些具体应用;1.3 通过此次硬件课程设计培养自己的对于微型计算机与接口技术课程的兴趣;1.4 通过此次硬件课程设计培养自己的动手能力和创新精神,培养自己的提出问题并解决问题的能力;1.5 通过此次课程设计锻炼同学们的彼此配合,彼此合作的能力和意识;2 个人分工

3、这次设计我们小组先经过协商完成功能分析、总体硬件规划、程序总体设计部分,根据各自情况划分本人负责整理资料确定各键所对应的音符及频率和n值、硬件8255部分功能的连接及相关程序初始化,完成线路图连接。3 8255原理8255是一种通用可编程并行输入输出接口芯片,通过对它进行编程,芯片可工作于不同的工作方式,用8255作接口时,通常不需要附加外部逻辑电路就可直接为cpu与外设之间提供数据通道,8255内部包含3个8位输入输出端口a,b,c,通过外部24根输入输出线与外设交换数据或进行通信联络。端口a和端口b都可以用作一个8位的输入口或8位的输出口,出口既可作8位输入输出口又可分为两个4位输入输出口

4、,还常常用来配合a口和b口工作,用来产生a口和b口的端口状态信号,8255a有两类控制字,一类控制字用来定义各端口的工作方式,称为方式选择控制字,另一类控制字用于对c端口的任一位置进行置位或者复位操作,称为置位复位控制字对8255a进行编程时这两种控制字都要写入控制字寄存器中,但方式选择控制字的d7位总是1,而置位复位控制字的d7位总是0。8255a 3种基本的工作方式方式0 基本输入输出方式方式1 选通输入输出方式方式2 双向总线i/o方式通过用输出指令对8255a的控制字寄存器编程,写入设定工作方式的控制字,可以让3个数据口以不同的方式工作,端口a可工作于3种方式的任一种,端口b只能工作于

5、方式0和方式1,端口c除了用于输入输出端口外,还能配合a口和b口工作,为这两个端口的输入输出操作提供联系信号。由系统硬件资源分配图可知8255的控制字为:10000010b4 硬件设计思路4.1 用pc机的键盘数字键对应电子琴的8个琴键和2功能键。4.2 8255a和8253配合构成音频发生器。8255a的pb0口控制扬声器的开关,4. 3 8255a门控信号与8253的频率控制信号经与门后驱动扬声器发出各种音频和音长声音。4. 4将8255a芯片的a端口作为输出端口,而b端口作为输入端口,两个端口都与键盘相连接:a端口的低四位连在键盘的行线上,b端口的高四位连在键盘的列线上。再将它的输出端口

6、pc0与8253相应门控信号gate0相连接。这样可以通过控制pc0来控制8253的输出:当pc0为“1”时,gate0有效,8253能够输出频率方波;当pc0为“0”时,gate0无效,out0无法输出频率方波。而8253的时钟输入引脚clk0与相应的时钟发生器相连接,8253的0通道的out0信号与8255a的pc1通过与门以后与蜂鸣器相连接,从而驱动并控制蜂鸣器发音的发音和终端:当pc1为“1”时蜂鸣器连通,能够发出声音;当pc1为“0”时蜂鸣器被中断,不能发出声音。这样,我们在硬件上实现了通过8255a芯片输入设备的输入信号并通过它传送给8253,让8253进行相应的处理后输出给蜂鸣器

7、的功能。我们要通过对8255a的初始化和编程控制它的相关工作,使其能够实现上面提到的相应功能。然后,我们对8253进行编程使其在运行中根据8255a芯片传递来的信息的不同执行不同的程序(输出不同的音频)。4.5设计的各键所对应的音符及频率和n值如下表:键值01h02h03h04h05h06h07h08h音符1234567中止频率5245886606987848809881048n值381734013030286525512273202419085电子琴设计关于8255部分的电路图设计:图2-1 8255a芯片与键盘的连接pc1pc0cs 8253gate0out0 csu87接扬 声器频率发生

8、器y0 y1 74ls138 8255a地址为300h303h8253 地址为308h30bh图2-2 8255a与8253芯片之间的连接6 流程图(1)总体流程图;(2) play子程序流程图;(3) 键盘检测流程图;(4) 编码流程图开始所有键都松开有键按下消除抖动,确认按下,编码跳转encode按键松开?y 图4-3键盘检测流程图 7 关于8255初始化部分程序源代码mov ax , data mov ds,ax mov dx,303h mov al,10000010b ,8255初始化 ,控制字为10000010b out dx,almov dx , 300h mov al, 00h

9、,初始化8255的a端口 out dx, al8 实验体会这一学期参加微机原理课程加入了实践环节,那就是软硬件开发实验。自己动手去做东西激起我的兴趣,这使我能有机会能够将课本上学到的东西学以致用。我们小组选的题目是可存储式电子琴这一硬件问题,刚开始觉的这个题目应该不难,但随着设计的深入我发现好多东西并不象想象中的那么简单,虽然我们已学过此类的硬件,但毕竟是纸上的东西,在实际的应用中认有很多的东西需要学习和了解(例如8255,以前只知道怎么用,并不了解它的实质,经过链接键盘和8255对这个芯片有了新的认识,也了解了键盘识别机制)。因而这期间翻阅了大量的资料,经过和同组成员的讨论以及询问老师对一些难点都有了比较深刻的认识。在这次开发工作通过我们的努力,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论