名称:应用矩阵键盘的乘法计算器设计Verilog代码Quartus仿真
软件:Quartus
语言:Verilog
代码功能:
应用矩阵键盘的乘法计算器设计
1、设计乘法计算器
2、使用矩阵键盘输入数字和运算符
3、输入内容支持取消重新输入
4、数码管显示运算结果
FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com
演示视频:
设计文档:
1. 工程文件
2. 程序文件
3. 程序编译
4. RTL图
5. 管脚分配
6. 仿真文件
7. 仿真图
部分代码展示:
//计算器 module?calculator( input?clk,//时钟 input?reset, //数字按键 input?[3:0]?L_row,//行 output?[3:0]?H_col,//列 output?[7:0]?bitsel,//8个数码管,位选信号 output?[7:0]?segment//数码管段选信号 ); wire?[2:0]?current_state;//当前状态 wire?key_0_p; wire?key_1_p; wire?key_2_p; wire?key_3_p; wire?key_4_p; wire?key_5_p; wire?key_6_p; wire?key_7_p; wire?key_8_p; wire?key_9_p; wire?esc;//ESC键 wire?mul;//乘 wire?enter;//Enter键 wire?[15:0]?OP_A;//输入的操作数A wire?[15:0]?OP_B;//输入的操作数B wire?[15:0]?OP_Result;//结果 wire?clk_500KHz; //分频 div_clk?i_div_clk( .?clk(clk),//50M .?clk_500KHz(clk_500KHz)//分频到500K ); //输入模块 data_input?i_data_input( .?clk_500KHz(clk_500KHz),//500KHZ? .?reset(reset), .?L_row(L_row),//行 .?H_col(H_col),//列 .?key_0_rise(key_0_p), .?key_1_rise(key_1_p), .?key_2_rise(key_2_p), .?key_3_rise(key_3_p), .?key_4_rise(key_4_p), .?key_5_rise(key_5_p), .?key_6_rise(key_6_p), .?key_7_rise(key_7_p), .?key_8_rise(key_8_p), .?key_9_rise(key_9_p), .?key_A_rise(mul),//乘 .?key_B_rise(enter),//等于 .?key_C_rise(esc),//取消 .?key_D_rise(), .?key_E_rise(), .?key_F_rise() ); //状态控制模块 state_ctrl?i_state_ctrl( .?clk(clk_500KHz),//时钟 .?esc(esc),//ESC键 .?mul(mul),//乘 .?enter(enter),//Enter键 .?current_state(current_state)//当前状态 );
点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=1258
阅读全文
364