微机原理与接口技术8254电子发声器_课程设计_by

合集下载

论文利用8254设计音乐播放器设计报告

论文利用8254设计音乐播放器设计报告

利用8254设计音乐播放器程兴安庆师范学院物理与电气工程学院安徽安庆 246011指导老师:刘娟摘要:本课题主要是通过汇编语言用软件编程的方法实现简单的音乐播放功能。

通过在《微机原理与接口技术》课程上所学的汇编知识和8253/8254芯片相关知识,用汇编程序完成键控音乐播放的,用8253/8254定时器来产生声音。

8254和8255是计算机中经常使用的两块芯片,在计算机中担负着相当重要的作用,8254用作计数器,8255可作为接口芯片。

这两块芯片可以通过汇编语言编程写入,改变它们的工作状态,实现某些特别的功能。

本文即是通过对它们的编程实现对计算机扬声器的控制,利用硬件直接播放音乐。

该播放器有若干首歌曲可以选择,开始时输出说明,要用户选择要播放的歌曲,然后根据用户按键进行播放、退出或出错提示关键词:汇编语言,音乐播放器,8253/8254定时器一、课程设计的目的和意义利用8254作为音阶频率发生器,应先对至少两段音乐进行编码后存入音符表,并建立好音阶表,每段音符长度不能少于60个,每首连续播放3遍后,自动播放下一段音乐,几段音乐播完后,循环播放,直到有键盘输入任意字符时停止,并且使用8255作为控制开关的并行输入接口,输入开关选择的音乐控制信号。

通过对电子音乐播放器的设计,从电路到汇编代码,再到对程序的调试,有助于对这些接口芯片的工作原理的理解。

同时在调试过程中对不同音阶进行调试,加深了对发声原理的理解与掌握。

从8286CPU到8255并行接口再到8254可编程计数器的使用原来和连接方法进行深入的学习,关于8255和8254相应的程序控制字进行了理解与掌握,基本熟悉了其相关的用法,在把理论知识用在了实际问题的解答之中,进一步学会了怎么将理论与实践结合起来解决问题。

二、基础理论知识2.1、8254功能1、内部结构:如图1所示,8254内部包含数据总线缓冲器、读/写控制逻辑、控制字寄存器和3个结构完全相同的计数器,这三个计数器分别称为计数器0,计数器1和计数器2。

微机原理与接口技术 课程设计

微机原理与接口技术 课程设计

《微机原理与接口技术》课程设计电气与自动化工程系 通信工程院 系:专 业: 年级班级: 学 号: 姓 名: 指导教师: 设计日期:一、设计目的用汇编语言独立完成一个程序,以达到熟练运用汇编语言编程实现加、减、乘、除的计算二、功能分析(1)开发环境:硬件:IBM PC机及其系列机ACSII键盘单色显示器或者彩色显示器软件:1M内存的硬盘或者1个软盘MASM是汇编语言开发环境下的。

汇编语言的特点:1.面向机器的低级语言,通常是为特定的计算机或系列计算机专门设计2.保持了机器语言的优点,具有直接和简捷的特点。

3.可有效地访问、控制计算机的各种硬件设备,如磁盘、存储器、CPU、I/ O端口等。

4.目标代码简短,占用内存少,执行速度快,是高效的程序设计语言。

5.经常与高级语言配合使用,应用十分广泛。

(2)总体设计功能系统分析主要包括设计的功能分析和系统的流程,功能分析放在首位,每一个软件都要能满足一定的功能才有使用价值。

根据功能需求来创建应用程序。

本设计的功能如下:1、输入2个数,先判断是加减运算还是乘除运算,再进行计算2、判断符号是否为运算符3、回车为换行符4、用十进制或十六进制输出运算结果(3)详细设计功能1、主程序功能:对两个数的加减乘除四则运算设置2、子程序功能:分别判断是加减还是乘除的运算输出运算结果三、调试和运行程序(1)调试程序:该汇编编译环境是MasmEdit,是一个集成开发环境,编译,链接,运行全部集成在一起。

程序编好后,直接点汇编按钮,就会提示你有无错误,刚刚编好第一次汇编时,出现了好多错误,其中很大一部分是编写代码时不小心,打字出现的错,其中,分号的错误是致命的,它让汇编无法进行,不能用中文输入法打的注释分号,要用英文。

参考网上的通讯录程序,在改了几天的代码后界面终于出现,但感觉界面不怎么友好,又改了一下界面和光标位置。

(2)运行程序执行时,需在文件名后直接跟上计算表达式,如在命令提示符下执行结果如下:c:\masm>js 3+25c:\masm>js 6*72Ac:\masm>js 10-46c:\masm>js 12/34四、总结第一次真正的感觉到自己是学计算机专业的,第一次真正自己完成一个大型的程序,刚开始拿到汇编程序设计题的时候确实有点儿兴奋,心想着一定要独立快速而又高质量的完成这个程序。

《微机原理》课程设计说明书_键盘电子乐器

《微机原理》课程设计说明书_键盘电子乐器

《微机原理》课程设计说明书_键盘电子乐器武汉理工大学《微机原理》课程设计说明书课程设计任务书学生姓名: 专业班级: 电气0805班指导教师: 工作单位: 自动化学院题目: 键盘电子乐器初始条件:掌握汇编语言程序设计方法,所设计的程序运行后可通过键盘控制,满足系统功能,并实现该系统设计方案。

在DOS,windows,汇编软件环境下运行。

要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)1.设计一个用键盘演奏音乐的程序,计时器系统设计编程定时输出――电子音调,用pc机内部8253time~使扬声器发声。

用汇编语言对8253进行编程,使其OUT0上输出一定的频率,将其一定频率输出到喇叭上,演奏出不同的音节。

pc机的数字键(1,7)作为电子音调的音调选择2. 课程设计说明书应包括:a)设计任务及要求b)方案比较及认证c)程序设计基本思想,程序流程图,部分源程序及注解d)调试记录及结果分析e)参考资料f)附录:全部源程序清单g)总结时间安排:2011年元月07日--元月09日选题、查阅资料和方案设计 2011年元月10日--元月14日编程2011年元月15日--元月16日调试程序,改进与提高2011年元月17日撰写课程设计报告(有调试过程及结果的截屏) 2011年元月18日答辩和交课程设计报告指导教师签名: 2011 年元月 6 日系主任(或责任教师)签名: 年月日1武汉理工大学《微机原理》课程设计说明书摘要利用PC上的定时/计数芯片8253A控制PC扬声器发声。

编写内核模块,直接操作扬声器相关端口,或字符设备驱动,供应用程序调用,用键盘使其发出不同的声音。

关键字:8253 定时器中断2武汉理工大学《微机原理》课程设计说明书目录1. 方案比较 ....................................... 42.芯片介绍 (4)2.1 8255芯片简述 (4)2.1.1 8255三种方式下工作 (4)2.2 8253芯片简述 (5)2.2.1 8253六种工作方式 ........................ 63.通用发声程序 ..................................... 7 4.音调与频率和时间的关系 ........................... 11 附录 (13)附录一: (13)附录二: (14)附录三: (26)附录四: (27)附录五: ...................................... 32 参考文献 (33)3武汉理工大学《微机原理》课程设计说明书键盘电子乐器1.方案比较1.1 发声程序循环优点:简单,易于思维缺点:程序过于长,比较繁琐1.2 调用宏,进行发声优点:程序短缺点:不易想到2.芯片介绍2.1 8255芯片简述8255可编程外围接口芯片是Intel公司生产的通用并行I/O接口芯片,它具有A、B、C三个并行接口,+5V单电源供电。

8254课程设计

8254课程设计

8254课程设计一、课程目标知识目标:1. 让学生掌握8254可编程定时器/计数器的基本工作原理及其在微机系统中的应用。

2. 能够理解并描述8254的内部结构,掌握其编程模型和寄存器功能。

3. 学会使用8254进行定时和计数的基本方法,并能够运用到实际的编程实践中。

技能目标:1. 培养学生通过查阅资料、小组讨论等方式独立解决问题的能力。

2. 提高学生运用8254进行程序设计的实践操作技能,培养学生编写精确、高效的程序代码的能力。

3. 通过实验操作,增强学生的动手能力,培养学生对硬件操作的兴趣。

情感态度价值观目标:1. 激发学生对计算机硬件知识的探究欲望,培养学生的科学精神和创新意识。

2. 培养学生良好的团队合作意识,让学生在小组合作中学会相互尊重、相互支持。

3. 引导学生认识到硬件知识在实际应用中的重要性,提高学生对计算机技术的热爱和责任感。

课程性质:本课程属于计算机硬件基础知识的范畴,以实践操作为主,理论讲解为辅。

学生特点:学生处于高年级阶段,具有一定的计算机硬件知识和编程基础,具备独立思考和解决问题的能力。

教学要求:结合学生的特点,注重理论与实践相结合,充分调动学生的主观能动性,提高学生的实践操作能力和创新意识。

在教学过程中,将课程目标分解为具体的学习成果,以便于教学设计和评估。

二、教学内容本章节教学内容将围绕8254可编程定时器/计数器的原理与应用展开,内容包括:1. 8254内部结构及工作原理:介绍8254的内部组成,包括计数器、控制寄存器等,讲解其工作原理。

2. 8254编程模型:详细讲解8254的编程模型,包括计数器模式、计数器控制字等,使学生了解如何对8254进行编程。

3. 8254寄存器功能:分析8254各个寄存器的功能,包括计数器值寄存器、控制寄存器等,使学生掌握各个寄存器的作用。

4. 定时器/计数器应用实例:通过实际案例,展示8254在定时和计数方面的应用,让学生了解其在实际编程中的使用方法。

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

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

课程设计任务书学生姓名:专业班级:电子信息工程2班指导教师:工作单位:题目:电子报警器设计一、设计条件:1.运用所学的微机原理和接口技术知识;2.微机原理和接口技术实验室的实验箱设备。

二、主要任务:(包括课程设计工作量及其技术要求以及说明书撰写等具要求)设想制作一个防盗器件。

具体要求:程序运行时扬声器发出警报声,使得8个LED指示灯不停光闪,光闪周期为2秒,14秒倒计时结束后液晶显示器显示相关警报信息。

警报信息出现后LED灯熄灭,程序按任意键退出后声不响光不闪。

根据设计任务和要求,在设计前必须对微机原理与接口技术中的8255和8253芯片熟悉了解和掌握。

设计中主要要完成的是发声报警和发光报警这两个部分功能,故在程序设计中只要设计触动键盘中的数字键即8个LED不停光闪,同时内扬声器发出警报声,且在屏幕上显示警报信息。

在设计发声报警时利用了8253可编程定时记数器。

在设计发光报警时利用了8255芯片。

在程序设计中利用INT 10H实现在屏幕上显示相关的警报信息。

三、时间安排:指导教师签名:年月日基于微机原理电子警报器的设计摘要在当今高速发展的中,人们对自身所处的环境越来越关心,居家安全已成为当今小康之家优先考虑的。

当您上班家中无人,或者仅有老人孩子在家,或者您晚上在家熟睡,您必须确保家庭成员和财产的绝对安全。

众多住宅小区的安防防犯主要倚靠安装防盗窗、防盗门以及人工防犯。

这样不仅有碍美观,不符合防火的要求、而且不能有效地防止坏人的侵入。

随着生活水平的不断提高,人们的安全防范意识也在不断的增强,各种智能防盗报警器应运而生,并不断地向各个领域深入,报警器是一种为防止或预防某事件发生所造成的后果,以声音、电话提醒等形式来警示或提醒我们应当采取某种行动的电子产品。

随着科技的进步,家居安防中的机械式报警器越来越多地被先进的电子报警器代替,如防盗报警器、防火报警器、煤气天然气泄露报警器等。

并且电子报警器在安全智能家居监控报警系统起越来越重要的作用。

微机原理与接口技术 第04章 可编程定时器计数器8254PPT课件

微机原理与接口技术 第04章 可编程定时器计数器8254PPT课件
在微型机里,把定时器和计数器做成一片大规模集成电路, 称为定时器/计数器。
4.1 概述
输出(分频) 输入脉冲
声音的产生:
对输出方波整形
变成正弦波,经放大处理接 到扬声器上,产生不同声音 的波形。
若选择标准输入脉冲, 例1KHz,则当输入1000个标 准输入脉冲,需要1s,则当 计数值为1000时数=要求定时的时间/时钟脉冲的周期
(4)控制字寄存器
控制字寄存器用来存放由CPU写入8254的方式选择控制字,由它 来定义8254中各通道的工作方式,其使用格式如下图所示。
接收CPU送入的读/写控制信号,并完成对芯片内部各功能 部件的控制功能,因此,它实际上是8254芯片的控制器。
读/写控制电路 可接收的控制信号如下:
A1A0——端口选择信号,由CPU输入。8254内部有3个独 立的通道和一个控制字寄存器,它们构成8254芯片的4个端 口,CPU可对3个通道进行读/写操作,对控制字寄存器进 行写操作。这4个端口地址由最低2位地址码A1A0来选择。 • A1A0 = 00 通道0 • A1A0 = 01 通道1 • A1A0 = 10 通道2 • A1A0 = 11 控制字寄存器
GATE作为各通道的门控信号,对于各种不同的工作方式,它所起的 作用各不相同。在8253的应用中,必须正确使用GATE信号,才能保 证各通道的正常操作。
通道0~通道2 工作方式说明
当某 通道 用作计数器时,应将要求计数的次数预置到该通道 的计数器中,被计数的事件应以脉冲方式从CLKi端输入,每 输入一个计数脉冲,计数器内容减“1”,待计数值计到“0”, OUTi端将有输出,表示计数次数到。
当某 通道 用作定时器时,由CLKi输入一定频率的时钟脉冲。 根据要求定时的时间长短确定所需的计数值,并预置到计数 器中,每输入一个时钟脉冲,计数器内容减“1”,待计数值 计到“0”,OUTi将有输出,表示定时时间到。允许从CLKi输 入的时钟频率在1~2MHz范围内。

微机原理与接口课程设计报告简单音乐播放器

微机原理与接口课程设计报告简单音乐播放器

8254的引脚
(1)D7~D0:双向、三态数据线引脚,及系统的数据线连接,传送控制、数据及状态信息。

(2)RD:来自于CPU的读控制信号输入引脚,低电平有效。

(3)WR:来自于CPU的写控制信号输入引脚,低电平有效。

(4)CS:芯片选择信号输入引脚,低电平有效。

(5)A1、A0:地址信号输入引脚,用以选择8254芯片的通道及控制字寄存器。

(6).VCC及GND:+5V电源及接地引脚。

(7)CLKi: i=0,1,2,第i个通道的计数脉冲输入引脚,8254规定,加在CLK引脚的输入时钟信号的频率不得高于2.6MHZ,即时钟周期不能小于380ns。

(8)GATEi: i=0,1,2,第i个通道的门控信号输入引脚,门控信号的作用及通道的工作方式有关。

(9)OUTi:i=0,1,2,第i个通道的定时/计数到信号输出引脚,输出信号的形式由通道的工作方式确定,此输出信号可用于触发其它电路工作,或作为向CPU发出的中断请求信号。

2.3 8254端口地址。

8254定时器计数器设计实验-电子发声设计

8254定时器计数器设计实验-电子发声设计

计算机硬件技术基础8254定时器/计数器设计实验—电子发声设计航空航天 083614 孙诚骁 083605 李嘉骞一、实验目的学习用8254定时/计数器是扬声器发声的编程方法。

二、实验设备PC 微机一台、TD-PIT 实验系统一套。

三、实验内容根据实验提供的音乐频率表和时间表,编写程序控制8254,使其输出连接到扬声器上能发出相应的乐曲。

接线方法如下:四、实验所用芯片8254是Intel 公司生产的可编程间隔定时器。

它具有以下基本功能:(1)有3个独立的16位计数器;(2)每个计数器可接二进制或十进制(BCD )计数;(3)每个计数器可编程工作于6种不同工作方式;(4)8254每个计数器允许的最高频率为10MHZ ;(5)8254有读回命令,除了可以读出当前计数单元的内容外,还可以读出状态寄存器的内容;(6)计数脉冲可以是有规律的时钟信号,也可以是随机信号。

计数初值公式为n=f(clki)/f(outi),其中f(clki)是输入时钟脉冲的频率,f(outi)是输出波形的频率。

8254的工作方式如下述:(1)方式0:计数到0结束输出正跃变信号方式。

(2)方式1:硬件可重触发单稳方式。

(3)方式2:频率发生器方式。

(4)方式3:方波发生器。

(5)方式4:软件触发选通方式。

(6)方式5:硬件触发选通方式。

CLK0 CLK0五、实验说明及步骤一个音符对应一个频率,将对应一个音符频率的方波通到扬声器上,就可以发出这个音符的声音。

音符与频率对照关系见下表所示。

将一段乐曲的音符对应频率的方波依次送到扬声器,就可以发出这段乐曲的声音。

音符与频率对照表(单位:HZ)利用8254的方式三—“方波发生器”,将相应一种频率的计数初值写入计数器,就可以产生对应频率的方波。

计数初值的计算如下:计数初值=输入时钟÷输出频率例如输入时钟采用系统总线上CLK(1.04166MHZ),要得到800HZ的频率,计数初值即为104166/800.对于每一个音符的演奏时间,可以通过软件延时来处理。

微机原理与接口技术ppt 第8章 Intel8254

微机原理与接口技术ppt 第8章 Intel8254
同济大学电信学院
8.2 8254-PIT的控制字
在读取计数值时,可令D5D4=00,则 把写控制字时的计数值锁存,以后再读 取。 3.工作方式(D3D2D1)
8254的每个通道可以有6种不同的工 作方式,由这三位决定。每一种方式的 特点,随后介绍。
同济大学电信学院
8.2 8254-PIT的控制字
同济大学电信学院
8.2 8254-PIT的控制字
1. 计数器选择(D7D6) 控制字的最高两位决定这个控制字 是哪一个通道的控制字。由于三个通道 的工作是完全独立的,所以需要有三个 控制字寄存器分别规定相应通道的工作 方式。但它们的地址是同一个,即 A1A0=11——控制字寄存器的地址。
同济大学电信学院
CPU在初始化编程时,写入8254的控制字; CPU向某一通道写入的计数值; CPU从某一个通道读取的计数值或状态。
同济大学电信学院
8.1.2 8254-PIT的内部结构
2.读/写逻辑 这是8254内部操作的控制部分。首先有 片选信号CS的控制部分,当CS为高电平(无 效)时,数据总线缓冲器处在三态,与系统 的数据总线脱开,故不能进行编程,也不能 进行读写操作。其次,由这部分选择读写操 作的端口(三个计数器及控制字寄存器),也 由这部分控制数据传送的方向,读数据由 8254传向CPU,写数据由CPU传向8254。
同济大学电信学院
8.1 概述
不可编程的硬件定时可以采用小规模 集成电路器件如555,外接定时部件——电 阻和电容构成。这样的定时电路简单,而 且利用改变电阻和电容,可以使定时在一 定的范围内改变。但是,这种定时电路在 硬件连接好以后,定时值及定时范围不能 由程序(软件)来控制和改变,由此就生产 了可编程的定时器电路。

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

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

《微机接口技术课程设计》设计报告题目:实时钟显示与定时控制设计专业:电子信息工程班级:XXXXXXX学号:XXXXXXXXX姓名:XXX指导老师:XXX设计时间:2013 年6 月19日到2013年6月25 号1.设计任务说明通过本课程设计,综合应用接口技术各汇编语言程序设计技术,在PC 机上实现时钟显示、定时和响铃,以提高接口、汇编技术的应用能力。

2. 总体设计(1). 利用BIOS 和DOS 的系统功能调用,能将计算机系统的日期和时间读出并显示出来。

(2). 用“时:分:秒”(都是两位)的形式连续显示系统时间。

(3).利用定时接口芯片每秒钟响一次铃。

(4). 提示输入定时时间(即定时秒数),每经历指定的秒数,则演奏乐曲。

3. 详细设计模块描述:⑴.利用定时中断实现时钟显示。

当产生定时中断时(由8259A的IRQ0引起),CPU转入BIOS的08H 号中断处理程序,在该中断处理程序中是一条软中断指令“INT 1CH”,而在该软中断程序中只有一条IRET指令,这样系统每秒钟产生18.2次定时中断,调用18.2次INT 1CH,这为开发者提供了一个编写与时间有关的程序的软中断接口,上例的定时响铃就是借用这个软接口实现的。

其具体操作如下:①在时钟显示程序,截获1CH号中断,在新的1CH中断处理程序安排一个计数器,记录调用的次数,每18次(约一秒钟)显示一次当前时间。

②利用BOIS的1AH号中断的0号功能,读取当前计时器的数值:入口参数:AH=02H执行: INT 1AH出口参数:AL=午夜信号,CH=时的BCD码,CL=分的BCD码,DH=秒的BCD 码③利用BIOS的10H号中断的13H号功能,实现在屏幕的右上角显示时间。

④在主程序中要保存原1CH号中断的中断向量,并设置新的时钟显示中断程序的中断向量,然后作其它工作,如调用BIOS的键盘中断INT 16H 的0号功能,等待用户按键盘,也就是等待中断的发生,并在屏幕右上角显示时间……,当用户按键后,主程序工作完成后,恢复原1CH中断向量。

利用8253控制扬声器发声设计

利用8253控制扬声器发声设计

东华理工大学长江学院微机接口课程设计报告报告题目:利用8253控制扬声器发声设计目录1. 课程设计的内容 (1)2. 课程设计的要求 (1)3. 设计思想 (2)4. 硬件电路 (3)5. 软件设计 (5)6. 心得体会 (7)7. 参考文献 (8)一.课程设计的内容1. 根据给定要求设计硬件电路的原理图,并用导线连接元器件。

2. 根据给定要求设计要求功能的程序,并检查程序是否合理完整。

3. 通电,将程序在计算机上先调试,而后再装载,并运行该程序。

4. 观察实验结果,看是否能达到给定要求。

5. 总结实验中的问题,并分析与讨论。

完成课程设计的实验报告。

二.课程设计的要求1. 熟悉实验中硬件和软件设备,并能熟练使用这些设备。

2. 学会如何用软件控制试验箱。

3. 熟悉实验的硬件环境以及软件环境。

4. 学会通过配置的硬件设备完成本次试验。

5. 学会8253芯片和微机接口的原理和方法。

6. 掌握8253的工作方式和编程原理,熟悉它的控制字的设置和端口地址的寻找。

三.设计思想本实验采用的是以8086微处理器作为CPU,输入8MHz 的频率,而后利用双4位二进制计数器74LS393进行分频,使其输出一个1MHz的频率。

用8253作为定时计数器产生时钟频率,最后输出给定的频率要求20KHz。

在本次实验中,74LS393的作用是将输入系统的高频信号源8MHz分成低频信号1MHz输入到8253中。

将8MHz高频信号通过导线输入到74LS393的T输入端,然后从T2输出端输出1MHz的低频信号。

而8253的功能就是定时计数,输出要求给定的频率20KHz,再将输出的信号通过导线输入到音频放大器里,最后再将输出的信号通过导线输入到喇叭里。

由于要求是产生声音的不同,且要输出方波信号,故要求8253利用到两个计数器,计数器0和计数器1,工作于方式3,以及采用二进制和16位计数,先读/写计数器低位字节,后读/写计数器高位字节。

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

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

摘要步进电机是将电脉冲信号转变为角位移或线位移的开环控制元件。

在非超载的情况下,电机的转速、停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即给电机加一个脉冲信号,电机则转过一个步距角。

步进电机控制系统以8088作为控制的核心元件,利用8255的A口控制步进电机,C口连接K0-K7,以选取不同档的移动速度,同时获取控制转动方向(即正转和反转).本课程设计报告通过步进电机的基本介绍、系统的软硬件设计(包括最小系统介绍、接口电路设计、延时程序设计、步进电机的驱动程序设计等几个主要模块)、完整的汇编语言程序等,我们完成了对步进电机系统的设计,并完成了相应的任务,如正转、反转、正向加速、反向加速等,使我们进一步掌握了汇编语言,也使我们能很好的把书本上的知识与实践相结合,大大提高了我们的动手能力关键字:步进电机;8086CPU;8255可编程I/O接口芯片;汇编语言目录摘要 (1)1.1步进电机转动控制的设计要求与设计方案1.2步进电机转动控制的要求与功能 (3)1.3总体设计方案 (3)一、步进电机转动控制设计的硬件设计二、 2.1步进电机转动控制的硬件框图 (4)2.2 步进电机驱动原理 (4)三、步进电机转动控制软件设计3.1 主程序流程图 (6)3.2 8255初始化 (7)四、步进电机硬/软件的调试4.1 硬件调试 (8)4.2 软件调试 (8)4.3 调试过程 (8)五、设计总结 (9)附录一 (10)一、步进电机控制的设计要求与设计方案1.1步进电机转动控制的要求与功能使用汇编语言外加K0-K7等一系列的开关实现对步行电机转速与方向的控制(实现两个以上功能)1.启动与停止控制:用户拨动某一指定键后可以实现电机的启动与停止的控制2.方向的控制:用户将某一指定键拨向上可以实现电机的正转,拨向下实现电机的反转3.速度的控制:用户将另一指定键拨向上可以实现电机的加速转动,拨向下实现电机的减速转动4.综合控制:用户一起拨动上述的按键后可以实现电机的加速正转,减速反转等操作;1.2总体设计方案选用TN88\86实验箱与微机,通过在实验箱构造硬件电路,主要是利用8255A 芯片单元模块、步进电机单元模块。

微机原理与接口技术综合性实验指导书

微机原理与接口技术综合性实验指导书

精品文档微机原理与接口技术实验电子发声系统设计【实验目的】(1) . 掌握8254 接口电路的连接方法,懂得分频数据对发生频率的影响。

(2) . 掌握应用汇编语言控制8254 使扬声器发声的程序设计的方法步骤。

【实验仪器】PC微机一台、TD-PIT+实验系统一套。

【实验内容】连接电子发声电路,根据实验提供的音乐频率表和时间表,编程控制8254,使其输出并驱动扬声器发出相应的乐曲。

编程演奏《友谊地久天长》。

(1)确认实验系统与PC机的连线已接通。

(2)设计连接实验电路。

(3)运用PIT端口资源工具(CHEC程序),查看I/O片选端口始地址。

( 4)编程并编译、链接。

运行程序,听扬声器发音是否正确。

【程序的数据处理】DATA SEGMENTFREQ_LIST DW 371,495,495,495,624,556,495,556,624 ; 频率表DW 495,495,624,742,833,833,833,742,624DW 624,495,556,495,556,624,495,416,416,371DW 495,833,742,624,624,495,556,495,556,833DW 742,624,624,742,833,990,742,624,624,495DW 556,495,556,624,495,416,416,371,495,0TIME_LIST DB 4, 6, 2, 4, 4, 6, 2, 4, 4 ; 时间表DB 6, 2, 4, 4, 12, 1, 3, 6, 2 DB 4, 4, 6, 2, 4, 4, 6, 2, 4, 4 DB 12, 4, 6, 2,4, 4, 6, 2, 4, 4DB 6, 2, 4, 4, 12, 4, 6, 2, 4, 4 DB 6, 2, 4, 4, 6, 2, 4, 4, 12DATA ENDS【上机实验报告】1.上机实验所用的设备(型号或规格),实验环境条件。

微机原理与接口技术 第04章 可编程定时器计数器8254

微机原理与接口技术 第04章 可编程定时器计数器8254

4.1 概述
输出(分频)
声音的产生:
对输出方波整形 变成正弦波,经放大处理接 到扬声器上,产生不同声音 的波形。
输入脉冲
若选择标准输入脉冲, 例1KHz,则当输入1000个标 准输入脉冲,需要1s,则当 计数值为1000时,输出端每 隔1s输出一个脉冲,实现了 定时。 计算初值:N=fclki / fouti
硬件启动:在写入计数初值后计数器不工作,只有当GATE信 号出现0到1的变化后,计数器才开始工作 初值自动重装:当计数结束后,即减1计数器减到规定值的时候, 存放在初值寄存器中的计数初值自动重新装入减1计数器,这种功 能称为初值自动装载(方式2和方式3具有此功能)
4.2.3 8254的工作方式
4.1 概述
实现定时/计数有三种不同的方法:
(1)软件定时:执行一个具有固定延迟时间的循环程序。
优点:不需外加硬件,灵活,定时较准确。 缺点:在定时过程中CPU不能做任何其它工作。
总结:适用于定时时间短的场合。
(2)硬件定时:采用中规模TTL或CMOS芯片外加电阻电容来实现的。 不同的时间间隔主要是通过配接不同的阻容值达到的。 优点:不占用CPU时间。 缺点:变换定时较难。 总结:适用于定时时间间隔固定的场合。
8254有6种工作方式:方式0~方式5。对于每一种工作方式, 由时钟输入信号CLK确定计数器递减的速率。门控信号GATE用于 允许或禁止计数器计数。计数结束时在输出线OUT上产生一个信 号。 无论采用哪一种工作方式,都会遵循下面几条原则: (1)控制字写入计数器时,所有的控制逻辑电路立即复位, 输出端OUT进入初始态(高电平或低电平)。 (2)计数初值写入后,要经过一个时钟上升沿和一个下降 沿,计数执行部件才开始计数。 (3)在时钟脉冲CLK的上升沿时,门控信号被采样。 (4)在时钟脉冲CLK的下降沿时,计数器作减1计数,输出 端OUT的波形也都是在时钟周期的下降沿时产生电平的变化。

《微机原理与应用》课程设计-电子音乐播放器模板

《微机原理与应用》课程设计-电子音乐播放器模板

电子音乐播放器一、课程设计的目的和意义学习和掌握计算机中常用接口电路的应用和设计技术,学会针对不同的要求设计汇编程序代码,充分认识理论知识对应用技术的指导性作用,进一步加强理论知识与应用相结合的实践和锻炼。

通过这次设计实践能够进一步加深对专业知识和理论知识学习的认识和理解,使自己的设计水平和对所学知识的应用能力以及分析问题解决问题的能力得到全面提高。

二、设计要求利用8254作为音阶频率发生器,应先对至少两段音乐进行编码后存入音符表,并建立好音阶表,每段音符长度不能少于60个,每首连续播放3遍后,自动播放下一段音乐,几段音乐播完后,循环播放,直到有键盘输入任意字符时停止,并且使用8255作为控制开关的并行输入接口,输入开关选择的音乐控制信号。

三、设计总框图四、设计设计思路说明:电子音乐播放器属于接口电路的连接使用,本设计是以8254芯片为核心的发生系统。

8086CPU 在形成系统总线后,通过和8254及8255的连接使用可以很好的驱动扬声器发音。

系统初始化后,8255通过B 通道,从控制开关读取所需的控制字,并送入8086CPU 中进行判断,选择不同的播放音乐。

使8254的通过0号计数器工作在“频率发生器”方式3,向发生器发出不同频率的方波。

当给定不同的计数初值时可以使扬声器发出不同频率的音响。

五、程序流程图开始 读取音符频率是1H 吗? N 是2H 吗? N 是4H 吗? Y Y N 键盘是否输入? 结束播放song1 播放song2 播放song3 Y N Y播放音乐 读取选择信号 CX=0 N Y六、接口电路原理图1、8254的基本知识8254占用4个端口,3个定时器各占1个,控制端口占1 个。

8254的内部结构如图所示,它主要包括以下几个主要部分:8254的内部结构(1).数据总线缓冲器实现8254与CPU数据总线连接的8位双向三态缓冲器,用以传送CPU向8254的控制信息、数据信息以及CPU从8254读取的状态信息,包括某时刻的实时计数值。

微机原理电子音乐课程设计

微机原理电子音乐课程设计

成绩:课程设计报告学院:题目:电子音乐专业:---------------班级:姓名:学号:指导教师:实验时间:电子音乐1.设计题目分析8254和8255是计算机中经常使用的两块芯片,在计算机中担负着相当重要的作用,8254 用作计数器,8255 可作为接口芯片。

这两块芯片可以通过汇编语言编程写入,改变它们的工作状态,实现某些特别的功能。

本课题是作为扬声器发声基准时钟,8254计数器0设置为工作方式3,用信号源1MHZ驱动扬声器产生音乐。

2.总体方案设计分析1、8254和 8255的连接。

(1)8254:计数器,用于产生一定频率的波形,是音频信号的来源。

其中芯片是否工作取决于其片选信号GATE0,输出的频率大小受控于编程时写入的计数器初值。

(2)8255:通用可编程并口芯片,这里用来做两个开关:一是用于控制与门,二是控制8254 的GATE0 引脚从而控制它的输出。

只有两个开关同时打开,扬声器才有可能发声。

(3)扬声器的驱动。

从结构图上可以看出,要使扬声器发出声音,需要满足以下几个条件:一是 8255 的 D0 和D1位必须置1,从而打开开关二是8254必须输出满足音频频率的波形。

只要通过对这两个芯片编程,控制其状态,使它们满足了这两个条件,扬声器就可以发声了。

2、系统中几个关键部分的实现。

(1)声音频率的变化。

声音频率的变化主要利用8254实现。

8254是在 PC/AT 以及以后系统中使用的一块可编程计数器。

该芯片包含3个独立但结构相同的计数电路,分别被称为0#、1#、2#计数器。

8254 占用 4 个地址,在 PC 机中的地址为40H~43H,其中 43H 对应 8254 的控制字,40H~42H 分别对应0#~3#计数器。

在 PC 机中,主要利用8254的2#计数器功能。

2#计数器是产生音频信号的关键器件,它的CLK0端为时钟输入信号,接入了 1MHz 的固定重复频率脉冲,在GATE0 端加入高电平且将 0#计数器设置为工作方式3,在 OUT0端口即可输出一定频率的方波,其频率为1MHz除以置入的计数分频初值。

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

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

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

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

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

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

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

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

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

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

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

目录一、课程设计任务 (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电子发声器_课程设计_BY(凉)

微机原理与接口技术-8254电子发声器_课程设计_BY(凉)

一.实验名称:发声器二.功能及使用方法:设计一个电子琴发声程序,并在运行时通过实验箱上的扬声器发声,并且当按下数字1~14时,依次发出1,2,3,4,5,6,7的低音和1,2,3,4,5,6,7的中音。

并在实验箱上的发声器上发声,这肯定需要有发声程序,驱动发声程序,还有键盘扫描程序,及为了能够听见清脆的字符音还得对程序进行必要的延时。

利用8254芯片所提供转化后的频率送到发声单元进行发声及8255芯片送提供的输入输出功能,来完成从键盘的输入到发声装置发声的控制。

电子发声原理:一个音符对应一个频率,将对应一个音符频率的方波通到扬声器上,就可以发出这个音符的声音。

将一段乐曲的音符对应频率的方波一次送到扬声器,就可以演奏出这段乐曲。

利用8254的“方波发生器”,将相应的一种频率的计数初值写入计数器,就可以产生对应频率的方波。

计数初值的计算如下:计数初值= 输入时钟\输出频率例如输入时钟采用1MHZ,要得到800HZ的频率,计数初值即为1000000/800。

音符与表的对照关系如上表所示。

对于每一个音符的演奏时间,可以通过软件延时来处理。

首先确定单位延时子程序(根据CPU的频率不同而有所变化)。

然后确定每个音符演奏需要几个单位延时,将此值送入寄存器,再调用延时子程序即可。

三.实验器件:通过实验箱上的扬声器发声,并且当按下数字1~14时,依次发出1,2,3,4,5,6,7的低音和1,2,3,4,5,6,7的中音。

并在实验箱上的发声器上发声。

选用器件:8254和8255芯片各一片,微机一台,TPC-H通用微机接口实验系统一台,扬声器和导线若干四.电路连接图:8254部分接线图8255部分接线图五.各子程序功能1.为8255和8254所定义的端口地址:I0Y0 EQU 06C0HMY8254_COUNT0 EQU I0Y0+00HMY8254_COUNT1 EQU I0Y0+02HMY8254_COUNT2 EQU I0Y0+04HMY8254_MODE EQU I0Y0+06HMY8255_A EQU 0640HMY8255_B EQU 0642HMY8255_C EQU 0644HMY8255_MODE EQU 0646H2..频率表及所对应的时间表:FREQ_LIST DW 262H,294H,330H,349H,392H,440H,496HDW 523H,587H,659H,698H,784H,880H,988H DTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07HDB 7FH,6FH,77H,7CH,39H,5EH,79H,71H3.定义8255和8254的控制字MOV DX,MY8255_MODEMOV AL,81HOUT DX,ALMOV DX,MY8254_MODEMOV AL,36HOUT DX,ALSCAN子程序实现取出按键值并输入A口(清屏子程序)CCSCAN:MOV AL,00HMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_CIN AL,DXNOT ALAND AL,0FHRET5.Play输出发音的子程序PLAY PROCMOV AH,0MOV SI,AXSHL SI,1MOV DX,0FHMOV AX,4240HDIV WORD PTR [SI]MOV DX,MY8254_COUNT0OUT DX,ALMOV AL,AHOUT DX,ALRETPLAY ENDP6.延时子程序DALL Y PROCD0: MOV CX,0010HD1: MOV AX,02HD2: DEC AXJNZ D2LOOP D1DEC DLJNZ D0RETDALL Y ENDP7.按键扫描功能COLUM:MOV AL,CHMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_CIN AL,DXL1:TEST AL,01HJNZ L2MOV AL,00HJMP KCODEL2:TEST AL,02HJNZ L3MOV AL,04HJMP KCODEL3:TEST AL,04HJNZ L4MOV AL,08HJMP KCODEL4:TEST AL,08HJNZ NEXTMOV AL,0CHKCODE: ADD AL,CLCALL PLAYPUSH AXKON:CALL DALL YCALL CCSCANJNZ KONPOP AXJMP BEGIN1六.源程序清单I0Y0 EQU 06C0HMY8254_COUNT0 EQU I0Y0+00HMY8254_COUNT1 EQU I0Y0+02HMY8254_COUNT2 EQU I0Y0+04HMY8254_MODE EQU I0Y0+06HMY8255_A EQU 0640HMY8255_B EQU 0642HMY8255_C EQU 0644HMY8255_MODE EQU 0646HSTACK1 SEGMENT STACKDW 256 DUP(?)STACK1 ENDSDA TA SEGMENTFREQ_LIST DW 262H,294H,330H,349H,392H,440H,496H DW 523H,587H,659H,698H,784H,880H,988H DTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H DB 7FH,6FH,77H,7CH,39H,5EH,79H,71HDA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TA START:MOV AX,DATAMOV DS,AXMOV DX,MY8255_MODEMOV AL,81HOUT DX,ALMOV DX,MY8254_MODEMOV AL,36HOUT DX,ALBEGIN1:CALL CCSCANJNZ INK1JMP BEGIN1INK1:CALL CCSCANJNZ INK2JMP BEGIN1INK2:MOV CH,0FEHMOV CL,00HCOLUM:MOV AL,CHMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_CIN AL,DXL1:TEST AL,01HJNZ L2MOV AL,00HJMP KCODEL2:TEST AL,02HJNZ L3MOV AL,04HJMP KCODEL3:TEST AL,04HJNZ L4MOV AL,08HJMP KCODEL4:TEST AL,08HJNZ NEXTMOV AL,0CHKCODE: ADD AL,CLCALL PLAYPUSH AXKON:CALL DALL YCALL CCSCANJNZ KONPOP AXJMP BEGIN1NEXT:INC CLMOV AL,CHTEST AL,08HJZ KERRROL AL,1MOV CH,ALJMP COLUMKERR:JMP BEGIN1CCSCAN:MOV AL,00HMOV DX,MY8255_AOUT DX,ALMOV DX,MY8255_CIN AL,DXNOT ALAND AL,0FHRETPLAY PROCMOV AH,0MOV SI,AXSHL SI,1MOV DX,0FHMOV AX,4240HDIV WORD PTR [SI]MOV DX,MY8254_COUNT0OUT DX,ALMOV AL,AHOUT DX,ALRETPLAY ENDPDALL Y PROCD0: MOV CX,0010HD1: MOV AX,02HD2: DEC AXJNZ D2LOOP D1DEC DLJNZ D0RETDALL Y ENDP CODE ENDSEND START。

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

一.实验名称:发声器
二.功能及使用方法:
设计一个电子琴发声程序,并在运行时通过实验箱上的扬声器发声,并且当按下数字1~14时,依次发出1,2,3,4,5,6,7的低音和1,2,3,4,5,6,7的中音。

并在实验箱上的发声器上发声,这肯定需要有发声程序,驱动发声程序,还有键盘扫描程序,及为了能够听见清脆的字符音还得对程序进行必要的延时。

利用8254芯片所提供转化后的频率送到发声单元进行发声及8255芯片送提供的输入输出功能,来完成从键盘的输入到发声装置发声的控制。

电子发声原理:
一个音符对应一个频率,将对应一个音符频率的方波通到扬声器上,就可以发出这个音符的声音。

将一段乐曲的音符对应频率的方波一次送到扬声器,就可以演奏出这段乐曲。

利用8254的“方波发生器”,将相应的一种频率的计数初值写入计数器,就可以产生对应频率的方波。

计数初值的计算如下:
计数初值= 输入时钟\输出频率
例如输入时钟采用1MHZ,要得到800HZ的频率,计数初值即为1000000/800。

音符与表的对照关系如上表所示。

对于每一个音符的演奏时间,可以通过软件延时来处理。

首先确定单位延时子程序(根据CPU的频率不同而有所变化)。

然后确定每个音符演奏需要几个单位延时,将此值送入寄存器,再调用延时子程序即可。

三.实验器件:
通过实验箱上的扬声器发声,并且当按下数字1~14时,依次发出1,2,3,4,5,6,7的低音和1,2,3,4,5,6,7的中音。

并在实验箱上的发声器上发声。

选用器件:
8254和8255芯片各一片,微机一台,TPC-H通用微机接口实验系统一台,扬声器和导线若干四.电路连接图:
8254部分接线图
8255部分接线图
五.各子程序功能
1.为8255和8254所定义的端口地址:
I0Y0 EQU 06C0H
MY8254_COUNT0 EQU I0Y0+00H
MY8254_COUNT1 EQU I0Y0+02H
MY8254_COUNT2 EQU I0Y0+04H
MY8254_MODE EQU I0Y0+06H
MY8255_A EQU 0640H
MY8255_B EQU 0642H
MY8255_C EQU 0644H
MY8255_MODE EQU 0646H
2..频率表及所对应的时间表:
FREQ_LIST DW 262H,294H,330H,349H,392H,440H,496H
DW 523H,587H,659H,698H,784H,880H,988H DTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H
DB 7FH,6FH,77H,7CH,39H,5EH,79H,71H
3.定义8255和8254的控制字
MOV DX,MY8255_MODE
MOV AL,81H
OUT DX,AL
MOV DX,MY8254_MODE
MOV AL,36H
OUT DX,AL
SCAN子程序实现取出按键值并输入A口(清屏子程序)
CCSCAN:MOV AL,00H
MOV DX,MY8255_A
OUT DX,AL
MOV DX,MY8255_C
IN AL,DX
NOT AL
AND AL,0FH
RET
5.Play输出发音的子程序
PLAY PROC
MOV AH,0
MOV SI,AX
SHL SI,1
MOV DX,0FH
MOV AX,4240H
DIV WORD PTR [SI]
MOV DX,MY8254_COUNT0
OUT DX,AL
MOV AL,AH
OUT DX,AL
RET
PLAY ENDP
6.延时子程序
DALL Y PROC
D0: MOV CX,0010H
D1: MOV AX,02H
D2: DEC AX
JNZ D2
LOOP D1
DEC DL
JNZ D0
RET
DALL Y ENDP
7.按键扫描功能
COLUM:
MOV AL,CH
MOV DX,MY8255_A
OUT DX,AL
MOV DX,MY8255_C
IN AL,DX。

相关文档
最新文档