emif.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. /** @file emif.h
  2. * @brief emif Driver Definition File
  3. * @date 29.May.2013
  4. * @version 03.05.02
  5. *
  6. */
  7. /* (c) Texas Instruments 2009-2013, All rights reserved. */
  8. #ifndef _EMIF_H_
  9. #define _EMIF_H_
  10. #include "reg_emif.h"
  11. /** @enum emif_pins
  12. * @brief Alias for emif pins
  13. *
  14. */
  15. enum emif_pins
  16. {
  17. emif_wait_pin0 = 0U,
  18. emif_wait_pin1 = 1U
  19. };
  20. /** @enum emif_size
  21. * @brief Alias for emif page size
  22. *
  23. */
  24. enum emif_size
  25. {
  26. elements_256 = 0U,
  27. elements_512 = 1U,
  28. elements_1024 = 2U,
  29. elements_2048 = 3U
  30. };
  31. /** @enum emif_port
  32. * @brief Alias for emif port
  33. *
  34. */
  35. enum emif_port
  36. {
  37. emif_8_bit_port = 0U,
  38. emif_16_bit_port = 1U
  39. };
  40. /** @enum emif_pagesize
  41. * @brief Alias for emif pagesize
  42. *
  43. */
  44. enum emif_pagesize
  45. {
  46. emif_4_words = 0U,
  47. emif_8_words = 1U
  48. };
  49. /** @enum emif_wait_polarity
  50. * @brief Alias for emif wait polarity
  51. *
  52. */
  53. enum emif_wait_polarity
  54. {
  55. emif_pin_low = 0U,
  56. emif_pin_high = 1U
  57. };
  58. #define PTR (uint32 *)(0x80000000U)
  59. /**
  60. * @defgroup EMIF EMIF
  61. * @brief Error Signaling Module.
  62. *
  63. * This EMIF memory controller is compliant with the JESD21-C SDR SDRAM memories utilizing a 16-bit
  64. * data bus. The purpose of this EMIF is to provide a means for the CPU to connect to a variety of external
  65. * devices including:
  66. * - Single data rate (SDR) SDRAM
  67. * - Asynchronous devices including NOR Flash and SRAM
  68. * The most common use for the EMIF is to interface with both a flash device and an SDRAM device
  69. * simultaneously. contains an example of operating the EMIF in this configuration.
  70. *
  71. * Related Files
  72. * - reg_emif.h
  73. * - emif.h
  74. * - emif.c
  75. * @addtogroup EMIF
  76. * @{
  77. */
  78. /* EMIF Interface Functions */
  79. void emif_SDRAMInit(void);
  80. void emif_ASYNC1Init(void);
  81. void emif_ASYNC2Init(void);
  82. void emif_ASYNC3Init(void);
  83. /**@}*/
  84. #endif /*EMIF_H_*/