音乐盒设计

合集下载

基于单片机的音乐盒设计

基于单片机的音乐盒设计

基于单片机的音乐盒设计音乐盒是一种小型的自动播放音乐的装置,它以其独特的装饰性和音乐的美妙而备受欢迎。

随着电子技术的发展,基于单片机的音乐盒也逐渐出现并成为主流。

本文将从硬件设计和软件设计两个方面介绍基于单片机的音乐盒设计。

一、硬件设计1.单片机选择单片机是音乐盒的核心控制器,其选择应根据功能需求和成本考虑。

常用的单片机有PIC、AVR和ARM等。

PIC系列单片机成本较低,易于上手,适合初学者使用。

AVR系列单片机性能较好,适合需要复杂功能的设计。

ARM系列单片机功能强大,适合需求较高的应用。

2.电源电路音乐盒的电源电路需要保证供电稳定,并根据电源需求选择适当的电池或适配器。

一般情况下,音乐盒可以采用锂电池供电,以方便携带和使用。

3.音乐模块音乐模块是音乐盒的关键组成部分,用于播放音乐。

音乐模块通常由音源芯片和音响组成。

音源芯片可以选择解码芯片或音频模块,用于解码和播放音乐文件。

音响部分可以选择扬声器或耳机输出,以提供清晰的音乐效果。

4.控制按钮和指示灯音乐盒需要设计控制按钮和指示灯,以便用户操作和状态显示。

控制按钮用于启动、暂停和切换音乐等操作,指示灯用于显示音乐播放状态和电源状态。

5.外部接口音乐盒可以设计外部接口,以便扩展功能。

常见的外部接口包括USB 接口、SD卡接口和蓝牙接口等。

二、软件设计1.系统框架音乐盒的软件设计可以采用简单的状态机或多任务系统。

简单的状态机可以实现音乐的播放、暂停和停止等基本功能。

多任务系统可以实现多个功能的并发运行,提高系统的灵活性。

2.音乐播放控制音乐盒的主要功能是播放音乐,因此需要设计音乐播放控制模块。

该模块可以提供音乐的选择、播放和暂停等功能。

可以通过中断或轮询方式检测按钮的状态,以实现用户的控制。

3.音量控制音乐盒通常需要设计音量控制功能,以满足用户的需求。

可以通过PWM方式控制音量大小,调节音量输出。

4.音乐存储和读取音乐盒需要设计音乐存储和读取模块,以方便用户选择和加载音乐。

八音盒设计课程设计说明书

八音盒设计课程设计说明书

1概述设计一个八音盒,以扬声器作为发声装置,用16个LED小灯作为显示装置,以4x4键盘作为功能按键,八音盒中预存4首不同节拍的乐曲,用户可以选择播放模式。

播放时在单色LED显示器上显示出所播曲目的编号和曲目名称,16个小灯随着音乐节拍变化而变化。

1.1组员分工张磊:软件编程于海彬:软件编程,显示模块彭彬:曲目乐谱编码,曲目播放模块以及实验报告代涛:硬件焊接,以及实验报告1.2操作说明键1:播放曲目1键2:播放曲目2键3:播放曲目3键4:播放曲目4键0:暂停/恢复播放键5:终止播放键6:随机播放2设计方案2.2系统功能播放分两种模式:随机播放和选择播放。

随机播放从4首预存曲目中随机选出一首曲目播放,选择播放模式由用户指定要播放的曲目。

播放时可以暂停播放或终止播放。

按下暂停/恢复键可暂停或恢复播放,按下终止键可以终止播放。

播放时在单色LED显示器上显示出所播曲目的编号和曲目名称。

播放时16个小灯随着音乐节拍变化而变化,小灯的具体亮灭模式自行设定。

2.2设计思路首先确定4x4键盘的扫描程序,然后编写发声程序,将歌曲录入尝试播放,确定各按键功能,编写数码管程序显示歌曲名称,利用寄存器外拓接口,控制小灯随频率变化亮灭。

2.3键盘的识别键盘的确定功能,就是判断键盘中的那一个键按下,确定所在行列位置。

通常采用逐行(或逐列)扫描查询识别。

具体过程是:依次轮流是列线中的一列输出低电平,其它三位为高电平,再在相应的顺次读行输出口的电平状态,如某行为低电平,则该行与置为低电平的列线相交叉处的按键即为闭合的按键,对应的在单片机内部进行调用播放歌的序号。

按键去抖动,通常采用软件延时的方法:在第一次检测到有键按下时,执行一段延时10ms的子程序后,再确认电平是否仍保持闭合状态电平,如果保持闭合状态电平,则确认真正有键按下,进行相应处理工作,消除了抖动的影响。

2.4音乐盒显示部分七段LED数码管构成“日”字形,还有一只发光二极管作为小数点。

fpga音乐盒课程设计

fpga音乐盒课程设计

fpga音乐盒课程设计一、课程目标知识目标:1. 学生能够理解FPGA的基本原理和数字电路设计的基础知识。

2. 学生能够掌握音乐盒的基本工作原理和音乐理论知识。

3. 学生能够描述FPGA在音乐盒设计中的应用和优势。

技能目标:1. 学生能够运用Verilog或VHDL等硬件描述语言进行FPGA编程。

2. 学生能够设计并实现一个简单的音乐盒电路,包括音符生成、音调控制和播放功能。

3. 学生能够利用FPGA实现音乐盒的个性化定制,创作自己的音乐作品。

情感态度价值观目标:1. 学生培养对电子工程和音乐创作的兴趣,提高创新意识和动手能力。

2. 学生培养团队合作精神,学会与他人合作解决问题。

3. 学生培养良好的工程伦理观念,认识到科技发展对社会的积极影响。

课程性质:本课程为实践性较强的课程,结合理论知识与实践操作,培养学生的实际动手能力和创新能力。

学生特点:学生具备一定的电子基础和编程能力,对音乐有兴趣,喜欢探索新事物。

教学要求:教师应注重理论与实践相结合,引导学生主动参与,鼓励学生创新思维,关注学生的个体差异,提高学生的综合素质。

通过课程学习,使学生能够将所学知识应用于实际项目中,达到学以致用的目的。

二、教学内容1. 数字电路基础:复习数字电路的基本概念,包括逻辑门、触发器、计数器等,为FPGA设计打下基础。

- 教材章节:第一章 数字逻辑基础2. FPGA原理与编程:介绍FPGA的基本结构、工作原理,学习Verilog或VHDL硬件描述语言。

- 教材章节:第二章 FPGA原理与应用;第三章 硬件描述语言基础3. 音乐理论知识:学习音乐的基础知识,包括音符、音阶、和弦等,为音乐盒设计提供理论支持。

- 教材章节:第四章 音乐理论基础4. 音乐盒设计:讲解音乐盒的组成,包括音符生成、音调控制、播放电路等,引导学生进行设计实践。

- 教材章节:第五章 音乐盒设计与实现5. FPGA在音乐盒中的应用:探讨FPGA在音乐盒设计中的优势,如灵活性、可编程性等,并分析实际案例。

《数字音乐盒》设计报告

《数字音乐盒》设计报告

《数字音乐盒》设计报告
设计目标:
本数字音乐盒旨在提供一种方便、易用的音乐播放体验,让用户可以随时随地享受自己喜欢的音乐。

具体设计要求如下:
1. 支持多种音频格式,如MP3、FLAC等。

2. 采用简洁、直观的用户界面,方便用户操作。

3. 支持多种播放模式,如顺序播放、随机播放等,并且能够记忆用户播放模式。

4. 提供多种音效调节和均衡器设置,使用户可以自由调整音乐效果。

5. 支持歌词显示功能,使用户可以更好地理解音乐。

6. 支持歌曲收藏功能,使用户可以方便地收藏自己的喜爱歌曲。

设计思路与方案:
本数字音乐盒采用嵌入式系统设计,主要硬件部件包括音频芯片、显示屏幕和按键模块,其中音频芯片为核心部件,支持多种音频格式的解码和播放。

用户界面设计上,采用五向导航及确认键来进行操作,主界面分为“音乐播放”和“歌曲收藏”两大模块。

在“音乐播放”模块中,
用户可以选择不同的播放模式,包括顺序播放、随机播放和循环播放。

在播放过程中,用户可以通过前进、后退、暂停等操作来控制音乐播放进程。

同时,也提供了多种音效调节和均衡器设置,用户可以自行选择调整音乐效果。

在播放过程中,歌词会自动显示在屏幕上,方便用户理解歌曲。

在“歌曲收藏”模块中,用户可以收藏自己喜爱的歌曲,方便日后收听。

总结:
本数字音乐盒设计主要针对音乐爱好者,通过简洁、易用的界面设计和多种音效、播放模式等功能的设计,为用户提供了更为便捷、自由的音乐播放体验。

同时,歌曲收藏功能也使用户可以随时查找和收听自己喜爱的歌曲,满足用户对音乐的品质需求。

数字音乐盒课程设计

数字音乐盒课程设计

数字音乐盒课程设计一、课程目标知识目标:1. 让学生掌握数字音乐的基础知识,包括音符、音阶、节奏等概念;2. 培养学生运用电子设备进行音乐创作的能力,了解数字音乐盒的基本原理;3. 让学生了解不同音乐风格的特点,拓展音乐视野。

技能目标:1. 培养学生运用音乐软件进行创作、编辑和播放数字音乐的能力;2. 提高学生团队协作能力,学会与他人共同完成音乐作品;3. 培养学生创新思维,能够独立设计并制作具有个人特色的数字音乐作品。

情感态度价值观目标:1. 培养学生对音乐的热爱和兴趣,激发他们积极参与音乐活动的热情;2. 培养学生尊重他人作品,树立正确的版权意识;3. 通过音乐创作,培养学生审美观念,提高审美情趣。

分析课程性质、学生特点和教学要求,本课程目标旨在让五年级学生在掌握音乐基础知识的基础上,运用现代科技手段创作音乐作品。

课程将帮助学生将所学知识应用于实际操作中,培养他们的创新精神和团队协作能力,同时提高音乐素养,为今后的音乐学习打下坚实基础。

二、教学内容1. 数字音乐基础知识:音符、音阶、节奏、拍子等基本概念的学习,使学生能够理解音乐的基本元素。

- 教材章节:第一章《音乐的基础知识》- 内容列举:音符的识别、音阶的构成、节奏的练习。

2. 数字音乐创作:运用音乐软件(如GarageBand)进行音乐创作,了解数字音乐盒的工作原理。

- 教材章节:第二章《数字音乐创作》- 内容列举:音乐软件的介绍与操作、音色的选择与搭配、简单旋律的创作。

3. 音乐风格学习:学习不同音乐风格的特点,分析经典作品,培养学生音乐鉴赏能力。

- 教材章节:第三章《音乐风格》- 内容列举:流行音乐、古典音乐、民族音乐等风格的学习与鉴赏。

4. 团队协作与创作实践:分组进行音乐创作,培养学生团队协作能力和创新思维。

- 教材章节:第四章《音乐创作实践》- 内容列举:团队协作流程、音乐创作方法、作品展示与评价。

5. 音乐作品展示与评价:展示学生创作的数字音乐作品,进行自评、互评和教师评价,提高学生的审美观念。

基于AT89C52单片机的音乐盒设计方案

基于AT89C52单片机的音乐盒设计方案

1/4和1/8节拍的时间设定
曲调值
DELAY 曲调值 DELAY
调4/4
125毫秒
调4/4 62毫秒
调3/4 调2/4
187毫秒 250毫秒
调3/4 94毫秒 调2/4 125毫秒
对于单片机来说,产生不同频率的脉冲是非
常方便的,利用单片机的定时/计数器来产生这样
的方波频率信号。因此,需要弄清楚音乐中的音
Page 3
传统音乐盒
Page 4
设计任务及要求
本设计是以AT89C52芯片的电路为基础,外
部加上放音设备,以此来实现音乐盒的硬件电
路,通过软件程序来控制单片机内部的定时器
■设 使其演奏出优美动听的音乐。用户可以按照自
■计 己的喜好选择音乐并将其转化成机器码存入单
■任 片机的存储器中。该系统具有很好的通用性,
21
基于AT89C52单片机的音乐盒设计
论文结构
1 2 3 4 5
■课题意义、任务及要求 ■应用软件简介 ■设计方案 ■设计结构 ■系统电路图
Page 2
设计意义
传统的音乐盒多是机械音乐盒,其工作原理是通过齿 轮带动一个带有铁钉的铁桶转动,铁桶上的铁钉撞击铁 片制成的琴键,从而发出声音但是,机械式的音乐盒体 积比较大,比较笨重,且发音单调。水、灰尘等外在因 素,容易使内部金属发音条变形,从而造成发音跑调。 另外,机械音乐盒放音时为了让音色稳定,必须放平不 ■设 能动摇,而且价格昂贵,不能实现大批量生产。 ■计 本文设计的音乐盒,是基于单片机设计制作的电子 ■意 式音乐盒。与传统的机械式音乐盒相比更小巧,能演奏 ■义 多个曲目且携带方便。电子式音乐盒动力来源是电池, 制作工艺简单,可进行批量生产,且价格便宜。基于单 片机制作的电子式音乐盒,控制功能强大,可根据需要 选歌,使用方便。根据存储容量的大小,可以尽可能多 的存储歌曲。另外,可以设计彩灯外观效果,使音乐盒 的功能更加丰富。

电子音乐盒的设计毕业设计论文

电子音乐盒的设计毕业设计论文

曲阜师范大学单片机原理与应用课程设计报告题目电子音乐盒的设计姓名院系物理工程学院专业通信工程(物联网)指导教师职称讲师2015年月日注:课程设计等级:优秀(90-100),良好(80-89),中等(70-79),及格(60-69),不及格(60分以下)。

目录摘要 . (1)关键词 (1)Abstract (1)Key words (1)1 设计目的和要求 (2)1.1 设计目的 (2)1.2设计要求 (2)2 硬件电路设计 (2)2.1总体方案设计 (2)2.2器件选择 (3)2.2.1单片机的选择 (3)2.2.2 LCD1602简介 (3)2.3 单元电路设计 (6)2.3.1晶振电路 (6)2.3.2复位电路 (6)2.3.3键盘部分 (6)2.3.4 LCD显示电路 (7)2.3.5蜂鸣器部分 (7)2.4整体电路 (8)3 软件设计 (9)3.1 主程序流程图 (9)3.2音乐播放程序流程图 (10)4 系统调试 (10)4.1 原理图的绘制 (10)4.2仿真结果 (11)5 实物图 (11)总结 (12)参考文献 (12)附录 (13)电子音乐盒的设计通信工程(物联网)专业学生学生姓名武迪许艳军薛玉梅指导教师张明强摘要本设计采用了蜂鸣器发声来实现歌曲的播放,能保持基本音调不变,流畅播放出歌曲。

现选用AT89S52单片机。

主要设计模块包括数码管显示部分,功能键盘部分,蜂鸣器发声部分,彩灯部分。

数码管采用共阳极数码管,通过单片机P1口控制,实现歌曲序号的显示;功能键盘采用按键开关,通过单片机P3口控制,实现歌曲播放顺序的调换和暂停播放功能;蜂鸣器由单片机的P2口控制,实现歌曲播放;主要工作过程是通过按下功能键实现上一首和下一首及暂停播放,同时有数码管显示当前播放歌曲的序号,蜂鸣器播放出音乐。

此次设计要利用单片机及KeilC51编程软件编程和PROTEUS单片机仿真软件和电子电工等方面知识,用KeilC51编程软件编程,用PROTEUS单片机仿真软件仿真。

基于单片机的数字式音乐盒设计

基于单片机的数字式音乐盒设计
6.将数字式音乐盒组装在一个外壳中。
使用数字式音乐盒
在数字式音乐盒被制造完成后,使用也非常容易。只需要按下相应的控制开关,就可以开始播放音频文件。用户可以通过电位器调节音量或者播放音乐列表中的其他曲目。
在使用过程中,要注意数字式音乐盒的电池寿命。如果数字式音乐盒使用的是充电电池,那么必须确保其有足够的充电时间。
设计数字式音乐盒的材料
为了实现数字式音乐盒,需要以下材料:
·单片机芯片(例如STM32F103C8T6)
·数字到模拟转换器(DAC)
·音频输出器件(例如扬声器或耳机)
·控制开关(例如电位器,按钮等)
·电池(为了提供电源)
·音频文件(MP3,WAV等)
将这些材料组合在一起,可以实现数字式音乐盒。其中,单片机芯片是数字式音乐盒的关键部件,可以存储和播放歌曲、音乐片段等。
基于单片机的数字式音乐盒设计
随着新技术的不断涌现,数字式音乐盒成为人们越来越喜欢的玩具。它的外观精美,功能强大,而且价格也比传统音乐盒便宜,极受欢迎。本文将讨论基于单片机的数字式音乐盒设计,以及它的工作原理、材料和使用。
数字式音乐盒的工作原理
数字式音乐盒是使用单片机芯片进行数字信号的处理,通过音频输出器件输出模拟电信号的技术。这些芯片可以储存大量的音频文件,并且可以轻松地播放这些文件,具有极高的音频质量。数字式音乐盒可以播放所有类型的音频文件,比如WAV,MP3,MIDI和WMA等。这些芯片通常由音乐芯片,播放器和控制系统组成。播放器可以读取音频文件,发送给芯片进行处理,控制系统负责控制播放过程,比如触发开关等功能。整个过程非常简单,非常可靠。
最后,数字式音乐盒具有很多优点,比如它可以储存大量的音频文件,具有非常出色的音频质量,价格实惠,易于制造和使用,因此它是一款非常好的数码产品。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2方案设计
• 总体设计框图
• 本设计采用89C52作为主控芯片,蜂鸣器作为输出设备产 生音乐,通过按键1和2能够选择歌曲。LCD1602能够实 时的显示当前的歌曲名及歌曲号。其中P3.3和P3.2外接按 键,P2口用作LCD输出数据端口,P1.4接蜂鸣器端口。
3 系统硬件设计
3 系统硬件设计
主控芯片:设计中所采用主控芯片为AT89C52。因其价格便宜,在市场上已经很 成熟,各个方面都能够满足设计要求故选择它。 蜂鸣器及蜂鸣器驱动:从价格及控制上方面,我们选择市场上常见的有源蜂
基于单片机的音乐盒设计
电信0902
摘要:
单片机因其体积小、功能强、价格低廉而 得到广泛应用。本文介绍用AT89C52单片 机设计音乐盒的方法,仅需AT89C51最小系 统,扩展两个按键,再加一片由两个NPN组成 的达林顿管以及输出设备蜂鸣器和LCD。 通过两个按键可以选择上一首歌曲及下一 首歌曲,并在LCD上直观的显示出歌曲的 序号。
鸣器作为音频输出设备。选择通过两个NPN三级管搭建成一个达林顿作为 为驱动。 按键:采用常用的四引脚按键,其中各有两个引脚相连。按下时,接通, 放开时,将断开。设计中需要两个按键,作为上一首和下一首的信号输入。
显示设备:为了在播放过程中能够清晰的知道当前歌曲的信息,我们采用市场上常 见的LCD1602显示屏作为输入显示设备
音调
• • 4.1.1 音频脉冲 要生产音频脉冲,只要算出某一音频的周期(1/频率),然后将此周期除以2,即为半周 期的时间。利用定时器计时这个半周期时间,每当计时到后就将输出脉冲的I/O反相,然 后重复计时此半周期时间再对I/O反相,就可在I/O脚上得到此频率的脉冲。 4.1.2 方法 利用8051的内部定时器使用其工作在计数器模式MODE1下,改变计数值THO及TLO以 产生不同频率的方法。 • 计算公式 例如频率为523Hz,其周期T=1/523=1912us,因此只要令计数器计时956us/1us= 956,在每次计数956次时将I/O反相,就可得到中音DO (523Hz)。 计数脉冲值与频率的关系公式如下:
• • • • • • • • • • • • • void dis_song(char a); /*****************设置音调*******************/ //对定时器0的初始值更新 void SET_BUZZER_TONE(unsigned int tone) { TR0=0; th=(65536-tone)/256; tl=(65536-tone)%256; TR0=1; 4,4,4,4,16,8,4,8,4,4,8,4,4,16,8,4,8,8,4,4,8,16,8,4,16, 8,4,8,8,4,4,4,4,16}, {4,4,4,4,4,4,4,4,4,4,8,4,4,8,2,2,2,2,4,4,2,2,2,2,4,4,4,
• • • • • • • • • • • • • • • • • • • • • • • • • • • • •
unsigned char flag1; num1=0; num2=0; flag1=1; flag2=0; flag3=0; BUZZER=0; TIME0_INIT(); //定时器初始化 INT_INIT(); //外部中断初始化 LCD_INIT(); //LCD初始化 while(1) { dis_song(num1); while(flag1) { if(SONG[num1][num2]==20)flag1=0; //如果检测到最后一个音调为20,说明此 曲应该结束 else { if(flag2==1) //中断检测 { num1++; if(num1>3)num1=0; num2=0; flag2=0; dis_song(num1); } if(flag3==1) //中断检测 { num1--; if(num1<0)num1=3;
{4,4,4,4,16,4,4,4,4,16,8,4,8,8,4,4,4,4,16,8,4,8,4,4,8,4,4,16, 4,4,8,16,8,4,4,8,8,8,4,4,16,4,4,4,4,16,4,4,4,4,16,8,4,8,8,
4,8,4,4,8}};
• • • • • • • • • • • • • • • • • • • • • • • • • • • • •
/**************设置节拍**********************/ //x为最小节拍的倍数 void DELAY_MIN_BEAT(unsigned char x) { unsigned int i,j,k; for(i=0;i<x;i++) { for(j=0;j<100;j++) for(k=0;k<120;k++); } TR0=0; } /***************定时器0初始化****************/ void TIME0_INIT() { IE|=0x82; TMOD=0x01; //定时器0工作在方式1 IP=0x02; //定时器0具有最高优先级 } /**************外部中断0和1初始化***********/ void INT_INIT() { IE|=0x85; TCON|=0x05; //外部中断0和1负边缘触发 } /****************主函数*********************/ void main() { char num1,num2;
• •
• • •

• 4.1.4 其计数值的求法
4.2 基本知识--节拍表二 值T的对照表
C调各音符频率与计数
• •
4.2.1相关知识 每个音符使用1个字节,字节的高4位代表音符的高低,低4位代表音符的节拍, 表三为节拍与节拍码的对照.如果1拍为0.4秒,1/4拍是0.1秒,只要设定延迟时 间就可求得节拍的时间.假设1/4拍为1DELAY,则1拍应为4DELAY,以此类推. 所以只要求得1/4拍的DELAY时间,其余的节拍就是它的倍数,如表四为1/4和 1/8节拍的时间设定。
• • • • • • • • • • • • • • • • • • • • • • • • • • • • •
num2=0; flag3=0; dis_song(num1); } SET_BUZZER_TONE(TONE[SONG[num1][num2]]); DELAY_MIN_BEAT(BEAT[num1][num2]); num2++; } } num2=0; flag1=1; num1++; if(num1==4)num1=0; }
• 4.3 程序流程图
• 外部中断0中断程序中令Flag2=1, • 中断1的中断程序中令Flag=1 • 定时器0中断流程图如图四。
• 。
主 程 序 流 程 图 如 图 五
ห้องสมุดไป่ตู้ •
• • • • • • • • • • • • • • • • • • • •

程序代码
KCSJ.C
#include "reg52.h" #include "LCD.h" sbit BUZZER=P3^1; unsigned char th,tl; unsigned char flag2,flag3; char song1[14]="NUM1"; char song2[14]="NUM2"; char song3[14]="NUM3"; char song4[14]="NUM4"; // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 // 7L 1 2 3 4 5 6 7 1H 2H 3H 5L 6L 4L unsigned int TONE[14]={1012,956,852,759,716,638,568,506,478,426,379,1276,1136,1433}; // 1 2 5 6 7 // 低音 1908 1701 1515 1433 1276 1136 1012 // 中音 956 852 759 716 638 568 506 // 高音 478 426 379 358 319 284 253 unsigned char code SONG[4][150]={
• • • • • • • • • • • •
3,2,1,2,2,2,3,5,5,8,2,3,5,3,5,8,6,5,3,5,6,8,5,8,10,9,8, 9,8,6,8,5,3,5,6,5,6,8,9,5,6,3,8,6,5,3,2,1,2,2,3,5, 8,10,9,8,9,8,5,6,8,20}, //两只老虎 {1,2,3,1,1,2,3,1,3,4,5,3,4,5,5,6,5,4,3,1,5,6,5,4,3,1, 2,11,1,2,11,1,20}}; unsigned char code BEAT[4][150]={{4,4,4,4,4,4,8,8,4,4,4,4,4,4,8,4, 4,4,4,4,4,4,8,8,4,4,4,4,4,2,8,8, 4,4,4,4,4,4,8,4,8,4,4,4,4,2,4,8,8, 4,4,4,4,4,4,8,8,4,4,4,4,4,4,8,8}, {8,8,4,4,8,4,4,4,4,8,4,4,4,4,4,4,4,4, 4,8,4,8,4,4,4,4,16,4,4,4,4,8, 4,4,4,4,4,4,8,4,4,4,4,16},
} /*************定时器0中断函数****************/ void T0_TONE(void) interrupt 1 { TH0=th; TL0=tl; BUZZER=~BUZZER; } /**************外部中断0函数*****************/ void INT0_SELECT(void) interrupt 0 { flag2=1; } /**************外部中断1函数*****************/ void INT1_SELECT(void) interrupt 2
相关文档
最新文档