bsppwm.c

来自「mx27 f14v2 源代码。包括ADS板上诸多驱动的源码。」· C语言 代码 · 共 114 行

C
114
字号
//-----------------------------------------------------------------------------
//
//  Copyright (C) 2004, Motorola Inc. All Rights Reserved
//
//-----------------------------------------------------------------------------
//
//  Copyright (C) 2004-2006, Freescale Semiconductor, Inc. All Rights Reserved.
//  THIS SOURCE CODE, AND ITS USE AND DISTRIBUTION, IS SUBJECT TO THE TERMS
//  AND CONDITIONS OF THE APPLICABLE LICENSE AGREEMENT 
//
//-----------------------------------------------------------------------------
//
//  File:  bsppwm.c
//
//   This file implements the BSP specific functions for PWM.
//
//-----------------------------------------------------------------------------
#include <windows.h>
#include "bsp.h"

//-----------------------------------------------------------------------------
// External Variables

//-----------------------------------------------------------------------------
// Defines
//------------------------------------------------------------------------------

// This will define the choice of clock source in PWMCR register
#define PWM_CLKSRC_VAL    PWM_PWMCR_CLKSRC_IPG_CLK_32K

//------------------------------------------------------------------------------
// Types

//------------------------------------------------------------------------------
// Global Variables

//------------------------------------------------------------------------------
// Local Variables

//------------------------------------------------------------------------------
// Local Functions

//------------------------------------------------------------------------------
//
// Function: BSPSetClockSource
//
// This function returns the BSP-specific clock
// source selection value for the PWM.
//
// Parameters:
//      None
//
// Returns:
//      The clock source for the PWM.
//
//------------------------------------------------------------------------------
UINT32 BSPSetPWMClockSource(void)
{
     return PWM_CLKSRC_VAL;
}

//------------------------------------------------------------------------------
//
// Function: BSPPwmSetClockGatingMode
//
// This function enable or disable CRM clock for PWM.
//
// Parameters:
//      startClocks
//          [in] boolean variable to enable or disable CRM clock
//
// Returns:
//      Return TRUE.
//
//------------------------------------------------------------------------------
BOOL BSPPwmSetClockGatingMode(BOOL startClocks)
{

    if (startClocks)
    {
        DDKClockSetGatingMode(DDK_CLOCK_GATE_INDEX_PWM, 
            DDK_CLOCK_GATE_MODE_ENABLE);
    }
    else
    {
        DDKClockSetGatingMode(DDK_CLOCK_GATE_INDEX_PWM, 
            DDK_CLOCK_GATE_MODE_DISABLE);
    }
    return TRUE;

}

//------------------------------------------------------------------------------
//
// Function: BSPPwmIomuxSetPin
//
// This function configures gpio for PWM.
//
// Parameters:
//      None
//
// Returns:
//      None
//
//------------------------------------------------------------------------------
void BSPPwmIomuxSetPin(void)
{
	DDK_GPIO_CFG  cfg;

	DDK_GPIO_SET_CONFIG(cfg, PWMO);
    DDKGpioEnable(&cfg);

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?