基于FPGA的计时器的设计毕业设计

发布时间 : 星期日 文章基于FPGA的计时器的设计毕业设计更新完毕开始阅读

3.4 分拆模块介绍

本模块是用于将十位数和个位数进行分拆。

当输入的变量改变时,就会触发该模块,而分拆的实际实现是将变量对10进行取整,得到的就是十位数字,而将变量对10进行求余得到的就是个位数字,最后调用显示模块用数码管来进行显示。 图3.3为分拆模块所对应的RTL视图。

图 3.3 分拆模块的RTL视图

3.5数码管显示模块介绍

本模块是用于将数码转换为对应共阴数码管的显示码。该模块主要是根据7段共阴数码管数码管的特性,将0到9对应的显示码译过来。显示部分是系统的输出部分,用于显示按键值及计算结果,由于数字系统的数据运算都是二进制的,而输出表达式都是BCD码,为了满足BCD码的译码显示,最方便的方法就是利用译码程序在FPGA中实现。本文采用的是共阳极七段数码管,显示数字时需要将对应管脚置为低电平,输出时,从左到右,按从高到低位的顺序依次接g、f、e、d、c、b、a。

七段译码器的基本结构如图3.4所示。

数码管显示模块的主体部分Verilog HDL语言描述见附录E。 数码管显示模块对应的RTL视图见附录F。

fgba

图3.4 七段译码器的结构

3.6 警告模块介绍

该模块主要功能为当用户的余额不足时,主动发出信号灯警告。

通过数码管的显示,可显示出当前用户所剩下的金额,一旦用户的余额不足以支

持当次通话的时候,此模块就会发出警告,警告通过指示灯来显示,而超过时间则会自动切断通话。

分拆模块的主体部分Verilog HDL语言描述见附录G。 3.7 逻辑资源使用情况

整个计费系统编译后资源使用情况不足1%,属于一个微型系统。具体的系统编译后的报告如图3.5所示。

图3.5 系统编译后的报告

4 系统的操作与分析

4.1 系统功能介绍

如图4.1所示,“1”为系统电源开关,当系统开关打开,载入程序,通过“2”,我们可以随意设置所通话的类型,通话类型将通过“8”显示出来,“00”表示目前没打电话,“01”表示市内通话,“10”表示 长途通话,“11”表示特区通话。通过“5”设置余额,“SW0”到“SW7”之间分别代表金额的1角,2角,4角,8角,16角,32角,64角,99角,如果“SW0”和“SW3”同时打上,就是1+8=9角,如此类推。系统所设置的余额将在“11”上显示。当系统上的余额足够拨打用户所设置的通话类型时,打开“3”后,开始拨打电话,同时“9”和“10”的计时将开始,“4”指示灯绿光亮起,表示正在处于通话状态。根据不同类型的通话,通话每分钟的收费也不一样,市内通话每分钟2角,长途通话每分钟7角,特区通话每分钟12角,当系统余额不足以支撑当前通话的下分钟收费时,“6”指示灯红灯亮起,代表警告信号。当告警时间过长(如超过1分钟)时,系统将会自动切断通话信号。最后,当需要进行下一次通话时,必须按下“7”,进行系统复位。

1-系统总开关;2-通话类型设置;3-通话开关;4-通话状态指示灯; 5-金额设置;6-警告指示灯;7-复位键;8-通话类型显示; 9-通话分钟计时显示;10-通话秒钟计时显示;11-余额显示

图4.1 系统功能介绍

联系合同范文客服:xxxxx#qq.com(#替换为@)