|
H743在使用FMC接口外接FPGA,将FPGA视作SRAM,在进行读写操作时,FPGA抓不到片选信号和读使能拉低,但能抓到写使能拉低? hsram1.Instance = FMC_NORSRAM_DEVICE; hsram1.Extended = FMC_NORSRAM_EXTENDED_DEVICE; / hsram1.Init / hsram1.Init.NSBank = FMC_NORSRAM_BANK1; hsram1.Init.DataAddressMux = FMC_DATA_ADDRESS_MUX_DISABLE; hsram1.Init.MemoryType = FMC_MEMORY_TYPE_SRAM; hsram1.Init.MemoryDataWidth = FMC_NORSRAM_MEM_BUS_WIDTH_8; hsram1.Init.BurstAccessMode = FMC_BURST_ACCESS_MODE_DISABLE; hsram1.Init.WaitSignalPolarity = FMC_WAIT_SIGNAL_POLARITY_LOW; hsram1.Init.WaitSignalActive = FMC_WAIT_TIMING_BEFORE_WS; hsram1.Init.WriteOperation = FMC_WRITE_OPERATION_ENABLE; hsram1.Init.WaitSignal = FMC_WAIT_SIGNAL_DISABLE; hsram1.Init.ExtendedMode = FMC_EXTENDED_MODE_DISABLE; hsram1.Init.AsynchronousWait = FMC_ASYNCHRONOUS_WAIT_DISABLE; hsram1.Init.WriteBurst = FMC_WRITE_BURST_DISABLE; hsram1.Init.ContinuousClock = FMC_CONTINUOUS_CLOCK_SYNC_ONLY; hsram1.Init.WriteFifo = FMC_WRITE_FIFO_DISABLE; hsram1.Init.PageSize = FMC_PAGE_SIZE_NONE; / Timing / Timing.AddressSetupTime = 15; Timing.AddressHoldTime = 15; Timing.DataSetupTime = 60; Timing.BusTurnAroundDuration = 15; Timing.CLKDivision = 16; Timing.DataLatency = 17; Timing.AccessMode = FMC_ACCESS_MODE_A; while(1) { printf("fpga test start WRITE !!!!!!!!!!\r\n"); for(i = 0, writedata = 0; i < 255; i++, writedata++) { (uint8_t)(Bank1_FPGA_ADDR + i)=writedata; } HAL_Delay(2000); printf("fpga test start READ !!!!!!!!!!\r\n"); for(i = 0; i < 255; i++) { readdata = (uint8_t)(Bank1_FPGA_ADDR + i); } printf("fpga test end !!!!!!!!!!\r\n"); HAL_Delay(2000); } |
|
|
| 你检查下时序参数,连线,片选脚的连接、地址给对没有。 |
STM32H750的上电BOR生效电压
STM32H563的QSPI接口不能读取W25Q256的后128MB数据
STM32H7的SMPS供电
STM32H7无法芯片
stm32cubeMx生成stm32H743IIT6 cmake工程时全局变量自动定义到DTCM段
CubeMX 生成的 STM32H7 CMake 工程打开串口 DMA 无法正常发送数据,如何解决?
TOF传感器无法正确识别物体
STM32H750VBT6无法使用flymcu.exe或flashloader,通过串口1烧写程序
STM32H723VGT6 通过USART1/3连接CubeProgrammer失败
求助:USB 设备模式下的 UF2 更新,擦写非活动 Bank 时引起主机复位,但加 Hub 正常 —— 双 Bank 不是应该无干扰吗?
微信公众号
手机版