- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SOPC乐曲演奏大作业
综合实验 基于NiosII的乐曲
目录
一.设计概述 3
二.设计要求 3
三.设计方案(总体设计原理、软件设计、硬件设计) 3
3.1总体设计原理 3
3.2 软件设计流程图 4
3.3硬件设计 8
四.实验环境 9
五.软件实验步骤 9
六. 头文件 11
6.1 music.h 11
6.2 LCD.h 19
七.实验结果及分析 23
八.总结及遇到问题 24
九.思考题: 24
一.设计概述
本设计基于SOPC builder和 Nios II 8.0的乐曲演奏,使用蜂鸣器进行播放歌曲,本设计编写多首歌曲可以循环播放,并在液晶屏上显示歌曲名称和切换名称。
实验前准备:
1、该实验需要使用七个模块组中的第七个功能单元,所以三个拨码开关处于“处于“110”时,即MODEL_SEL2和MODEL_SEL3拨下处于“OFF”状态,MODEL_SEL1拨下处于“ON”时,选择该模块。
2、拨码开关MODEL_SEL5-8全置于“ON ”状态,即MODEL_SEL5-8拨下处于“ON ”状态时通过USB BLASTER接口下载。当全部拨下处于“OFF”时可使用开发平台上LAB_JTAG_PS_AS 接口下载或者核心开发板上JTAG接口下载。
这里用户可根据自己所用的下载线来选择适当的下载方式和相应的MODEL_SEL5-8的状态。
二.设计要求
通过使用PWM对交流蜂鸣器进行控制,实现多首乐曲(6首)的播放。
实现如下功能:
歌曲播放
暂停功能
多首歌曲的切换(6首)
其他扩展要求:在液晶屏上显示歌曲的名称,以及上下切换字符(before,after)
三.设计方案(总体设计原理、软件设计、硬件设计)
3.1总体设计原理
实验箱的蜂鸣器是交流蜂鸣器,在BZSP输入一定频率的脉冲时,蜂鸣器蜂鸣,改变输入频率可以改变蜂鸣器的响声。因此可以利用一个PWM来控制BZSP,通过改变PWM的频率来得到不同的声响,以此来播放音乐。
PWM设计说明
PWM输出一个占空比可调的方波。当一个周期11个时钟,高电平输出7个时钟时的PWM输出波形如下图所示。
图1 PWM输出波形图
表一 内部寄存器:
寄存器名 地址偏移量 访问属性 描 述 clock_divide 00 读/写 用来设定PWM输出周期的时钟数 duty_cycle 01 读/写 用来设定一个周期内PWM输出低电平的时钟个数 enable 10 读/写 使能和关闭PWM输出,为1时使能PWM输出 保留 11 - 3.2 软件设计流程图
图2 程序流程框图
首先,判断暂停键是否按下,如果没有,则播放歌曲,如果按下来了暂停键,就执行暂停功能。暂停后判断播放键有没有按下,如果按下了播放键,则在断点的地方接着播放歌曲,
如果没有,则一直暂停到播放按键按下。
主程序代码:
6首歌曲播放,暂停,及切换上一首、切换下一首同时显示歌名和play、stop、next、before:
上下首歌切换:
图3 程序
3.3硬件设计
图4 硬件图
四.实验环境
硬件: PC机
GX-SOC/SOPC-DEV-LAB PLATFORM创新开发实验平台
GX-SOPC-EP2C35-M672核心板
软件: Quartus II 8.0
Nios II 8.0
五.软件实验步骤
1、.把 altera_avalon_pwm (IP核)拷贝到自己的工程文件夹目录下,
2. 在主菜单打开Tools-SOPC Builer
图5 生成PWM核
3.重新命名为 bzsp,点击鼠标右键,进行自动分配 Addressess 和IRQ,点击Generate
图5 对PWM核重命名
4.生成成功以后回到Quartus II界面软件中必须替换更新:在.bdf鼠标右键单击空白处,单击Update Symbol or Block…,即可。
5.在NIOS II IDE软件环境中点击New-Nios II C/C++ Application,建立一个工程
6.在SOPC Builder System PTF File 选择NIOS2.ptf,C/C++的应用工程名Name重命名,点击Next
7.选中Create a new system library named,点击Finish.
8.建立music.h文件和LCD.h头文件
编译工程
build 成功后下载硬件
运行RUN
六. 头文件
6.1 music.h
#ifndef _MUSIC_H
#define _MUSIC_H
#include system.h
// rhythm: quarter note as a meter//
您可能关注的文档
最近下载
- 创新农村公共服务管理模式,推进乡村振兴.pptx VIP
- 学校食堂承包经营及餐饮服务投标方案(技术方案).pdf
- 2022年中国银行公司客户经理考试总题库.doc
- 中国哲学史12-两汉经学.ppt VIP
- 中国康复类医疗器械产业加速腾飞,正迎来黄金发展期——2023大型现状调查报告(先进制造2024前沿第9期).docx
- 电力系统继电保护及安全自动装置运行评价规程 QGDW 10395-2022.docx VIP
- 锚杆静压桩施工设计方案.doc VIP
- 早产儿贫血诊断与治疗的临床实践指南(2025年).pptx VIP
- (高清版)DG∕TJ 08-88-2021 建筑防排烟系统设计标准.pdf VIP
- 《寄生虫学检验》课件——结膜吸吮线虫.pptx VIP
文档评论(0)