AT45DBXXX_TYP.h 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. // Ôàéë ñ òèïàìè äëÿ AT45DB321D.
  2. // v 1.0 îò 16/07/15
  3. // Àâòîð: Ñû÷åâ À.
  4. #ifndef AT45DBXXX_TYP_H
  5. #define AT45DBXXX_TYP_H
  6. #include <stdint.h>
  7. #include <stdbool.h>
  8. typedef uint8_t __FLASH_BYTE;
  9. typedef uint16_t __FLASH_WORD;
  10. typedef uint32_t __FLASH_DWORD;
  11. #include "drivers\flash\common\AT45DB321D_ERR.h" // êîäû îøèáîê
  12. #ifndef __SPEC_HEADER_KEYWORDS__H__
  13. #define __SPEC_HEADER_KEYWORDS__H__
  14. //------------ GLOBAL-----------------
  15. #ifndef pragma
  16. #define pragma(str) _Pragma( #str )
  17. #else
  18. #error Êîíôëèêò èìåí ìàêðîñîâ
  19. #endif
  20. #ifndef DISABLE_WARN
  21. #define DISABLE_WARN(code) pragma(diag_suppress=code)
  22. #else
  23. #error Êîíôëèêò èìåí ìàêðîñîâ
  24. #endif
  25. #if defined(ALIG)||defined(__ALIG8)||defined(__ALIG16)||defined(__ALIG32)
  26. #error Êîíôëèêò èìåí ìàêðîñîâ
  27. #else
  28. //------------ ALIGNMENT -------------
  29. #define ALIG(bytes) pragma(data_alignment=bytes)
  30. #define __ALIG8 ALIG(1) // âûðàâíèâàíèå 8 áèòíîé ïåðåìåííîé - íà 1 áàéò
  31. #define __ALIG16 ALIG(2) // âûðàâíèâàíèå 16 áèòíîé ïåðåìåííîé - íà 2 áàéòà
  32. #define __ALIG32 ALIG(4) // âûðàâíèâàíèå 32 áèòíîé ïåðåìåííîé - íà 4 áàéòà
  33. #endif
  34. //------------ PLACEMENT -------------
  35. #if defined(PLACEIN)||defined(_PLACEIN)
  36. #error Êîíôëèêò èìåí ìàêðîñîâ
  37. #else
  38. #define PLACEIN(section) pragma(location=#section) // PLACEIN(.usb)
  39. #define _PLACEIN(section) pragma(location=section) // PLACEIN(".usb")
  40. #endif
  41. //------------ WRAPPING ------------- // added 16.04.19
  42. #define AT45_IMP_FUNC_WRAPPER_I(A,B) A##B
  43. #define AT45_IMP_FUNC_WRAPPER_C(pref,value) AT45_IMP_FUNC_WRAPPER_I(pref,value)
  44. #endif
  45. #endif