You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
143 lines
6.6 KiB
C
143 lines
6.6 KiB
C
/* Coldfire C Header File
|
|
* Copyright Freescale Semiconductor Inc
|
|
* All rights reserved.
|
|
*
|
|
* 2008/05/23 Revision: 0.95
|
|
*
|
|
* (c) Copyright UNIS, a.s. 1997-2008
|
|
* UNIS, a.s.
|
|
* Jundrovska 33
|
|
* 624 00 Brno
|
|
* Czech Republic
|
|
* http : www.processorexpert.com
|
|
* mail : info@processorexpert.com
|
|
*/
|
|
|
|
#ifndef __MCF52221_PWM_H__
|
|
#define __MCF52221_PWM_H__
|
|
|
|
|
|
/*********************************************************************
|
|
*
|
|
* Pulse Width Modulation (PWM)
|
|
*
|
|
*********************************************************************/
|
|
|
|
/* Register read/write macros */
|
|
#define MCF_PWM_PWME (*(vuint8 *)(0x401B0000))
|
|
#define MCF_PWM_PWMPOL (*(vuint8 *)(0x401B0001))
|
|
#define MCF_PWM_PWMCLK (*(vuint8 *)(0x401B0002))
|
|
#define MCF_PWM_PWMPRCLK (*(vuint8 *)(0x401B0003))
|
|
#define MCF_PWM_PWMCAE (*(vuint8 *)(0x401B0004))
|
|
#define MCF_PWM_PWMCTL (*(vuint8 *)(0x401B0005))
|
|
#define MCF_PWM_PWMSCLA (*(vuint8 *)(0x401B0008))
|
|
#define MCF_PWM_PWMSCLB (*(vuint8 *)(0x401B0009))
|
|
#define MCF_PWM_PWMCNT0 (*(vuint8 *)(0x401B000C))
|
|
#define MCF_PWM_PWMCNT1 (*(vuint8 *)(0x401B000D))
|
|
#define MCF_PWM_PWMCNT2 (*(vuint8 *)(0x401B000E))
|
|
#define MCF_PWM_PWMCNT3 (*(vuint8 *)(0x401B000F))
|
|
#define MCF_PWM_PWMCNT4 (*(vuint8 *)(0x401B0010))
|
|
#define MCF_PWM_PWMCNT5 (*(vuint8 *)(0x401B0011))
|
|
#define MCF_PWM_PWMCNT6 (*(vuint8 *)(0x401B0012))
|
|
#define MCF_PWM_PWMCNT7 (*(vuint8 *)(0x401B0013))
|
|
#define MCF_PWM_PWMPER0 (*(vuint8 *)(0x401B0014))
|
|
#define MCF_PWM_PWMPER1 (*(vuint8 *)(0x401B0015))
|
|
#define MCF_PWM_PWMPER2 (*(vuint8 *)(0x401B0016))
|
|
#define MCF_PWM_PWMPER3 (*(vuint8 *)(0x401B0017))
|
|
#define MCF_PWM_PWMPER4 (*(vuint8 *)(0x401B0018))
|
|
#define MCF_PWM_PWMPER5 (*(vuint8 *)(0x401B0019))
|
|
#define MCF_PWM_PWMPER6 (*(vuint8 *)(0x401B001A))
|
|
#define MCF_PWM_PWMPER7 (*(vuint8 *)(0x401B001B))
|
|
#define MCF_PWM_PWMDTY0 (*(vuint8 *)(0x401B001C))
|
|
#define MCF_PWM_PWMDTY1 (*(vuint8 *)(0x401B001D))
|
|
#define MCF_PWM_PWMDTY2 (*(vuint8 *)(0x401B001E))
|
|
#define MCF_PWM_PWMDTY3 (*(vuint8 *)(0x401B001F))
|
|
#define MCF_PWM_PWMDTY4 (*(vuint8 *)(0x401B0020))
|
|
#define MCF_PWM_PWMDTY5 (*(vuint8 *)(0x401B0021))
|
|
#define MCF_PWM_PWMDTY6 (*(vuint8 *)(0x401B0022))
|
|
#define MCF_PWM_PWMDTY7 (*(vuint8 *)(0x401B0023))
|
|
#define MCF_PWM_PWMSDN (*(vuint8 *)(0x401B0024))
|
|
#define MCF_PWM_PWMCNT(x) (*(vuint8 *)(0x401B000C + ((x)*0x1)))
|
|
#define MCF_PWM_PWMPER(x) (*(vuint8 *)(0x401B0014 + ((x)*0x1)))
|
|
#define MCF_PWM_PWMDTY(x) (*(vuint8 *)(0x401B001C + ((x)*0x1)))
|
|
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWME */
|
|
#define MCF_PWM_PWME_PWME0 (0x1)
|
|
#define MCF_PWM_PWME_PWME1 (0x2)
|
|
#define MCF_PWM_PWME_PWME2 (0x4)
|
|
#define MCF_PWM_PWME_PWME3 (0x8)
|
|
#define MCF_PWM_PWME_PWME4 (0x10)
|
|
#define MCF_PWM_PWME_PWME5 (0x20)
|
|
#define MCF_PWM_PWME_PWME6 (0x40)
|
|
#define MCF_PWM_PWME_PWME7 (0x80)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMPOL */
|
|
#define MCF_PWM_PWMPOL_PPOL0 (0x1)
|
|
#define MCF_PWM_PWMPOL_PPOL1 (0x2)
|
|
#define MCF_PWM_PWMPOL_PPOL2 (0x4)
|
|
#define MCF_PWM_PWMPOL_PPOL3 (0x8)
|
|
#define MCF_PWM_PWMPOL_PPOL4 (0x10)
|
|
#define MCF_PWM_PWMPOL_PPOL5 (0x20)
|
|
#define MCF_PWM_PWMPOL_PPOL6 (0x40)
|
|
#define MCF_PWM_PWMPOL_PPOL7 (0x80)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMCLK */
|
|
#define MCF_PWM_PWMCLK_PCLK0 (0x1)
|
|
#define MCF_PWM_PWMCLK_PCLK1 (0x2)
|
|
#define MCF_PWM_PWMCLK_PCLK2 (0x4)
|
|
#define MCF_PWM_PWMCLK_PCLK3 (0x8)
|
|
#define MCF_PWM_PWMCLK_PCLK4 (0x10)
|
|
#define MCF_PWM_PWMCLK_PCLK5 (0x20)
|
|
#define MCF_PWM_PWMCLK_PCLK6 (0x40)
|
|
#define MCF_PWM_PWMCLK_PCLK7 (0x80)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMPRCLK */
|
|
#define MCF_PWM_PWMPRCLK_PCKA(x) (((x)&0x7)<<0)
|
|
#define MCF_PWM_PWMPRCLK_PCKB(x) (((x)&0x7)<<0x4)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMCAE */
|
|
#define MCF_PWM_PWMCAE_CAE0 (0x1)
|
|
#define MCF_PWM_PWMCAE_CAE1 (0x2)
|
|
#define MCF_PWM_PWMCAE_CAE2 (0x4)
|
|
#define MCF_PWM_PWMCAE_CAE3 (0x8)
|
|
#define MCF_PWM_PWMCAE_CAE4 (0x10)
|
|
#define MCF_PWM_PWMCAE_CAE5 (0x20)
|
|
#define MCF_PWM_PWMCAE_CAE6 (0x40)
|
|
#define MCF_PWM_PWMCAE_CAE7 (0x80)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMCTL */
|
|
#define MCF_PWM_PWMCTL_PFRZ (0x4)
|
|
#define MCF_PWM_PWMCTL_PSWAI (0x8)
|
|
#define MCF_PWM_PWMCTL_CON01 (0x10)
|
|
#define MCF_PWM_PWMCTL_CON23 (0x20)
|
|
#define MCF_PWM_PWMCTL_CON45 (0x40)
|
|
#define MCF_PWM_PWMCTL_CON67 (0x80)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMSCLA */
|
|
#define MCF_PWM_PWMSCLA_SCALEA(x) (((x)&0xFF)<<0)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMSCLB */
|
|
#define MCF_PWM_PWMSCLB_SCALEB(x) (((x)&0xFF)<<0)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMCNT */
|
|
#define MCF_PWM_PWMCNT_COUNT(x) (((x)&0xFF)<<0)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMPER */
|
|
#define MCF_PWM_PWMPER_PERIOD(x) (((x)&0xFF)<<0)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMDTY */
|
|
#define MCF_PWM_PWMDTY_DUTY(x) (((x)&0xFF)<<0)
|
|
|
|
/* Bit definitions and macros for MCF_PWM_PWMSDN */
|
|
#define MCF_PWM_PWMSDN_SDNEN (0x1)
|
|
#define MCF_PWM_PWMSDN_PWM7IL (0x2)
|
|
#define MCF_PWM_PWMSDN_PWM7IN (0x4)
|
|
#define MCF_PWM_PWMSDN_LVL (0x10)
|
|
#define MCF_PWM_PWMSDN_RESTART (0x20)
|
|
#define MCF_PWM_PWMSDN_IE (0x40)
|
|
#define MCF_PWM_PWMSDN_IF (0x80)
|
|
|
|
|
|
#endif /* __MCF52221_PWM_H__ */
|