- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北邮数电实验四报告
北邮数电实验四报告
一、要求要求:
设计制作一个简易计算器,实现最大输入两位十进制数字的加减乘运算。 基本要求:
1、 实现最大输入两位十进制数字的加减乘运算;八个拨码开关按两位8421bcd码输入。
2、 能够实现多次连算,如 12+34×56-78=2498。
3、 最大长度以数码管最大个数为限,溢出报警。
提高要求:
1、 有正负数区分。
2、 实现除法。
3、 其它扩展功能。
二、系统设计:
设计思路:
1、 将该程序进行分模块设计。可以将程序分为:主程序、译码模块和防抖模块。其中, 主程序负责将输入的数据进行存储,对数据进行运算,将数据输出到数码上等;防抖模块负责对按键输入的数防抖;译码模块负责对输入的数据进行译码。
2、 分模块进行相应模块的编写。
3、 对编好的模块进行测试。
4、 编写主程序并进行调试。
总体框图:
流程图:
分块设计:
输入模块:由符号开关和拨码开关构成。采用序列存储的方式存储相应的输入。
输入译码模块:将输入的符号序列转化成先用状态,以便选取对应的计算方法;将输入的8421bcd码转化成相应的两位十进制数。
数码显示模块:将寄存器内的数进行输出到数码管上。显示所输入的第一个数以及最后的结果。
计算模块:调用相应的计算方式,对所输入的数进行计算。
防抖模块:在用按键输入时,所得到的信号可能 会有抖动,因此加入此抖动电路。
三、仿真波形及波形分析:
分析
由图中可以看出,当输入1,按下“确定”,数字就输入到了寄存器中,输入“+”号,在输入一个数35,按下“确定”,该计算器就件寄存器中的数与第二次输入的数进行相加,得到结果47。此时该结果又被直接保存到了寄存器中,继续输入运算符“-”,输入第三个数18,按下“确定”,计算器对其做减法运算,得到结果29,该结果又在寄存器中存储着。继续后续输入相应符号,相应数字可以继续进行相应的计算,只要结果在之间,就可以一直进行计算。
四、源程序:
主程序:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_ARITH.ALL;
USE IEEE.STD_LOGIC_SIGNED.ALL;
Entity lzjisuanqi is
port;
digital:OUT STD_LOGIC_VECTOR;
clk:in std_logic;
beep:out std_logic;
num:in std_logic_vector;
fuhao:in std_logic_vector
);
end entity lzjisuanqi;
architecture lz of lzjisuanqi is
component transform
port;
cout: out integer range 0 to9);
end component;
component fangdou IS
PORT;
key_out:OUT STD_LOGIC_VECTOR
);
end component;
type state_type is ;
signal state:state_type;
type time_type is ;
signal time1:time_type;
signal num1:integer range 0 to9;
signal result1:integer range -9999to9999;
signal result2:integer range -9999to9999;
signal cat0:integer range 0 to;
signal cat1:integer range 0 to;
signal cat2:integer range 0 to;
signal cat3:integer range 0 to;
signal cat4:integer range 0 to;
signal cnt : integer range 0 to0000;
signal clk_tmp : std_logic;
si
您可能关注的文档
最近下载
- 义务教育版(2024)四年级全一册第7课《数字编码随处见》.pptx VIP
- 《工程勘察定向钻探技术规程》.pdf VIP
- 多联机空调施工组织设计方案.docx VIP
- 计算机应用基础(Windows10+WPSOffice 2019)中职全套教学课件.pptx
- DELL EMC 存储设备健康检查报告(模板).doc VIP
- 金融知识竞赛题库第四部分中国人民银行法试题及答案.doc VIP
- 2025-2030年中国猪苓中药材行业现状调查及投资前景预测研究报告.docx
- 大疆无人机公司介绍.ppt VIP
- 防酸碱劳保培训课件.pptx VIP
- GBZT 181-2024 建设项目放射性职业病危害评价报告编制标准.pdf VIP
文档评论(0)