MCF52233_ADC.h
上传用户:dongxin
上传日期:2022-06-22
资源大小:370k
文件大小:10k
源码类别:

uCOS

开发平台:

Others

  1. /* Coldfire C Header File
  2.  * Copyright Freescale Semiconductor Inc
  3.  * All rights reserved.
  4.  *
  5.  * 2007/03/19 Revision: 0.91
  6.  */
  7. #ifndef __MCF52233_ADC_H__
  8. #define __MCF52233_ADC_H__
  9. /*********************************************************************
  10. *
  11. * Analog-to-Digital Converter (ADC)
  12. *
  13. *********************************************************************/
  14. /* Register read/write macros */
  15. #define MCF_ADC_CTRL1                        (*(vuint16*)(&__IPSBAR[0x190000]))
  16. #define MCF_ADC_CTRL2                        (*(vuint16*)(&__IPSBAR[0x190002]))
  17. #define MCF_ADC_ADZCC                        (*(vuint16*)(&__IPSBAR[0x190004]))
  18. #define MCF_ADC_ADLST1                       (*(vuint16*)(&__IPSBAR[0x190006]))
  19. #define MCF_ADC_ADLST2                       (*(vuint16*)(&__IPSBAR[0x190008]))
  20. #define MCF_ADC_ADSDIS                       (*(vuint16*)(&__IPSBAR[0x19000A]))
  21. #define MCF_ADC_ADSTAT                       (*(vuint16*)(&__IPSBAR[0x19000C]))
  22. #define MCF_ADC_ADLSTAT                      (*(vuint16*)(&__IPSBAR[0x19000E]))
  23. #define MCF_ADC_ADZCSTAT                     (*(vuint16*)(&__IPSBAR[0x190010]))
  24. #define MCF_ADC_ADRSLT0                      (*(vuint16*)(&__IPSBAR[0x190012]))
  25. #define MCF_ADC_ADRSLT1                      (*(vuint16*)(&__IPSBAR[0x190014]))
  26. #define MCF_ADC_ADRSLT2                      (*(vuint16*)(&__IPSBAR[0x190016]))
  27. #define MCF_ADC_ADRSLT3                      (*(vuint16*)(&__IPSBAR[0x190018]))
  28. #define MCF_ADC_ADRSLT4                      (*(vuint16*)(&__IPSBAR[0x19001A]))
  29. #define MCF_ADC_ADRSLT5                      (*(vuint16*)(&__IPSBAR[0x19001C]))
  30. #define MCF_ADC_ADRSLT6                      (*(vuint16*)(&__IPSBAR[0x19001E]))
  31. #define MCF_ADC_ADRSLT7                      (*(vuint16*)(&__IPSBAR[0x190020]))
  32. #define MCF_ADC_ADLLMT0                      (*(vuint16*)(&__IPSBAR[0x190022]))
  33. #define MCF_ADC_ADLLMT1                      (*(vuint16*)(&__IPSBAR[0x190024]))
  34. #define MCF_ADC_ADLLMT2                      (*(vuint16*)(&__IPSBAR[0x190026]))
  35. #define MCF_ADC_ADLLMT3                      (*(vuint16*)(&__IPSBAR[0x190028]))
  36. #define MCF_ADC_ADLLMT4                      (*(vuint16*)(&__IPSBAR[0x19002A]))
  37. #define MCF_ADC_ADLLMT5                      (*(vuint16*)(&__IPSBAR[0x19002C]))
  38. #define MCF_ADC_ADLLMT6                      (*(vuint16*)(&__IPSBAR[0x19002E]))
  39. #define MCF_ADC_ADLLMT7                      (*(vuint16*)(&__IPSBAR[0x190030]))
  40. #define MCF_ADC_ADHLMT0                      (*(vuint16*)(&__IPSBAR[0x190032]))
  41. #define MCF_ADC_ADHLMT1                      (*(vuint16*)(&__IPSBAR[0x190034]))
  42. #define MCF_ADC_ADHLMT2                      (*(vuint16*)(&__IPSBAR[0x190036]))
  43. #define MCF_ADC_ADHLMT3                      (*(vuint16*)(&__IPSBAR[0x190038]))
  44. #define MCF_ADC_ADHLMT4                      (*(vuint16*)(&__IPSBAR[0x19003A]))
  45. #define MCF_ADC_ADHLMT5                      (*(vuint16*)(&__IPSBAR[0x19003C]))
  46. #define MCF_ADC_ADHLMT6                      (*(vuint16*)(&__IPSBAR[0x19003E]))
  47. #define MCF_ADC_ADHLMT7                      (*(vuint16*)(&__IPSBAR[0x190040]))
  48. #define MCF_ADC_ADOFS0                       (*(vuint16*)(&__IPSBAR[0x190042]))
  49. #define MCF_ADC_ADOFS1                       (*(vuint16*)(&__IPSBAR[0x190044]))
  50. #define MCF_ADC_ADOFS2                       (*(vuint16*)(&__IPSBAR[0x190046]))
  51. #define MCF_ADC_ADOFS3                       (*(vuint16*)(&__IPSBAR[0x190048]))
  52. #define MCF_ADC_ADOFS4                       (*(vuint16*)(&__IPSBAR[0x19004A]))
  53. #define MCF_ADC_ADOFS5                       (*(vuint16*)(&__IPSBAR[0x19004C]))
  54. #define MCF_ADC_ADOFS6                       (*(vuint16*)(&__IPSBAR[0x19004E]))
  55. #define MCF_ADC_ADOFS7                       (*(vuint16*)(&__IPSBAR[0x190050]))
  56. #define MCF_ADC_POWER                        (*(vuint16*)(&__IPSBAR[0x190052]))
  57. #define MCF_ADC_CAL                          (*(vuint16*)(&__IPSBAR[0x190054]))
  58. #define MCF_ADC_ADRSLT(x)                    (*(vuint16*)(&__IPSBAR[0x190012 + ((x)*0x2)]))
  59. #define MCF_ADC_ADLLMT(x)                    (*(vuint16*)(&__IPSBAR[0x190022 + ((x)*0x2)]))
  60. #define MCF_ADC_ADHLMT(x)                    (*(vuint16*)(&__IPSBAR[0x190032 + ((x)*0x2)]))
  61. #define MCF_ADC_ADOFS(x)                     (*(vuint16*)(&__IPSBAR[0x190042 + ((x)*0x2)]))
  62. /* Bit definitions and macros for MCF_ADC_CTRL1 */
  63. #define MCF_ADC_CTRL1_SMODE(x)               (((x)&0x7)<<0)
  64. #define MCF_ADC_CTRL1_CHNCFG(x)              (((x)&0xF)<<0x4)
  65. #define MCF_ADC_CTRL1_HLMTIE                 (0x100)
  66. #define MCF_ADC_CTRL1_LLMTIE                 (0x200)
  67. #define MCF_ADC_CTRL1_ZCIE                   (0x400)
  68. #define MCF_ADC_CTRL1_EOSIE0                 (0x800)
  69. #define MCF_ADC_CTRL1_SYNC0                  (0x1000)
  70. #define MCF_ADC_CTRL1_START0                 (0x2000)
  71. #define MCF_ADC_CTRL1_STOP0                  (0x4000)
  72. /* Bit definitions and macros for MCF_ADC_CTRL2 */
  73. #define MCF_ADC_CTRL2_DIV(x)                 (((x)&0x1F)<<0)
  74. #define MCF_ADC_CTRL2_SIMULT                 (0x20)
  75. #define MCF_ADC_CTRL2_EOSIE1                 (0x800)
  76. #define MCF_ADC_CTRL2_SYNC1                  (0x1000)
  77. #define MCF_ADC_CTRL2_START1                 (0x2000)
  78. #define MCF_ADC_CTRL2_STOP1                  (0x4000)
  79. /* Bit definitions and macros for MCF_ADC_ADZCC */
  80. #define MCF_ADC_ADZCC_ZCE0(x)                (((x)&0x3)<<0)
  81. #define MCF_ADC_ADZCC_ZCE1(x)                (((x)&0x3)<<0x2)
  82. #define MCF_ADC_ADZCC_ZCE2(x)                (((x)&0x3)<<0x4)
  83. #define MCF_ADC_ADZCC_ZCE3(x)                (((x)&0x3)<<0x6)
  84. #define MCF_ADC_ADZCC_ZCE4(x)                (((x)&0x3)<<0x8)
  85. #define MCF_ADC_ADZCC_ZCE5(x)                (((x)&0x3)<<0xA)
  86. #define MCF_ADC_ADZCC_ZCE6(x)                (((x)&0x3)<<0xC)
  87. #define MCF_ADC_ADZCC_ZCE7(x)                (((x)&0x3)<<0xE)
  88. /* Bit definitions and macros for MCF_ADC_ADLST1 */
  89. #define MCF_ADC_ADLST1_SAMPLE0(x)            (((x)&0x7)<<0)
  90. #define MCF_ADC_ADLST1_SAMPLE1(x)            (((x)&0x7)<<0x4)
  91. #define MCF_ADC_ADLST1_SAMPLE2(x)            (((x)&0x7)<<0x8)
  92. #define MCF_ADC_ADLST1_SAMPLE3(x)            (((x)&0x7)<<0xC)
  93. /* Bit definitions and macros for MCF_ADC_ADLST2 */
  94. #define MCF_ADC_ADLST2_SAMPLE4(x)            (((x)&0x7)<<0)
  95. #define MCF_ADC_ADLST2_SAMPLE5(x)            (((x)&0x7)<<0x4)
  96. #define MCF_ADC_ADLST2_SAMPLE6(x)            (((x)&0x7)<<0x8)
  97. #define MCF_ADC_ADLST2_SAMPLE7(x)            (((x)&0x7)<<0xC)
  98. /* Bit definitions and macros for MCF_ADC_ADSDIS */
  99. #define MCF_ADC_ADSDIS_DS0                   (0x1)
  100. #define MCF_ADC_ADSDIS_DS1                   (0x2)
  101. #define MCF_ADC_ADSDIS_DS2                   (0x4)
  102. #define MCF_ADC_ADSDIS_DS3                   (0x8)
  103. #define MCF_ADC_ADSDIS_DS4                   (0x10)
  104. #define MCF_ADC_ADSDIS_DS5                   (0x20)
  105. #define MCF_ADC_ADSDIS_DS6                   (0x40)
  106. #define MCF_ADC_ADSDIS_DS7                   (0x80)
  107. /* Bit definitions and macros for MCF_ADC_ADSTAT */
  108. #define MCF_ADC_ADSTAT_RDY0                  (0x1)
  109. #define MCF_ADC_ADSTAT_RDY1                  (0x2)
  110. #define MCF_ADC_ADSTAT_RDY2                  (0x4)
  111. #define MCF_ADC_ADSTAT_RDY3                  (0x8)
  112. #define MCF_ADC_ADSTAT_RDY4                  (0x10)
  113. #define MCF_ADC_ADSTAT_RDY5                  (0x20)
  114. #define MCF_ADC_ADSTAT_RDY6                  (0x40)
  115. #define MCF_ADC_ADSTAT_RDY7                  (0x80)
  116. #define MCF_ADC_ADSTAT_HLMTI                 (0x100)
  117. #define MCF_ADC_ADSTAT_LLMTI                 (0x200)
  118. #define MCF_ADC_ADSTAT_ZCI                   (0x400)
  119. #define MCF_ADC_ADSTAT_EOSI0                 (0x800)
  120. #define MCF_ADC_ADSTAT_EOSI1                 (0x1000)
  121. #define MCF_ADC_ADSTAT_CIP1                  (0x4000)
  122. #define MCF_ADC_ADSTAT_CIP0                  (0x8000)
  123. /* Bit definitions and macros for MCF_ADC_ADLSTAT */
  124. #define MCF_ADC_ADLSTAT_LLS0                 (0x1)
  125. #define MCF_ADC_ADLSTAT_LLS1                 (0x2)
  126. #define MCF_ADC_ADLSTAT_LLS2                 (0x4)
  127. #define MCF_ADC_ADLSTAT_LLS3                 (0x8)
  128. #define MCF_ADC_ADLSTAT_LLS4                 (0x10)
  129. #define MCF_ADC_ADLSTAT_LLS5                 (0x20)
  130. #define MCF_ADC_ADLSTAT_LLS6                 (0x40)
  131. #define MCF_ADC_ADLSTAT_LLS7                 (0x80)
  132. #define MCF_ADC_ADLSTAT_HLS0                 (0x100)
  133. #define MCF_ADC_ADLSTAT_HLS1                 (0x200)
  134. #define MCF_ADC_ADLSTAT_HLS2                 (0x400)
  135. #define MCF_ADC_ADLSTAT_HLS3                 (0x800)
  136. #define MCF_ADC_ADLSTAT_HLS4                 (0x1000)
  137. #define MCF_ADC_ADLSTAT_HLS5                 (0x2000)
  138. #define MCF_ADC_ADLSTAT_HLS6                 (0x4000)
  139. #define MCF_ADC_ADLSTAT_HLS7                 (0x8000)
  140. /* Bit definitions and macros for MCF_ADC_ADZCSTAT */
  141. #define MCF_ADC_ADZCSTAT_ZCS0                (0x1)
  142. #define MCF_ADC_ADZCSTAT_ZCS1                (0x2)
  143. #define MCF_ADC_ADZCSTAT_ZCS2                (0x4)
  144. #define MCF_ADC_ADZCSTAT_ZCS3                (0x8)
  145. #define MCF_ADC_ADZCSTAT_ZCS4                (0x10)
  146. #define MCF_ADC_ADZCSTAT_ZCS5                (0x20)
  147. #define MCF_ADC_ADZCSTAT_ZCS6                (0x40)
  148. #define MCF_ADC_ADZCSTAT_ZCS7                (0x80)
  149. /* Bit definitions and macros for MCF_ADC_ADRSLT */
  150. #define MCF_ADC_ADRSLT_RSLT(x)               (((x)&0xFFF)<<0x3)
  151. #define MCF_ADC_ADRSLT_SEXT                  (0x8000)
  152. /* Bit definitions and macros for MCF_ADC_ADLLMT */
  153. #define MCF_ADC_ADLLMT_LLMT(x)               (((x)&0xFFF)<<0x3)
  154. /* Bit definitions and macros for MCF_ADC_ADHLMT */
  155. #define MCF_ADC_ADHLMT_HLMT(x)               (((x)&0xFFF)<<0x3)
  156. /* Bit definitions and macros for MCF_ADC_ADOFS */
  157. #define MCF_ADC_ADOFS_OFFSET(x)              (((x)&0xFFF)<<0x3)
  158. /* Bit definitions and macros for MCF_ADC_POWER */
  159. #define MCF_ADC_POWER_PD0                    (0x1)
  160. #define MCF_ADC_POWER_PD1                    (0x2)
  161. #define MCF_ADC_POWER_PD2                    (0x4)
  162. #define MCF_ADC_POWER_APD                    (0x8)
  163. #define MCF_ADC_POWER_PUDELAY(x)             (((x)&0x3F)<<0x4)
  164. #define MCF_ADC_POWER_PSTS0                  (0x400)
  165. #define MCF_ADC_POWER_PSTS1                  (0x800)
  166. #define MCF_ADC_POWER_PSTS2                  (0x1000)
  167. #define MCF_ADC_POWER_ASB                    (0x8000)
  168. /* Bit definitions and macros for MCF_ADC_CAL */
  169. #define MCF_ADC_CAL_SEL_VREFL                (0x4000)
  170. #define MCF_ADC_CAL_SEL_VREFH                (0x8000)
  171. #endif /* __MCF52233_ADC_H__ */