基于vhdl的电子计时器的设计课程设计(编辑修改稿)内容摘要:
R(3 DOWNTO 0)。 qb: out STD_LOGIC_VECTOR(3 DOWNTO 0))。 END count24。 ARCHITECTURE a1 OF count24 IS BEGIN process(clk) variable tma: STD_LOGIC_VECTOR(3 DOWNTO 0)。 variable tmb: STD_LOGIC_VECTOR(3 DOWNTO 0)。 begin If Reset = 39。 039。 then tma:=0000。 tmb:=0000。 else if clk39。 event and clk=39。 139。 then if en=39。 139。 then 第 10 页 if tma=1001 then tma:=0000。 tmb:=tmb+1。 elsif tmb=0010 and tma=0011 then tma:=0000。 tmb:=0000。 else tma:=tma+1。 end if。 end if。 end if。 end if。 qa=tma。 qb=tmb。 end process。 END a1。 分频器模块 设计一个分频器,要求将输入 512HZ的时钟信号分频为 1HZ的时钟信号作为计时器的秒输入。 输入信号为 clk和 rst,分别为时钟信号和复位信号,输出信号为clk_out,为分频器 1HZ的时钟信号输出。 图 7 分频器示意图 该模块部分 VHDL 源程序如下 : LIBRARY IEEE。 USE。 USE。 ENTITY fenpinqi IS PORT (CLK,RST:in std_logic。 CLK_OUT:out std_logic)。 END fenpinqi。 ARCHITECTURE behav OF fenpinqi IS 第 11 页 signal clk_data:std_logic。 SIGNAL CNT6 : INTEGER := 0。 BEGIN PROCESS(CLK) BEGIN IF RST = 39。 039。 THEN CNT6=0。 ELSIF CLK39。 EVENT AND CLK=39。 139。 THEN IF CNT6=255 THEN clk_data=NOT clk_data。 CNT6=0。 ELSE CNT6=CNT6+1。 END IF。 END IF。 CLK_OUT=clk_data。 END PROCESS。 END behav; LED 显示模块 LED有着显示亮度高,响应速度快的特点,最常用的是七段式 LED显示器,又称数码管。 七段 LED显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根据各管的亮暗组合成字符。 LED数码管的 g~ a七个发光二极管因加正电压而发亮,因加零电压而不能发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码 (段码 ),如显示 ”0”,字形码为 3fh。 图 8 LED数码管结构图 第 12 页 数码管的接口有静态接口和动态接口。 动态接口采用各数码管 循环轮流显示的方法,当循环显示频率较高时,利用人眼的暂留特性,看不出闪烁显示现象,这种显示需要一个接口完成字形码的输出 (字形选择 ),另一接口完成各数码管的轮流点亮 (数位选择 )。 将二十四进制计数器和 2 个六十进制计数器的输出作为 LED显示模块的输入,在时钟信号的控制下通过此模块完成 6 个 LED数码管的显示,输出信号为WEI[2…0] 和 LED[6…0] ,分别为位选信号和段码输出。 图 9 LED 显示示意图 该模块部分 VHDL 源程序如下 : LIBRARY IEEE。 USE。 USE。 ENTITY clock1 IS PORT(CLK: IN STD_LOGIC。 S1, S2, S3, S4, S5, S6: IN STD_LOGIC_VECTOR(3 DOWNTO 0)。 WEI: OUT STD_LOGIC_VECTOR(2 DOWNTO 0)。 LED: OUT STD_LOGIC_VECTOR(6 DOWNTO 0))。 END ENTITY。 ARCHITECTURE behave OF clock1 IS SIGNAL CNT6 : INTEGER RANGE 0 TO 5 := 0。 SIGNAL SHUJU: STD_LOGIC_VECTOR(3 DOWNTO 0)。 第 13 页 BEGIN PRO1:PROCESS(CLK) BEGIN IF CLK39。 EVENT AND CLK = 39。 139。 THEN CNT6 = CNT6 + 1。 CASE CNT6 IS WHEN 0 = WEI = 000。 SHUJU = S1。 WHEN 1 = WEI = 001。 SHUJU = S2。 WHEN 2 = WEI = 010。 SHUJU = S3。 WHEN 3 = WEI = 011。 SHUJU = S4。 WHEN 4 = WEI = 100。 SHUJU = S5。 WHEN 5 = WEI = 101。 SHUJU = S6。 CNT6=0。 WHEN OTHERS = NULL。 END CASE。 END IF。 END PROCESS。 PRO2: PROCESS(SHUJU) BEGIN CASE SHUJU IS WHEN 0000 = LED= 1111110。 WHEN 0001 = LED= 0110000。 WHEN 0010 = LED= 1101101。 WHEN 0011 = LED= 1111001。 WHEN 0100 = LED= 0110011。 WHEN 0101 = LED= 1011011。 WHEN 0110 = LED= 1011111。 WHEN 0111 = LED= 1110000。 WHEN 1000 = LED= 1111111。 WHEN 1001 = LED= 1111011。 WHEN others= LED= 0000000。 END CASE。 END PROCESS。 END。 第 14 页 通过上面的分频器,两个 60 进制的计数器,一个 12/24 进制的计数器, 6选 1 扫描器, 7 段数码显示器,设计如图所示的顶层。 规定每一模块的功能和各模块之间的接口。 同时整个计数器有清零。 设计思想,利用脉冲时钟产生一个1Hz 的信号来实现一秒钟的控制,要产生 1Hz 的信号就要用到分频器,实验中用512 分频器把 512Hz 的信号变成 1Hz。 然后信号进入控制秒的计数器,当第 60个脉冲时钟到来时,产生一个进位信号, 送到控制分的计数器,同理,当第。基于vhdl的电子计时器的设计课程设计(编辑修改稿)
相关推荐
0 √ profession 专业 Varchar 20 √ tel 电话 Varchar 20 √ 表 学生信息表 字段名 含义 类型 长度 是否可为空 是否作为主键 pno 专业代号 Varchar 10 √ pname 专业名称 Varchar 50 √ 表 专业信息表 字段名 含义 类型 长度 是否可为空 是否作为主键 classname 班级名称 Varchar 10 √ pno
提供的 API供发开人员使用,而系统内部的实现,你可以不需知晓,可以说 MFC 是微软 API 在 C++中的封装。 其关键技术在消息映射和消息传递的消息处理机制,在 SDK 中没有消息映射的概念,消息响应传递回调函数,然后判断消息类型,再接着处理。 其中 MFC 中重要的几个类: 作为大多数“窗口”的父类,如 CButton(按钮 )、 CFrameWnd(框架窗 5 口)、
L 等待被 Spider 程序处理。 新发现的 URL也被加入到这个队列中。 处理队列 : 当 Spider 程序开始处理时,他们被送到这个队列中 错误队列 : 如果在解析网页时出错, URL 将被送到这里。 该队 列中的 URL 不能被移入其他队列中 完成队列 : 如果解析网页没有出错, URL 将被送到这里。 该队列中的 URL 不能被移入其它队列中 在同一时间 URL 只能在一个队列中
等投资工具。 因而,中国要因地制宜,实事求是,根据自身的湖北经济学院本科毕业(设计)论文 6 特点和限制条件来发展网络金融。 到目前为止中国金融市场也有较大的进步,截至2020 年,通过第三方网络支付的支付量是 万亿元人民币,约占整个支付量 %。 支付总量的确不大,但其交易笔数已经占到支付总笔数的 30%。 有学者建议,目前互联网炙手可热,投资者蜂拥而至,但只要是金融产品都是有风险的
进行动画的自制,将 animation 动画挂在 Gameobject 上第 6 页 可实现 Gameobject 的位移、放大缩小、渐变或其他更高级的 效果。 24 animation 制作工具 游戏中的各种图标 Texture 文件需要制作成 Atlas 图集的形式, Unity3D 提供 atlas maker工具,将想要的图标素材导入到 Unity3D 中,然后利用 atlas
eulerAngles:旋转的欧拉角度数。 localEulerAngles:当前 Transrom 相对于父对象的旋转欧拉角。 localPostion:相对于父对象的位置 localRotation:相对于父对象的旋转。 Parent:此 Transform 的父对象。 Transfrom 的常用方法: DetachChildren:分离所有子对象。 Rotate