部件号:MSP-EXP432P401R
工具/软件:Code Composer Studio
大家好,
我正在使用MSP-EXP432P401R启动板和最新版本的CCS (7.2 .0.0.0013万)开发应用程序。
项目完成后,中央支助委员会向我提供了一些ULWFP 1.1 和ULWFP 4.1 的建议:
ULWFP 1.1 :
强烈建议使用低功耗模式(LPM)。 在MSP430应用中实现低功耗的必要步骤之一是最大限度地减少在活动模式下花费的时间,并最大限度地延长低功耗模式下的时间。 外围设备可以配置为在不需要CPU干预的情况下运行,CPU只需唤醒即可执行关键任务并快速返回低功耗模式。 (processors.wiki.ti.com/.../1.0371万)
ULWFP 4.1 :
当未使用的端口引脚未定义或未端接时,引脚上的浮动电压或直通电流会增加整体电流消耗。 (http://processors.wiki.ti.com/index.php/Compiler/diagnostic_messages/MSP430/1.0372万)
但我已经通过实施以下代码行遵循了这些规则:
对于ULWFP 1.1 :
/*
运行主应用
程序*/
void App_Main_Run (void)
{
同时(1)
{
/*进入睡眠状态*/
MAP_PCM_GotoLPM0();
}
}
对于ULWFP 4.1 :
/*
初始化GPIO
*/
void gPIO_Init(void)
{
MAP_GPIO设置输出引脚(GPIO_PORT_P1, PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P1,PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO端口P2,PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P2,PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO端口P3,PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P3,PIN_ALL16);
MAP_GPIO设置输出引脚(GPIO_PORT_P4,PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P4,PIN_ALL16);
MAP_GPIO设置输出引脚(GPIO_PORT_P5, PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P5,PIN_ALL16);
MAP_GPIO_setAsOutputPin (GPIO端口P6,PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P6,PIN_ALL16);
MAP_GPIO设置输出引脚(GPIO_PORT_P7, PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P7,PIN_ALL16);
MAP_GPIO设置输出引脚(GPIO_PORT_P8, PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P8,PIN_ALL16);
MAP_GPIO设置输出引脚(GPIO_PORT_P9, PIN_ALL16);
MAP_GPIO_setOutputLowOnPin (GPIO端口P9,PIN_ALL16);
MAP_GPIO设置输出引脚(GPIO_PORT_P10, PIN_ALL16);
MAP_GPIO_setOutputLowOnPin(GPIO_PORT_P10, PIN_ALL16);
}
我调用这些函数的计划:
在main.c.
/*
主功能
*/
int main (void)
{
/*停止计时器*/
MAP_WDT_A_HoldTimer();
/*禁用主中断*/
MAP_Interrupt_DisableMaster();
/*启用FPU,并启用延迟堆叠,以便在ISR中执行浮点操作*/
MAP_FPU_enableModule();
MAP_FPU_enableLazyStacking();
/*初始化系统时钟和GPIO引脚*/
Clock_Init();
GPIO初始化();
/*启用在ISR退出时休眠,并启用主中断*/
MAP_Interrupt_enableSleepOnIsrExit();
MAP_Interrupt_enableMaster();
/*运行应用程序*/
APPS_Run();
返回1;
}
在applications.c.
/*
运行应用
程序*/
void Apps_Run (void)
{
/*首先运行主应用程序*/
App_Main_Init();
App_Main_Run();
}
-在app_main.c中
/*
运行主应用
程序*/
void App_Main_Run (void)
{
同时(1)
{
/*进入睡眠状态*/
MAP_PCM_GotoLPM0();
}
}
是否有人在这种情况下有经验? 请帮帮我。
感谢您的参与。
