历史上的今天
今天是:2025年07月08日(星期二)
2019年07月08日 | STM32F10x CPU低功耗模式之停机模式
2019-07-08 来源:eefocus
/* 按键初始化(按键唤醒)*/
void User_Init(void)
{
GPIO_InitTypeDef GPIO_InitStructure;
EXTI_InitTypeDef EXTI_InitStructure;
NVIC_InitTypeDef NVIC_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA, ENABLE);
/* 按键 KEY1、KEY2、KEY3、KEY4*/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11 ;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU;
GPIO_Init(GPIOA, &GPIO_InitStructure);
EXTI_ClearITPendingBit(EXTI_Line11);
EXTI_InitStructure.EXTI_Line = EXTI_Line11;
EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt;
EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling;
EXTI_InitStructure.EXTI_LineCmd = ENABLE;
EXTI_Init(&EXTI_InitStructure);
NVIC_InitStructure.NVIC_IRQChannel = EXTI15_10_IRQn;
NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0;
NVIC_InitStructure.NVIC_IRQChannelSubPriority = 4;
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);
}
/* 按键外部中断函数 */
void EXTI15_10_IRQHandler(void)
{
if(EXTI_GetITStatus(EXTI_Line11) != RESET)
{
EXTI_ClearITPendingBit(EXTI_Line11);
if(WakeUpState == 0)
Flag_WakeUp = UPDATE; // 唤醒成功标志
}
}
/* 进入停机模式*/
void Sys_Enter_Stop(void)
{
PWR_EnterSTOPMode (PWR_Regulator_LowPower, PWR_STOPEntry_WFI);
WakeUpState = 0;
}
/*恢复系统时钟函数*/
/* 此段引用于某位大神,能否唤醒成功就靠这一段了*/
static void SysClkConfig_STOP(void)
{
/* After wake-up from STOP reconfigure the system clock */
/* Enable HSE */
RCC_HSEConfig(RCC_HSE_ON);
/* Wait till HSE is ready */
while(RCC_GetFlagStatus(RCC_FLAG_HSERDY) == RESET)
{}
/* Enable PLL */
RCC_PLLCmd(ENABLE);
/* Wait till PLL is ready */
while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY) == RESET)
{}
/* Select PLL as system clock source */
RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);
/* Wait till PLL is used as system clock source */
while(RCC_GetSYSCLKSource() != 0x08)
{}
}
史海拾趣
|
原文引自嵌入式领域非著名讲师 牛牛猛的博客 http://blog.eeworld.net/mistyeyed 嵌入式工程师是怎样炼成的(一)---- 引言 2005年的3月,我独自来到北京。晴空万里,微风和煦,灿烂的阳光让人有些惊喜地 ...… 查看全部问答> |
|
如题: 1、ARM中的 BANK是什么意思?是一个什么单位吗? 2、看 PXA270中MSC0寄存器的BIT3和BIT19的描述都是定义我的FLASH联接是多少位的 可是,我的 BSP在初始化 时将BIT19设置成32位,BIT3设置成16位 … 查看全部问答> |
|
AT+CREG? +CREG: 0,5 OK 最开始是0,2 表示正在寻找网络嘛。 但是过一会儿之后就回复0,5, 我看了解释说的是在漫游状态,但是我的卡是本地卡 没有漫游,为什么长时间都是这个状态,这样一来,就没法上网 这个是怎么一回事,谢谢… 查看全部问答> |
|
我曾经借过一个yc2440和sky2440,他们的bsp都不支持kitl调试,还有友善之臂的micro2440,好像也不支持kitl调试?现在找到一个立宇泰 2440 5.0 BSP SMDK2440A的,据说能够支持kitl调试,但是我是菜鸟,不会移植(也不知道能不能移植到smdk2440上去, ...… 查看全部问答> |
|
现在出现的情况是AD的显示结果后两位老是闪烁,我试过隆低系统频,加大AD采样定时器的分频,但问题依旧,这种方法对吗?还有别的好方法吗? 程序如下: #include <msp430x13x.h> #define vref 3300 void clock_init(void) { DCOCTL = 0x00; ...… 查看全部问答> |
|
请问“CCS4环境下可以直接编译生成 HEX 或BIN文件吗?”,通常都是通过HEX转换工具如HEX2000.EXE然后编写.cmd和.bat文件实现,不知道CCS4可否直接转换,再编译生成.BIN文件呢?… 查看全部问答> |
|
RT 求高手帮忙void main(void){ WDTCTL = WDTPW + WDTHOLD; // Stop WDT P6SEL |= 0x10; &nb ...… 查看全部问答> |
|
电子合成式次声波发生器 项目预算:¥ 50,000~80,000 开发周期: 60天 项目分类: 嵌入式 竞标要求: 项目标签: 声波发射 ...… 查看全部问答> |




