📄 mcu2.v
字号:
/*单片机与FPGA端口定义
AD0------P142 A15----------P27
AD1------P141 A14----------P26
AD2------P143 A13----------P11
AD3------P1 A12----------P6
AD4------P2 A11----------P7
AD5------P3 A10----------P16
AD6------P4 A9----------P28
AD7------P5 A8----------P31
//硬件连接
RD------P139 WR-----------P134
cs------p31
A0------p28 //A1-----------P16
INT0----P132
//A0=0---------LED操作地址
A1=1---------键盘操作地址
//输出
LDE1---P85 LDE2---P83
LDE3---P79 LDE4---P77
LDE5---P75 LDE6---P72
LDE7---P84 LDE8---P82
*/
module mcu(rst,cs,A0,clk,wr,rd,mcu_data,,row,column,int_flag,beep);
input wr,rd,clk,cs,A0,rst;
input[3:0] column;//列线
output[3:0] row;
wire[3:0] scan_key;
output int_flag;
output beep;
reg beep;
output [7:0]mcu_data;
reg[7:0] mcu_data;
reg state;
reg[3:0]row;
wire[3:0] wire_row;
assign wire_row=row;
wire beep_flag;
reg[7:0] temp;
reg[7:0]Lmcu_data;
assign int_flag = (scan_key != 4'b0000)?0:1; //低电平中断
key1 scan_key1(clk,rst,column,scan_key,wire_row,beep_flag); //调用键盘扫描模块
always@(posedge clk )
begin
if(beep_flag) beep<=0;
else beep<=1;
temp<=scan_key;
end
//assign mcu_data=rd?8'bzzzzzzzz:temp;
always@(negedge rd or negedge cs)
begin
mcu_data<=temp;
//mcu_data<=8'bzzzzzzzz;
end
endmodule
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -