You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

59 lines
1.2 KiB

1 year ago
  1. #pragma once
  2. #include <stdint.h>
  3. #include "project_dep.h"
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. typedef struct {
  8. /**
  9. * @brief ָSPI ӿ
  10. */
  11. SPI_HandleTypeDef *spi1;
  12. zaf_gpio_t reset_pin_io;
  13. zaf_gpio_t fpga_reserve_ioa0;
  14. zaf_gpio_t fpga_reserve_ioa1;
  15. zaf_gpio_t fpga_reserve_ioa2;
  16. zaf_gpio_t fpga_reserve_ioa3;
  17. zaf_gpio_t fpga_reserve_ioa4;
  18. zaf_gpio_t fpga_reserve_ioa5;
  19. zaf_gpio_t fpga_reserve_ioa6;
  20. zaf_gpio_t fpga_reserve_ioa7;
  21. zaf_gpio_t fpga_reserve_iob0;
  22. zaf_gpio_t fpga_reserve_iob1;
  23. zaf_gpio_t fpga_reserve_iob2;
  24. zaf_gpio_t fpga_reserve_iob3;
  25. zaf_gpio_t fpga_reserve_iob4;
  26. zaf_gpio_t fpga_reserve_iob5;
  27. zaf_gpio_t fpga_reserve_iob6;
  28. zaf_gpio_t fpga_reserve_iob7;
  29. } fpga_if_t;
  30. /**
  31. * @brief fpga_ifʼ
  32. *
  33. */
  34. void fpga_if_init();
  35. /**
  36. * @brief SPIĴдָ FPGASPI
  37. *
  38. * @param add
  39. * @param txdata
  40. * @param rxdata
  41. */
  42. void fpga_if_spi_write_data(uint32_t add, uint32_t txdata, uint32_t *rxdata);
  43. /**
  44. * @brief SPIĴָ FPGASPI
  45. *
  46. * @param add
  47. * @param rxdata
  48. */
  49. void fpga_if_spi_read_data(uint32_t add, uint32_t *rxdata);
  50. fpga_if_t *fpga_if_get_instance();
  51. #ifdef __cplusplus
  52. }
  53. #endif