2022年电子表微控器设计FPGA课程设计分析方案.docx
《2022年电子表微控器设计FPGA课程设计分析方案.docx》由会员分享,可在线阅读,更多相关《2022年电子表微控器设计FPGA课程设计分析方案.docx(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精品学习资源西安邮电学院FPGA 课程设计报告题目:电子表微控器设计院系:电子工程学院专业班级:微电子 0901同学姓名:邢青青导师姓名:黄海生起止时间: 2021/6/18至 2021/6/29年月日欢迎下载精品学习资源基于 FPGA的电子表微控器设计一 试验目的:设计一个简洁的电子表微控器;用 FPGA开发板的按键作为电子表的时间初值设置掌握信号,数码管当前时间值输出;用按键挑选分别输出:分、秒、1/10 秒;二 功能描述:1 用开发板的拨码开关作为电子表时间初值设置掌握信号,第一设置初始时 间,并用数码管显示出当前时间,共用 5 个数码管,分别显示分,秒,和1/10秒,其中,分和秒均用两
2、个数码管表示高低位,1/10秒用一个数码管表示;2 当复位信号有效时 复位信号低有效 ,系统清零,并且将全部时间都清零,不管是显示状态仍是调整状态;3 拨码开关是总掌握开关,为低时才可以修改即设置新时间,为高是显示当前时间,包括修改后的时间;4 按键 1 是 1/10 秒的初值设置和修改掌握键;5 按键 2 是秒的初值设置和修改掌握键;6 按键 3 是分的初值设置和修改掌握键;7 用数码管显示开头和修改后的时间;输入输出信号描述:8 结构框图:三其中:Clk: 输入信号,系统时钟,为 50MHZ;Reset: 异步复位信号,当下降沿来暂时有效,此时系统清零,全部输出均为0;欢迎下载精品学习资源
3、Key: 模式挑选键,用拨码开关实现;当为低电平常,修改当前时间;当为高电平常,输出并用数码管显示当前时间;此操作在复位端无效时进行,如复位端有效,就输出和显示均为 0;Button1:输入信号,按键 1 是 1/10 秒的初值设置和修改掌握键,当满10 后进一;Button2:输入信号,按键 2 是秒的初值设置和修改掌握键,当满60 后进一;Button3:输入信号,按键 3 是分的初值设置和修改掌握键,当满60 后进一;Clk1 ,2: 内部输出信号,为分频后的输出时钟,clk1掌握按键消抖模块, clk2 掌握时钟显示模块;Fen: 内部变量,分的输出;Miao: 内部变量,秒的输出;1
4、/10miao:,内部变量,用于 1/10 秒的输出;Count:用于计数;LED:是八位输出,用于显示时间;其中分和秒的显示均用两个数码管,一个显示高位,一个显示低位,当低位显示到9 时,向高位进一,直到高位为6 时清零;而 1/10 秒特用两个数码管分别输出,同样低位为9 时向秒位进一, 1/10 秒的数码管清零;四 功能模块描述:1 依据设计思想,大体要分以下几个模块,顶层结构框图如图:2 顶层模块划分:1时钟模块:a在这个模块中有1/10秒,秒,分,通过这几个时间来反映做出来的电子表, 用板子里面的 50MHZ产生出 10HZ的分频 即 0.1 秒作为 1/10 秒,从而进行计时;b
5、初值设置开关 时, 1/10秒,秒,分都停止,开头修改时间;当拨到高电平1 时,说明时间设置完毕,时钟开头正常显示和计时;按键 1修改 1/10 秒):按一次, 1/10 秒加 1,加到 10 清零;按键 2修改秒):按一次,秒加 1,加到 60 清零;按键 3 按键消抖模块:这个模块完成的是按键的消抖,使用系统自带 50MHZ时钟分频得到的25MHZ,再进行按键采样,人一般的反应时间在 50ms 左右,所以采样的计数设置为 25MHZ*50m;s3 LED 显示模块:将计时模块所计数,输出到LED 的输入端,从而来掌握 LED 灯的显示,即对应的哪一段该亮那一段该灭,以此来显示时间;4 时钟
6、分频模块:将板子的 50MHZ时钟经过分频,从而得到10HZ 时钟,用于电子表计时,分频得到 25MHZ,用于按键消抖模块时对按键采样的频率;3 子模块具体设计:1键盘模块设计:Key: 用它作为时钟的总开关,拨码开关,当它低电平0)有效时,开头设置电子表的初值,否就,显示当前时间;当按键1 为 1 时显示 1/10 秒,当按键 2 为1 时显示秒,当按键 3 为 1 时显示分;Reset:作为电子表的复位,当它为低电平常,把电子表的1/10 秒,秒, 分清零;Button1:作为 1/10 秒的初值设置掌握键 每按键一次, 1/10 秒加 1,到9 时在返回到 0 并且向秒进位 1);But
7、ton2:作为秒的初值设置和修改掌握键每按键一次,秒加1,累加到 59 时,返回到 0 并且向分进位 1);Button3:作为分的初值设置和修改掌握键 时钟模块设计:1. 利用板子中晶振产生的 50MHZ频率,把它分频成 0.1 秒即 10HZ;2. 上面分频得到的0.1 秒就是电子表的最小时间单位,当1/10 秒从 0 开头走到 9 时,向秒进位 1 的同时,从 9 跳转到 0,重新开头从零计时;3. 秒从 0 开头计数,当从 1/10 秒得到进位时,秒加 1,直到计数计到59 时,向分进位 1 的同时,从 59 跳转到 0,重新开头从零计时;4. 分从 0 开头计数,当从秒得到进位时,分
8、加1,直到计数计到59时,跳转到 0,从零开头重新计时;3 LED数码管显示模块:第一显示初值 1/10 秒,秒,分,假如有修改,那么LED 液晶显示当前的时间值;数码管编码:输入输出010000001111100120100100301100004001101150010010欢迎下载精品学习资源6000001071111000800000009其他0010000xxxxxxx五 程序清单:1 分频器:;input clk,reset;output clk1,clk2;reg clk1, clk2 ;reg22:0count1;Reg1:0count2;alwaysposedge clk o
9、r negedge reset/clk1 beginif.reset begincount1=0;clk1begincount1=0;clk1=clk1;endelsebegincount122:0/clk2begin if.reset beginCount2=0;Clk2 beginCount2=0;Clk2=clk2;end elsebeginCount21:0=count21:0+1b1;endend endendmodule;input clk1,reset;input button1,button2,button3,key;output7:0 fen,miao;output3:0 o
10、ne_miao;欢迎下载精品学习资源reg 7:0 fen,miao;reg3:0 one_miao;alwaysposedge clk1 or negedge reset /reset. beginif.reset beginone_miao=0 ;fen=0 ;miao/key=1 beginone_miao3:0 beginone_miao3:0=0;miao3:0 beginmiao3:0=0;miao7:4 beginmiao6:0=0;fen3:0 beginfen3:0=0fen7:4 begin;fen7:4=0;miao=0one_miao/ beginone_miao3:0
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022 电子表 微控器 设计 FPGA 课程设计 分析 方案
限制150内