我打算用STM32的FSMC隔着CPLD读取SRAM内的数据,不知道能否行得通?我用的语言是verilog HDL, CPLD内不做任何逻辑只是做连线,将CPLD与stm32连接的管脚 在CPLD内部连接至 CPLD与SRAM连接的管脚,这些管脚我都设置成了inout,并且设置成了zz, 但现在我通过stm32读取sram的数据始终是0xFFDF,并且stm32发热严重(不开启读sram相关的功能就不会发热),明显stm32与sram没有通, 望各位大神帮我看看,程序如下:
input rst;
input clk;
inout [18:0] sram_addr1;
inout [15:0] sram_data1;
inout sram_we_n1;
inout sram_oe_n1;
inout sram_ce_n1;
inout [1:0] sram_be_n1;
inout [18:0] fsmc_a;
inout [15:0] fsmc_d;
inout fsmc_ne; //cs
inout fsmc_oe;
inout fsmc_we;
inout [1:0] fsmc_nbl;
assign fsmc_a = sram_addr1; //帧计数为奇时fsmc连接sram1,偶数场时连接sram2
assign fsmc_d = sram_data1;
assign fsmc_ne = sram_ce_n1;
assign fsmc_oe = sram_oe_n1;
assign fsmc_we = sram_we_n1;
assign fsmc_nbl = sram_be_n1;
assign sram_addr1 = 19'hzz;
assign sram_data1[9:0] = 10'hzz;
assign sram_we_n1 = 1'hzz;
assign sram_oe_n1 = 1'hzz;
assign sram_ce_n1 = 1'hzz;
assign sram_be_n1 = 2'hzz;
endmodule |