⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sdramc.c

📁 Freescale MCF5445evb 参考测试代码
💻 C
字号:
/*!  * \file    sdramc.c * \brief   Driver for the SDRAM Controller * \version $Revision: 1.1 $ * \author  Michael Norman * * \todo    Add section assignment to allow linker files to  *          force all code and data into non-sdram address */#include "common.h"#include "sdramc.h"/********************************************************************//*! * \brief   Enter self-refresh mode *  * Place the SDRAM devices into self-refresh mode and disable the module * clock.  This also disables SD_CLK and /SD_CLK.  The data in the devices * will be retained. */voidsdram_enter_self_refresh (void){    /* Only do this if the SDRAMC was already initialized */    if (MCF_SDRAMC_SDCR & MCF_SDRAMC_SDCR_DDR_MODE)    {        /* Issue self-refresh command (CKE cleared w/ REF_EN set) */        MCF_SDRAMC_SDCR &= ~MCF_SDRAMC_SDCR_CKE;                /* Disable SDRAMC clock */        MCF_PMM_PPMSR = MCF_PMM_PPMSR_SMCD(46);    }}/********************************************************************//*! * \brief   Exit self-refresh mode */voidsdram_exit_self_refresh (void){    /* Only do this if the SDRAMC was already initialized */    if (MCF_SDRAMC_SDCR & MCF_SDRAMC_SDCR_DDR_MODE)    {        /* Enable SDRAMC clock */        MCF_PMM_PPMCR = MCF_PMM_PPMCR_CMCD(46);                /* Reset the refresh-interval timer */        MCF_SDRAMC_SDCR &= ~MCF_SDRAMC_SDCR_REF_EN;                /* Exit self-refresh mode */        MCF_SDRAMC_SDCR |= MCF_SDRAMC_SDCR            | MCF_SDRAMC_SDCR_REF_EN            | MCF_SDRAMC_SDCR_CKE;    }}/********************************************************************//*! * \brief   Enter power-down mode *  * Place the SDRAM devices into power-down mode and disable the module * clock.  This also disables SD_CLK and /SD_CLK.  The data in the devices * will be retained. */voidsdram_enter_power_down (void){    /* Issue power-down command (CKE cleared w/ REF_EN cleared) */    MCF_SDRAMC_SDCR = MCF_SDRAMC_SDCR        & ~(MCF_SDRAMC_SDCR_CKE | MCF_SDRAMC_SDCR_REF_EN);        /* Disable SDRAMC clock */    MCF_PMM_PPMSR = MCF_PMM_PPMSR_SMCD(46);}/********************************************************************//*! * \brief   Exit power-down mode */voidsdram_exit_power_down (void){    /* Enable SDRAMC clock */    MCF_PMM_PPMCR = MCF_PMM_PPMCR_CMCD(46);        /* Exit power-down mode */    MCF_SDRAMC_SDCR = MCF_SDRAMC_SDCR        | MCF_SDRAMC_SDCR_REF_EN        | MCF_SDRAMC_SDCR_CKE;}

⌨️ 快捷键说明

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