8096单片机音乐程序设计.docx

上传人:b****2 文档编号:25923113 上传时间:2023-06-16 格式:DOCX 页数:13 大小:415.63KB
下载 相关 举报
8096单片机音乐程序设计.docx_第1页
第1页 / 共13页
8096单片机音乐程序设计.docx_第2页
第2页 / 共13页
8096单片机音乐程序设计.docx_第3页
第3页 / 共13页
8096单片机音乐程序设计.docx_第4页
第4页 / 共13页
8096单片机音乐程序设计.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

8096单片机音乐程序设计.docx

《8096单片机音乐程序设计.docx》由会员分享,可在线阅读,更多相关《8096单片机音乐程序设计.docx(13页珍藏版)》请在冰豆网上搜索。

8096单片机音乐程序设计.docx

8096单片机音乐程序设计

课程设计

 

课程名称:

单片机课程设计

学院:

电气工程学院专业:

电气工程及其自动化

姓名刘明学号:

0908040270

年级:

092任课教师:

刘晓波

2012年7月10日

 

目录

摘要3

关键字3

设计要求3

设计内容3

设计原理4

1、8098芯片管脚介绍:

4

2、2764EPROM芯片管脚介绍:

5

3、74LS373锁存器介绍6

4、6264RAM芯片介绍:

6

程序设计7

1、硬件连接图7

2、程序流程图9

3、汇编程序10

程序条件13

心得体会14

参考资料15

 

摘要

通过对MCS-96系列单片机的学习和理解来进行本次课程设计,通过本次课程设计,加深对单片机的理解。

掌握定时器和汇编语言的基本原理,以达到综合运用自己所学的知识。

关键字

MCS—96系列单片机芯片流程图汇编

设计要求

本设计要求运用程序和相应的硬件连接,设计一个可以具有使定时器唱歌的功能。

设计内容

音乐播放条件是利用P2.5管脚输出高低电平的变化,即通过改变高低电平的变化速率和改变时间,来实现不同的音调和节奏。

音乐程序的编写是通过程序运行时所消耗的状态周期来延时,根据每条指令所需要的状态周期,通过改变参数来实现频率的输出和节拍的形成。

运用查表的方法完成音乐的演奏。

设计原理

1、8098芯片管脚介绍:

48脚的8098芯片

①输入/输出口

48脚8098有4个8位并行I/O口:

P0口:

只用于输入。

也可用作8路A/D转换器模拟量信号的输入口线ACH0~ACH7。

P2口:

多功能双向口。

P3口、P4口:

在访问外部存储器时用作系统的地址/数据总线。

②输入/输出控制、状态寄存器

8098中有2个I/O控制寄存器IOC0、IOCl,以及2个状态寄存器IOS0、IOS1。

I/O控制器0(IOC0)

I/O控制器1(IOC1)

I/O状态寄存器0(IOS0)

I/O状态寄存器1(IOS1)

图18098单片机芯片

2、2764EPROM芯片管脚介绍:

2764EPROM芯片:

2764是容量为8K*8的EPROM,紫外线擦除,电编程,为28脚的芯片,工作电压我+5V,编程电压为+21V,地址线为A0—A12.工作电源为+5V,编程电源为+21V,最大工作电流为100mA,标准读出时间为250ns的,也有为200ns的,2764引脚图见图2

图22764EPROM芯片引脚图

3、74LS373锁存器介绍:

74LS373是具有8个锁存器的芯片,其引脚图如图3

图3

74LS373引脚图管脚功能

(1)1脚是输出使能(OE),是低电平有效,当1脚是高电平时,不管输入3、4、7、8、13、14、17、18如何,也不管11脚(锁存控制端,G)如何,输出2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)全部呈现高阻状态(或者叫浮空状态)。

(2)当1脚是低电平时,只要11脚(锁存控制端,G)上出现一个下降沿,输出2(Q0)、5(Q1)、6(Q2)、9(Q3)、12(Q4)、15(Q5)、16(Q6)、19(Q7)立即呈现输入脚3、4、7、8、13、14、17、18的状态。

4、6264RAM芯片介绍:

6264是一种8K×8的静态存储器,采用CMOS工艺制作,为双列直插式封装,共28只引脚,其中地址线为A0—A12,使用单一+5V电源,额定功耗为220mW,典型存取时间为200ns。

芯片引脚见图4。

图4

程序设计

1、硬件连接图

图5整体设计硬件连线图

 

2、程序流程图

NO

YES

3、汇编程序

ORG2080H

JMPINITIAL

ORG2006H

JMPTONE-INT

ORG2000H

JMPBEAT-INT

MAIN:

LDSP,#00C0H;

LDBINT-MASK,#01H;

EI

LDEX,#2030H

STEX,2000H[0]

LOOP;CALLLOAD-TONE

CALLLOAD-BEAT

CLREX

JMPLOOP

(载入音阶)

LOAD-TONE:

LDDPTR,#TONE

LDBA,#86H

LDBA,DPTR

JNZCONTINUE

LDIOC1,#01H

LDIOC0,#04H

JMPLOAD-TONE

CONTINUE:

LD20H

LDTH0,A

INCCX

LDBX,TIMER1

LD21H,A

LDTL0,A

INCR7

SETBTR1

RET

(载入节拍)

LOAD-BEAT:

LDDPTR,#BEAT

LDDX,CX

LDBFL,#FFH

JBCHIS-STATUS,1,LOOP

LDTH1,#BASE

LDTL1,#BASE

SETBTR1

RET

(音阶中断子程序)

TONE-INT:

CLRTR1

CPLSPEAKER

LDA,20H

LDTH1,A

LDA,21H

LDTL0,A

SETBTR1

RET

(节拍中断子程序)

BEAT-INT:

CLRTR1

DJNZDX,AGAIN

CLRTR1

AGAIN:

LDTH1,#BASE

LDTL1,#BASE

SETBTR1

DW3BAH3BAH27EH27EH238H238H27EH

DW2CCH2CCH2F5H2F5H352H352H3BAH

DW20CH20CH30FH30FH370H370H30FH

DW269H269H294H294H24CH24CH20CH

RET

END

程序条件

音乐输出:

通过改变P2.5管脚对外输出高低电平的时间和变化速度,来实现输出不同的频率和时值。

各音调所对应的频率值,见下表:

音调

1

2

3

4

5

6

7

1

频率(Hz)

262

294

330

349

392

440

494

524

一周期(us)

3816

3401

3030

2865

2551

2272

2024

1908

高电平(us)

3BAH

352H

2F5H

2CCH

27EH

238H

1FAH

1DDH

循环值(次)

20CH

24CH

294H

269H

30FH

370H

3DEH

418H

高低电平出现的次数所需时间值和循环次数所需时间值之和近似为1秒,较好的方法就是将音乐程序运用高速输出管脚来控制。

心得体会

两周的单片机课程设计终于顺利完成了,其中包含着快乐,也有辛酸。

我的设计题目是“音乐程序设计”,刚开始时,真的是一头雾水,硬件电路不知如何下手,更何谈解决程序那块,因为我们所学的都是单片机方面的理论知识,应用到实践中去还比较少。

不过,也没偷下懒,迅速去查阅和收集资料。

去了图书馆借一些参考书,上网找一些相关资料,并且请教指导老师和周围的同学探讨。

通过不断努力,终于把音乐程序设计的思路定了下来并开始去修改程序。

做了之后,发现设计电路虽然简单,但我认为它真正困难的地方是程序设计,不过在我们同心努力下最终完成了设计,在此期间得到了老师、朋友和同学们的支持和帮助,最终基本实现了预期目的。

在完成单片机课程设计后,发现我们还有许多不足,所学到的知识还远远不够。

但通过学习这一次实践,增强了我们的动手能力,提高和巩固了单片机方面的知识,特别是软件方面。

从中增强了我们的团队合作精神,并让我们认识到把理论应用到实践中去是多么重要。

参考资料

●《单片机原理与应用》大连理工大学出版社

●《单片机原理与接口技术》北京航空航天大学出版社

●刘复华编著,《8098单片机原理及应用系统设计》,北京:

清华大学出版社

●王培东主编,《8098单片机原理及应用》,哈尔滨:

哈尔滨工业大学出版社

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > PPT模板 > 卡通动漫

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1