|
例子下载(含IAR和MDK两个版本):
V4-812_uCOS-II实验_低功耗(停机模式).rar
(2.7 MB, 下载次数: 124)
当前最新版本:
1. uCOS-II版本V2.92.11
2. uC/CPU版本V1.30.02
3. uC/LIB版本V1.38.01
============================================================
/*
*********************************************************************************************************
* 模块名称 : uCOS-II
* 文件名称 : app.c
* 版 本 : V1.0
* 说 明 : 本实验主要实现低功耗模式中的停机模式
* 实验目的:
* 1. 学习如何在uCOS-II上实现停机模式。
* 实验内容:
* 1. 共创建了如下几个任务,通过按下按键K1可以通过串口打印任务堆栈使用情况
* 优先级 使用栈 剩余栈 百分比 任务名
* Prio Used Free Per Taskname
* 63 18 110 14% uC/OS-II Idle
* 62 22 106 17% uC/OS-II Stat
* 0 35 221 13% Start Task
* 2 76 180 29% User Interface
* 60 28 228 10% LED
* 3 28 228 10% COM
* 1 30 226 11% KeyScan
* 串口软件建议使用SecureCRT(V4光盘里面有此软件)查看打印信息。
* Start Task任务 :实现LED闪烁。
* User Interface任务:根据用户的按键消息,实现相应的操作。
* LED任务 :实现LED闪烁。
* KeyScan任务 :主要是实现按键扫描。
* COM任务 :实现LED闪烁。
* 2. 关于低功耗的停机模式说明:
* (1) 停止模式是在Cortex-M3的深睡眠模式基础上结合了外设的时钟控制机制,在停止模式下电压
* 调节器可运行在正常或低功耗模式。此时在1.8V供电区域的的所有时钟都被停止,PLL、HSI和
* HSE的RC振荡器的功能被禁止,SRAM和寄存器内容被保留下来。
* (2) 在停止模式下,所有的I/O引脚都保持它们在运行模式时的状态。
* (3) 一定要关闭滴答定时器,实际测试发现滴答定时器中断也能唤醒停机模式。
* (4) 当一个中断或唤醒事件导致退出停止模式时, HSI RC振荡器被选为系统时钟。
* (5) 退出低功耗的停机模式后,需要重新配置使用HSE 。
* 3. K1按键按下打印任务的执行情况。
* K2按键按下将系统从停机模式模式恢复。
* K3按键按下让系统进入停机模式。
* 设计低功耗主要从以下几方面着手:
* 1. 用户需要根据最低电源消耗、最快速启动时间和可用的唤醒源等条件,选定一个最佳的低功耗模式。
* 可以使用的低功耗方式有休眠模式,待机模式,停机模式。
* 2. 选择了低功耗方式后就是关闭可以关闭的外设时钟。
* 3. 降低系统主频。
* 4. 注意I/O的状态。
* 如果此IO口带上拉,请设置为高电平输出或者高阻态输入;
* 如果此IO口带下拉,请设置为低电平输出或者高阻态输入;
* a. 在睡眠模式下,所有的I/O引脚都保持它们在运行模式时的状态。
* b. 在停止模式下,所有的I/O引脚都保持它们在运行模式时的状态。
* c. 在待机模式下,所有的I/O引脚处于高阻态,除了以下的引脚:
* ● 复位引脚(始终有效)
* ● 当被设置为防侵入或校准输出时的TAMPER引脚
* ● 被使能的唤醒引脚
* 5. 注意IO和外设IC的连接。
* 6. 测低功耗的时候,一定不要连接调试器,更不能边调试边测电流。
* 注意事项:
* 1. 本实验推荐使用串口软件SecureCRT,要不串口打印效果不整齐。此软件在
* V4开发板光盘里面有。
* 2. 务必将编辑器的缩进参数和TAB设置为4来阅读本文件,要不代码显示不整齐。
*
* 修改记录 :
* 版本号 日期 作者 说明
* V1.0 2015-08-02 Eric2013 1. ST固件库到V3.6.1版本
* 2. BSP驱动包V1.2
* 3. uCOS-II版本V2.92.11
* 4. uC/CPU版本V1.30.02
* 5. uC/LIB版本V1.38.01
*
* Copyright (C), 2015-2020, 安富莱电子 www.armfly.com
*********************************************************************************************************
*/ |
|