1 /* Coldfire C Header File
\r
2 * Copyright Freescale Semiconductor Inc
\r
3 * All rights reserved.
\r
5 * 2008/05/23 Revision: 0.95
\r
7 * (c) Copyright UNIS, a.s. 1997-2008
\r
12 * http : www.processorexpert.com
\r
13 * mail : info@processorexpert.com
\r
16 #ifndef __MCF52221_PWM_H__
\r
17 #define __MCF52221_PWM_H__
\r
20 /*********************************************************************
\r
22 * Pulse Width Modulation (PWM)
\r
24 *********************************************************************/
\r
26 /* Register read/write macros */
\r
27 #define MCF_PWM_PWME (*(vuint8 *)(0x401B0000))
\r
28 #define MCF_PWM_PWMPOL (*(vuint8 *)(0x401B0001))
\r
29 #define MCF_PWM_PWMCLK (*(vuint8 *)(0x401B0002))
\r
30 #define MCF_PWM_PWMPRCLK (*(vuint8 *)(0x401B0003))
\r
31 #define MCF_PWM_PWMCAE (*(vuint8 *)(0x401B0004))
\r
32 #define MCF_PWM_PWMCTL (*(vuint8 *)(0x401B0005))
\r
33 #define MCF_PWM_PWMSCLA (*(vuint8 *)(0x401B0008))
\r
34 #define MCF_PWM_PWMSCLB (*(vuint8 *)(0x401B0009))
\r
35 #define MCF_PWM_PWMCNT0 (*(vuint8 *)(0x401B000C))
\r
36 #define MCF_PWM_PWMCNT1 (*(vuint8 *)(0x401B000D))
\r
37 #define MCF_PWM_PWMCNT2 (*(vuint8 *)(0x401B000E))
\r
38 #define MCF_PWM_PWMCNT3 (*(vuint8 *)(0x401B000F))
\r
39 #define MCF_PWM_PWMCNT4 (*(vuint8 *)(0x401B0010))
\r
40 #define MCF_PWM_PWMCNT5 (*(vuint8 *)(0x401B0011))
\r
41 #define MCF_PWM_PWMCNT6 (*(vuint8 *)(0x401B0012))
\r
42 #define MCF_PWM_PWMCNT7 (*(vuint8 *)(0x401B0013))
\r
43 #define MCF_PWM_PWMPER0 (*(vuint8 *)(0x401B0014))
\r
44 #define MCF_PWM_PWMPER1 (*(vuint8 *)(0x401B0015))
\r
45 #define MCF_PWM_PWMPER2 (*(vuint8 *)(0x401B0016))
\r
46 #define MCF_PWM_PWMPER3 (*(vuint8 *)(0x401B0017))
\r
47 #define MCF_PWM_PWMPER4 (*(vuint8 *)(0x401B0018))
\r
48 #define MCF_PWM_PWMPER5 (*(vuint8 *)(0x401B0019))
\r
49 #define MCF_PWM_PWMPER6 (*(vuint8 *)(0x401B001A))
\r
50 #define MCF_PWM_PWMPER7 (*(vuint8 *)(0x401B001B))
\r
51 #define MCF_PWM_PWMDTY0 (*(vuint8 *)(0x401B001C))
\r
52 #define MCF_PWM_PWMDTY1 (*(vuint8 *)(0x401B001D))
\r
53 #define MCF_PWM_PWMDTY2 (*(vuint8 *)(0x401B001E))
\r
54 #define MCF_PWM_PWMDTY3 (*(vuint8 *)(0x401B001F))
\r
55 #define MCF_PWM_PWMDTY4 (*(vuint8 *)(0x401B0020))
\r
56 #define MCF_PWM_PWMDTY5 (*(vuint8 *)(0x401B0021))
\r
57 #define MCF_PWM_PWMDTY6 (*(vuint8 *)(0x401B0022))
\r
58 #define MCF_PWM_PWMDTY7 (*(vuint8 *)(0x401B0023))
\r
59 #define MCF_PWM_PWMSDN (*(vuint8 *)(0x401B0024))
\r
60 #define MCF_PWM_PWMCNT(x) (*(vuint8 *)(0x401B000C + ((x)*0x1)))
\r
61 #define MCF_PWM_PWMPER(x) (*(vuint8 *)(0x401B0014 + ((x)*0x1)))
\r
62 #define MCF_PWM_PWMDTY(x) (*(vuint8 *)(0x401B001C + ((x)*0x1)))
\r
65 /* Bit definitions and macros for MCF_PWM_PWME */
\r
66 #define MCF_PWM_PWME_PWME0 (0x1)
\r
67 #define MCF_PWM_PWME_PWME1 (0x2)
\r
68 #define MCF_PWM_PWME_PWME2 (0x4)
\r
69 #define MCF_PWM_PWME_PWME3 (0x8)
\r
70 #define MCF_PWM_PWME_PWME4 (0x10)
\r
71 #define MCF_PWM_PWME_PWME5 (0x20)
\r
72 #define MCF_PWM_PWME_PWME6 (0x40)
\r
73 #define MCF_PWM_PWME_PWME7 (0x80)
\r
75 /* Bit definitions and macros for MCF_PWM_PWMPOL */
\r
76 #define MCF_PWM_PWMPOL_PPOL0 (0x1)
\r
77 #define MCF_PWM_PWMPOL_PPOL1 (0x2)
\r
78 #define MCF_PWM_PWMPOL_PPOL2 (0x4)
\r
79 #define MCF_PWM_PWMPOL_PPOL3 (0x8)
\r
80 #define MCF_PWM_PWMPOL_PPOL4 (0x10)
\r
81 #define MCF_PWM_PWMPOL_PPOL5 (0x20)
\r
82 #define MCF_PWM_PWMPOL_PPOL6 (0x40)
\r
83 #define MCF_PWM_PWMPOL_PPOL7 (0x80)
\r
85 /* Bit definitions and macros for MCF_PWM_PWMCLK */
\r
86 #define MCF_PWM_PWMCLK_PCLK0 (0x1)
\r
87 #define MCF_PWM_PWMCLK_PCLK1 (0x2)
\r
88 #define MCF_PWM_PWMCLK_PCLK2 (0x4)
\r
89 #define MCF_PWM_PWMCLK_PCLK3 (0x8)
\r
90 #define MCF_PWM_PWMCLK_PCLK4 (0x10)
\r
91 #define MCF_PWM_PWMCLK_PCLK5 (0x20)
\r
92 #define MCF_PWM_PWMCLK_PCLK6 (0x40)
\r
93 #define MCF_PWM_PWMCLK_PCLK7 (0x80)
\r
95 /* Bit definitions and macros for MCF_PWM_PWMPRCLK */
\r
96 #define MCF_PWM_PWMPRCLK_PCKA(x) (((x)&0x7)<<0)
\r
97 #define MCF_PWM_PWMPRCLK_PCKB(x) (((x)&0x7)<<0x4)
\r
99 /* Bit definitions and macros for MCF_PWM_PWMCAE */
\r
100 #define MCF_PWM_PWMCAE_CAE0 (0x1)
\r
101 #define MCF_PWM_PWMCAE_CAE1 (0x2)
\r
102 #define MCF_PWM_PWMCAE_CAE2 (0x4)
\r
103 #define MCF_PWM_PWMCAE_CAE3 (0x8)
\r
104 #define MCF_PWM_PWMCAE_CAE4 (0x10)
\r
105 #define MCF_PWM_PWMCAE_CAE5 (0x20)
\r
106 #define MCF_PWM_PWMCAE_CAE6 (0x40)
\r
107 #define MCF_PWM_PWMCAE_CAE7 (0x80)
\r
109 /* Bit definitions and macros for MCF_PWM_PWMCTL */
\r
110 #define MCF_PWM_PWMCTL_PFRZ (0x4)
\r
111 #define MCF_PWM_PWMCTL_PSWAI (0x8)
\r
112 #define MCF_PWM_PWMCTL_CON01 (0x10)
\r
113 #define MCF_PWM_PWMCTL_CON23 (0x20)
\r
114 #define MCF_PWM_PWMCTL_CON45 (0x40)
\r
115 #define MCF_PWM_PWMCTL_CON67 (0x80)
\r
117 /* Bit definitions and macros for MCF_PWM_PWMSCLA */
\r
118 #define MCF_PWM_PWMSCLA_SCALEA(x) (((x)&0xFF)<<0)
\r
120 /* Bit definitions and macros for MCF_PWM_PWMSCLB */
\r
121 #define MCF_PWM_PWMSCLB_SCALEB(x) (((x)&0xFF)<<0)
\r
123 /* Bit definitions and macros for MCF_PWM_PWMCNT */
\r
124 #define MCF_PWM_PWMCNT_COUNT(x) (((x)&0xFF)<<0)
\r
126 /* Bit definitions and macros for MCF_PWM_PWMPER */
\r
127 #define MCF_PWM_PWMPER_PERIOD(x) (((x)&0xFF)<<0)
\r
129 /* Bit definitions and macros for MCF_PWM_PWMDTY */
\r
130 #define MCF_PWM_PWMDTY_DUTY(x) (((x)&0xFF)<<0)
\r
132 /* Bit definitions and macros for MCF_PWM_PWMSDN */
\r
133 #define MCF_PWM_PWMSDN_SDNEN (0x1)
\r
134 #define MCF_PWM_PWMSDN_PWM7IL (0x2)
\r
135 #define MCF_PWM_PWMSDN_PWM7IN (0x4)
\r
136 #define MCF_PWM_PWMSDN_LVL (0x10)
\r
137 #define MCF_PWM_PWMSDN_RESTART (0x20)
\r
138 #define MCF_PWM_PWMSDN_IE (0x40)
\r
139 #define MCF_PWM_PWMSDN_IF (0x80)
\r
142 #endif /* __MCF52221_PWM_H__ */
\r