《卡式电话计费器.ppt》由会员分享,可在线阅读,更多相关《卡式电话计费器.ppt(25页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、卡式电话计费器 Still waters run deep.流静水深流静水深,人静心深人静心深 Where there is life,there is hope。有生命必有希望。有生命必有希望内容概要v实验目的实验目的v实验要求实验要求v实验指导实验指导 v实验内容实验内容 v实验报告实验报告 11/16/20222实验目的 n了解卡式电话计费器的工作原理。了解卡式电话计费器的工作原理。n掌握卡式电话计费器的设计方法掌握卡式电话计费器的设计方法。11/16/20223实验要求n设计一个卡式电话计费器设计一个卡式电话计费器 计费器在话卡插入后,能将卡中的币值读出并计费器在话卡插入后,能将卡中的
2、币值读出并显示出来;在通话过程中,根据话务种类计话显示出来;在通话过程中,根据话务种类计话费并将话费从卡值中扣除,卡值余额每分钟更费并将话费从卡值中扣除,卡值余额每分钟更新一次;计时与计费数据均以十进制形式显示新一次;计时与计费数据均以十进制形式显示出来。出来。话话务务分分为为3类类:市市话话、长长话话和和特特话话。市市话话按按每每分分钟钟3角角钱钱计计费费,长长话话按按每每分分钟钟6角角钱钱计计费费,特特话话不不收收费费。当当卡卡中中余余额额不不足足时时产产生生告告警警信信号号,当当告警时间达到告警时间达到15s时切断当前通话。时切断当前通话。n实现设计的编程下载实现设计的编程下载11/16
3、/20224实验指导 n卡式电话计费器的接口示意图卡式电话计费器的接口示意图时钟时钟clk卡插入信号卡插入信号card接通信号接通信号state话务种类话务种类decide1.0通话通话disptime卡值余额卡值余额dispmoney写卡信号写卡信号write读卡信号读卡信号read告警信号告警信号warn切断通话切断通话cut卡卡式式电电话话计计费费器器11/16/20225n信号定义信号定义输入信号输入信号时钟信号(时钟信号(clk):频率为):频率为1Hz 卡插入信号(卡插入信号(card)接通信号(接通信号(state)话务种类(话务种类(decide1.0)设置卡内金额的个位(设置
4、卡内金额的个位(set_money_low)设置卡的金额的高位(设置卡的金额的高位(set_money_high)11/16/20226输出信号输出信号 通话时间(通话时间(disptime7.0)卡值余额(卡值余额(dispmoney7.0)写卡信号(写卡信号(write)读卡信号(读卡信号(read)告警信号(告警信号(warn)切断通话(切断通话(cut)接通信号接通信号(state_out)话务种类(话务种类(decide_out1.0)11/16/20227中间变量中间变量reg7:0 money;/卡内余额卡内余额reg7:0 dtime;/通话计时通话计时reg t1m;/分时钟
5、,写卡的时刻分时钟,写卡的时刻 integer num1,temp;/num1对通话时对通话时间计数;间计数;temp用于计告警时间用于计告警时间n设计思路设计思路 整个设计整个设计account.v主要由主要由3个个always模块模块组成组成,分别完成产生分时钟,电话计费和计时分别完成产生分时钟,电话计费和计时以及在告警时间过长时切断通话的功能。以及在告警时间过长时切断通话的功能。11/16/20228(1)产生分时钟)产生分时钟 always(posedge clk)/在接通线路的情况下,计数器在接通线路的情况下,计数器num1以以clk(T=1s)为时钟进行计数,计到)为时钟进行计数,
6、计到59s时,时,计数器清零,并产生分时钟信号计数器清零,并产生分时钟信号t1m。未接通线。未接通线路时,路时,num1和和t1m均为均为0。(2)电话计费和计时)电话计费和计时 always(negedge clk)begin /首先设置卡内的金额初值首先设置卡内的金额初值 /然后进行通话计费和计时然后进行通话计费和计时11/16/20229 在卡插入,并接通线路的情况下,在卡插入,并接通线路的情况下,当通话时间当通话时间够够1 1分钟时,采用分钟时,采用casecase语句,根据语句,根据 话务种类话务种类(decidedecide的值),进行通话计费的值),进行通话计费 当卡已拔出,或线
7、路未接通时,对一些信号进当卡已拔出,或线路未接通时,对一些信号进行复位行复位(3)在告警时间过长时切断通话)在告警时间过长时切断通话 always(posedge clk)/当告警时间达当告警时间达15秒时,产生切断通话信号秒时,产生切断通话信号(cut),电话局根据此信号切断通话,则接通),电话局根据此信号切断通话,则接通信号变为低电平。信号变为低电平。/若卡已拔出或线路已断,则复位切断通话信号若卡已拔出或线路已断,则复位切断通话信号cut。11/16/202210实验内容n1.用用Verilog 语言设计卡式电话计费器的语言设计卡式电话计费器的逻辑模型(文件名为逻辑模型(文件名为accou
8、nt.v)为很快观察到卡内余额不足的现象,本实验假为很快观察到卡内余额不足的现象,本实验假定通话时间定通话时间disptime最长为最长为59分钟;分钟;采用采用LED中中D1D7分别显示输出信号分别显示输出信号write、read、warn、cut、state_out、decide0和和decide1。n2.对对account.v进行编译与仿真进行编译与仿真 11/16/202211n仿真要求仿真要求 Tclk=1s,Grid Size=1s,仿真结束时,仿真结束时间取间取1000s 整体仿真波形图整体仿真波形图 11/16/202212(1)仿真电话卡插入后,线路接通,打)仿真电话卡插入后
9、,线路接通,打市话市话的的情况。观察各输出信号和中间变量的变化。尤情况。观察各输出信号和中间变量的变化。尤其注意仿真卡中余额不足的情况。其注意仿真卡中余额不足的情况。11/16/202213电话卡插入后,设置卡内金额为电话卡插入后,设置卡内金额为2元元2角,以及线路接通后的仿真波形角,以及线路接通后的仿真波形11/16/202214打市话,通话时间够打市话,通话时间够1分钟的仿真波形分钟的仿真波形11/16/202215打市话,通话时间达到打市话,通话时间达到7分钟时,卡内余额不足、产生告警、切断通话的仿真波形分钟时,卡内余额不足、产生告警、切断通话的仿真波形11/16/202216(2)再给
10、电话卡充值,仿真线路接通,打)再给电话卡充值,仿真线路接通,打长话长话的情况。观察各输出信号和中间变量的变化。的情况。观察各输出信号和中间变量的变化。尤其注意仿真卡中余额不足的情况尤其注意仿真卡中余额不足的情况 打长话,卡中余额不足的仿真波形打长话,卡中余额不足的仿真波形 11/16/202217(3)将电话卡拔出、再插入后,仿真打)将电话卡拔出、再插入后,仿真打特话特话11/16/2022183.3.设计下载用顶层文件设计下载用顶层文件n文件名为文件名为account_top.bdf为减少等待时间,使实验箱上的为减少等待时间,使实验箱上的15秒表示现实秒表示现实电话机上的一分钟。首先用电话机
11、上的一分钟。首先用Verilog 语言设计语言设计一个分频子模块,将实验箱的一个分频子模块,将实验箱的20MHz系统时系统时钟信号分频到钟信号分频到4Hz,则,则disptime每隔每隔15s加加1计数,表示通话的分钟数。计数,表示通话的分钟数。然后创建一个顶层图形设计文件然后创建一个顶层图形设计文件account_top.bdf;选择器件;选择器件EP1C12Q240C8,进行编译,进行编译。11/16/202219下载用顶层文件下载用顶层文件account_top.bdfaccount_top.bdf v注:由于键注:由于键9和键和键10输出为低有效,所以这里输出为低有效,所以这里set_
12、money_high和和set_money_low信号分别要信号分别要经过一个反相器后,再与经过一个反相器后,再与account子块的相应端口相连。子块的相应端口相连。11/16/2022204.4.引脚锁定及编程下载引脚锁定及编程下载对顶层图形设计文件编译,再进行引脚锁定对顶层图形设计文件编译,再进行引脚锁定 引脚定义引脚定义重新编译,生成编程文件重新编译,生成编程文件.sof文件文件 运行下载程序,将编程目标文件运行下载程序,将编程目标文件phone.sof文件下载到文件下载到FPGA器件中器件中11/16/2022215.5.在线校验在线校验首先用键首先用键9和键和键10设置电话卡的金额
13、初值。设置电话卡的金额初值。验证电话卡插入后,线路接通,打市话的情况验证电话卡插入后,线路接通,打市话的情况。观察观察read信号何时有效,信号何时有效,write信号何时有效,信号何时有效,通话时间和卡内余额的变化是否正确。尤其注意通话时间和卡内余额的变化是否正确。尤其注意观察当卡中余额不足观察当卡中余额不足3角时,何时产生角时,何时产生warn信信号,又在何时产生号,又在何时产生cut信号。信号。注:注:7个发光二极管均为高有效个发光二极管均为高有效11/16/202222再用键再用键9和键和键10设置电话卡的金额初值,然设置电话卡的金额初值,然后验证线路接通,打长话的情况。后验证线路接通
14、,打长话的情况。观察观察read信号何时有效,信号何时有效,write信号何时有信号何时有效,通话时间和卡内余额的变化是否正确。尤效,通话时间和卡内余额的变化是否正确。尤其注意观察当卡中余额不足其注意观察当卡中余额不足6角时,何时产生角时,何时产生warn信号,又在何时产生信号,又在何时产生cut信号。信号。模拟将电话卡拔出后再插入,将模拟将电话卡拔出后再插入,将decide设置设置为为“11”,验证在卡中余额不足,验证在卡中余额不足6角时,打特角时,打特话的情况话的情况。观察观察read信号为什么状态,是否会产生信号为什么状态,是否会产生write信号、信号、warn信号和信号和cut信号,
15、通话时信号,通话时间和卡内余额是否变化,为什么?间和卡内余额是否变化,为什么?11/16/202223操作说明操作说明 采用模式采用模式5。按键按键9或键或键10设置卡的余额;按键设置卡的余额;按键1,表示电,表示电话卡插入;按键话卡插入;按键3或键或键4选择话务种类;按键选择话务种类;按键2,表示线路接通。,表示线路接通。最右边两个数码管(数码最右边两个数码管(数码2,数码,数码1)显示通话)显示通话时间的高位和低位;中间两个数码管(键时间的高位和低位;中间两个数码管(键6,键,键5)显示卡内余额的高位和低位。)显示卡内余额的高位和低位。LED D1D7分别表示分别表示write、read、warn,cut、state_out、decide_out0和和decide_out1信号。信号。11/16/202224实验报告n详细写出完整的设计说明,并画出程详细写出完整的设计说明,并画出程序流程图序流程图。n根据仿真结果分析卡式电话计费器的根据仿真结果分析卡式电话计费器的工作过程工作过程。11/16/202225