//------------------------------------------------------------------------------ // stm-fmc.h //------------------------------------------------------------------------------ //------------------------------------------------------------------------------ // Headers //------------------------------------------------------------------------------ #include "stm32f4xx_hal.h" //------------------------------------------------------------------------------ // External Variables //------------------------------------------------------------------------------ extern SRAM_HandleTypeDef _fmc_fpga_inst; //------------------------------------------------------------------------------ // Defined Values //------------------------------------------------------------------------------ #define FMC_FPGA_BASE_ADDR 0x60000000 #define FMC_FPGA_ADDR_MASK 0x00FFFFFC #define FMC_FPGA_NWAIT_MAX_POLL_TICKS 10 #define FMC_GPIO_PORT_NWAIT GPIOD #define FMC_GPIO_PIN_NWAIT GPIO_PIN_6 #define FMC_NWAIT_IDLE GPIO_PIN_SET //------------------------------------------------------------------------------ // Prototypes //------------------------------------------------------------------------------ void fmc_init(void); int fmc_write_32(uint32_t addr, uint32_t *data); int fmc_read_32(uint32_t addr, uint32_t *data); void _fmc_init_gpio(void); void _fmc_init_params(void); int _fmc_nwait_idle(void); //------------------------------------------------------------------------------ // EOF //------------------------------------------------------------------------------