/////////////////////////////////////////////////
always @(keyin) //键盘中断处理
begin
if(keyin==key_status)
int_reg=1;
else
int_reg=0;
end
/////////////////////////////////////////////////
always @(negedge wr)
begin
/////向LCD写入命令字///
if(addr_sel==`lcd_wi)
begin
assign lcd_di_reg=0;
assign lcd_rw_reg=0;
lcd_reg=MCU_data;
end
else if(addr_sel==`lcd_wd)
begin
assign lcd_di_reg=1;
assign lcd_rw_reg=0;
lcd_reg=MCU_data;
end
/////向外部RAM写数据//////???????
// else if(addr_sel==`ram_rw)
// begin
// assign RAM_we=1'b0;
// end
/////////////////////////
end
/////////////////////////////////////////////////
always@(negedge rd)
begin
/////从LCD读入数据////
if(addr_sel==`lcd_ri)
begin
assign lcd_di_reg1=0;
assign lcd_rw_reg1=1;
MCU_data_reg=lcd;
end
else if(addr_sel==`lcd_rd)
begin
assign lcd_di_reg1=1;
assign lcd_rw_reg1=1;
MCU_data_reg=lcd;
end
else if(addr_sel==`key_rw) //读取键盘的状态
begin
MCU_data_reg=keyin;
key_status=keyin;
end
//////////////////从外部RAM读出数据/////?????
// else if(addr_sel==`ram_rw)
// begin
// assign RAM_oe=1'b0;
// assign RAM_we=1'b1;
// end
////////////////////////////////////////
end
//////////////////////////////////////////
always@(wr or rd)
begin
lcd_e_reg=!(wr&&rd);
end
///////////////////////////////////////////////