没有合适的资源?快使用搜索试试~ 我知道了~
北邮数电 节拍器实验报告.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 29 浏览量
2022-10-13
13:13:47
上传
评论
收藏 804KB DOCX 举报
温馨提示
试读
22页
北邮数电 节拍器实验报告.docx北邮数电 节拍器实验报告.docx
资源推荐
资源详情
资源评论
一、设计课题的任务要求
2)提高要求
通过一个按键选择时值(节奏类型),并在用点阵显示,如下图。
输入:50MHz 时钟 cp、按键 button,button1,button2,button3
输出:beep 给蜂鸣器,led1,2,3 分别给不同的 led 灯,countout,smg 控制
数码管显示,hang,lie 控制点阵显示
分频模块输入 50M 赫兹时钟 cp,给其他模块提供分频后的时钟。输出 Clk 为分频比为
25000000*12/(speed+40)),其每十二个周期等于对应速度的一个节拍周期,输出给蜂鸣
器模块。Clk1s 为 250 000 分频,输出给速度设置模块vset。Clkmap,clkbeep3 为对时钟
cp80 000分频625 赫兹,clkmap输出给数码管模块作为扫描频率,clkbeep3为低音频率。
Clkcount,Clkbeep1 为 1250hz,Clkbeep1 作为高音频率,Clkcount 作为扫描频率检测时
间片,输出到蜂鸣器模块。Clkbeep2 为 1000hz,作为中音频率。
2. 速度设置模块 vset:
按键 button1,2 分别为控制加和减的按键。Clk1s 为检测按键扫描时钟,判断哪个按键按
块。
3. 节拍和暂停按键处理模块 jpset:
Button 是节拍设置按键,button3 为暂停按键,对按键进行防抖处理。每次 button 按下,
jps 加一改变节拍,输出 jps 到蜂鸣器模块,点阵模块以及数码管模块。Button3 每被按
下暂停信号 sigwait 翻转,sigwait 输出到蜂鸣器模块使暂停或开始。
4. 数码管显示模块 ra:
数码管循环显示,根据不同节拍和速度,显示相应的节拍数字和速度数字。Clk 作为扫
描频率,jps 为节拍信号,speed 为速度信号,输出 Countout 控制哪个数码管显示,smg
控制显示的数字。
5. 蜂鸣器(和二极管)模块 fmq:
6. 点阵模块 jpfs
时钟 cp,不同节拍对应不同显示符号 lie,hang 分别作为输出。
三、仿真波形及波形分析
速度设置模块仿真波形
速度加一加五减五
蜂鸣器模块仿真
列信号
数码管仿真波形(3/8 节拍)
决定哪个数码管亮
数码管显示波形
四、源程序
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
ENTITY jiepaiqi IS
PORT ( cp,button,button1,button2,button3 : IN STD_LOGIC;
smg : OUT STD_LOGIC_VECTOR (6 DOWNTO 0);
countout:OUT STD_LOGIC_VECTOR(5 DOWNTO 0);
lie:outstd_logic_vector(7 downto 0);
hang:outstd_logic_vector(7 downto 0);
beep,led1,led2,led3: out std_logic );
END jiepaiqi;
ARCHITECTURE a OF jiepaiqi IS
COMPONENT fenpin
PORT(cp: IN STD_LOGIC;
speed:IN INTEGER range 0 to 80;
clk: OUT STD_LOGIC;
--//获取各种频率
clk1s:OUT STD_LOGIC;
clkmap:OUT STD_LOGIC;
clkbeep1:OUT STD_LOGIC;
clkbeep2:OUT STD_LOGIC;
clkbeep3:OUT STD_LOGIC;
clkcount:OUT STD_LOGIC);
END COMPONENT;
--//获取速度 v
剩余21页未读,继续阅读
资源评论
春哥111
- 粉丝: 1w+
- 资源: 5万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- git使用文档(一步一步教你使用Git仓库管理代码)
- 进制转换(通用版).cpp
- linux实践之从DistroWatch排名第三的EndeavourOS转到排名第五的Manjaro工作机迁移
- Discuz模板+资讯博客课程干货+商业版(GBK+UTF)
- 基于Selenium的Java爬虫实战(内含谷歌浏览器Chrom和Chromedriver版本123.0.6292.0)
- RB308A-SOT23-5 单节锂电池保护IC 深圳市可芯电子有限公司.pdf
- Ubuntu下安装JDK
- 基于Selenium的Java爬虫实战(内含谷歌浏览器Chrom和Chromedriver版本123.0.6291.0)
- Android基础之用Eclipse建立工程
- WZLR(2).ipynb
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功