MSP430G2:低功耗模式下的IO学习

发布者:真诚友爱最新更新时间:2013-01-16 来源: 21IC 关键字:MSP430G2  低功耗模式  IO学习 手机看文章 扫描二维码
随时随地手机看文章

MSP430最大的特点是超低功耗,本次学习的是超低功耗模式下的IO操作。

/**********************************************************

* 超低功耗频率 1.5KHZ

* P1.0有1/100的周期激活

* 超低功耗的范例

* ACLK = VL0, MCLK = VLO/8 ~1.5kHz, SMCLK = n/a,主时钟选择超低功耗,超低频率的内部晶振的8分频,

* VLO:Internal Very-Low-Power Low-Frequency Oscillator 内部的超低功耗,低频率振荡器

* BCSCTL3 是 Basic clock system control 3 ,Mode 2 for LFXT1。

* 选择模式2

* IFG1:SFR interrupt flag 1(Special Function)

* INTERRUPT SOURCE:Oscillator fault 晶振错误标志位

* INTERRUPT FLAG:OFIFG

* DCO:digitally controlled oscillator 数字信号控制的晶振

* BCSCTL2 :Basic clock system control 2

* SELM_3:MCLK Source Select 3: LFXTCLK

* DIVM_3:MCLK Divider 3: /8 MCLK时钟8分频

* MCLK: Main clock 主时钟

* SCG1 + SCG0都是状态标志位

* LFXT1:Low Frequency XT1 (低频晶振1)

***************************************************************/

#include //MSP430G2231头文件

/**********************************************

* Function name: main

* Descriptions: 主函数

* input parameters: 无

* output parameters: 无

* Returned value: 无

* 超低功耗模式下的IO端口操作

**************************************************************/

void main(void)

{

volatile unsigned int i; // Volatile to prevent removal

WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer 禁止看门狗

BCSCTL3 |= LFXT1S_2; // LFXT1 = VLO ,低频晶振选择内部的超低功耗,超低频率晶振。

IFG1 &= ~OFIFG; // Clear OSCFault flag,清除晶振错误标志位

__bis_SR_register(SCG1 + SCG0); // Stop DCO 禁止数控晶振

BCSCTL2 |= SELM_3 + DIVM_3; // MCLK = LFXT1/8 主时钟源选择LFXT1,分频系数选择8分频。

P1DIR = 0xFF; // All P1.x outputs 所有的P1端口都设置为输出

P1OUT = 0; // All P1.x reset P1端口值都清零

P2DIR = 0xFF; // All P2.x outputs 所有的P1端口都设置为输出

P2OUT = 0; // All P2.x reset P2端口值都清零

for (;;) // 主循环

{

P1OUT |= 0x01; // P1.0 set P1.0置位

for (i = 10; i > 0; i--); // Delay 1x 延时

P1OUT &= ~0x01; // P1.0 reset P1.0清零

for (i = 1000; i > 0; i--); // Delay 100x 延时

}

}

关键字:MSP430G2  低功耗模式  IO学习 引用地址:MSP430G2:低功耗模式下的IO学习

上一篇:MSP430f149端口功能及设置
下一篇:MSP430单片机的3种时钟信号

推荐阅读最新更新时间:2024-03-16 13:16

MSP430F149学习IO端口
一 ,IO端口 MSP430F149,TI公司超低功耗16位单片机,具有6组独立IO口,每组8位,共48个IO口,64个引脚。 二 ,IO口寄存器 1.端口特点 其中P0,P1口具有三种功能:I/O、中断功能、其他外设功能。 其余端口就只有I/O、其他外设端口。 2.IO口常用寄存器 2.1端口控制寄存器PxDIR 2.2 端口输入寄存器 2.3 端口输出寄存器 2.4 功能引脚选择位 2.5 中断标志位寄存器 2.6 中断允许寄存器 2.7 中断触发方式寄存器 time to update,,,,,,,,,,,,,
[单片机]
MSP430F149<font color='red'>学习</font>之<font color='red'>IO</font>端口
MSP430单片机的5种低功耗模式
5种低功耗模式分别为LPM0~LPM4(LOW POWER MODE),CPU的活动状态称为AM(ACTVE MODE)模式。其中AM耗电最大,LPM4耗电最省,仅为0.1uA。另外工作电压对功耗的影响:电压越低功耗也越低。 系统PUC复位后,MSP430进入AM状态。在AM状态,程序可以选择进入任何一种低功耗模式,然后在适当的条件下,由外围模块的中断使CPU退出低功耗模式,返回AM模式,再由AM模式选择进入相应的低功耗模式,如此类推。 工作模式的选择由状态寄存器SR中的SCG1、SCG0、OSCOFF、CPUOFF位控制。由于在CPU的头文件中对CPU内的各寄存器和模块的各种工作模式都作了详尽的定义,所以编程时尽可能的利用就
[单片机]
stm32l051低功耗之stop模式
STM32L051算是一款使用的人不多的低功耗芯片,资料也没有像F系列那么多,但是它在低功耗方面性能优异。ST官方关于STM32L051停机模式低功耗给的指标如下,在stop without rtc模式下电流消耗能达到0.4ua,在stop with rtc模式下电流消耗能达到0.8ua。 在进入停机模式之前,按照ST官方例程,首先对引脚进行配置,设置成模拟输入状态。 void stop_mode_config(void)
[单片机]
stm32l051<font color='red'>低功耗</font>之stop<font color='red'>模式</font>
STM32F1低功耗模式
很多应用场合对于功耗的要求很严格,比如长期无人照看的数据采集仪器,可穿戴设备等。其实很多 MCU都有相应的低功耗模式,以此来降低设备运行时的功耗,进行裸机开发的时候就可以使用这些低功耗模式。 但是现在我们要使用操作系统,因此操作系统对于低功耗的支持也显得尤为重要,这样硬件与软件相结合,可以进一步降低系统的功耗。 这样开发也会方便很多,毕竟系统已经原生支持低功耗了,我们只需要按照系统的要求来做编写相应的应用层代码即可。FreeRTOS 提供了一个叫做Tickless 的低功耗模式。 STM32F1 低功耗模式 STM32 本身就支持低功耗模式,共有三种低功耗模式: ● 睡眠(Sleep)模式。 ● 停止(Stop)模式。 ●
[单片机]
STM32F1<font color='red'>低功耗</font><font color='red'>模式</font>
学习通用IO与外部中断
MSP430f5438有12组通用IO分别是从1到J,能作为外部中断引脚的只有P1和P2两个引脚;对于控制寄存器有下列几种: PxIN是输入寄存器, PxOUT是输出寄存器 PxDIR是输入与输出方向配置寄存器 PxREn 是下拉下拉寄存器 PxDS 是驱动增强与减弱寄存器 PxSEL是功能选择寄存器 PxIES是中断触发方式寄存器 PxIE是中断允许寄存器 PxIFG是中断标志寄存器 中断配置如下: /**********************************************************************/ //外部中断优先级没有软件配置。端口0最高
[单片机]
STM32F103C8T6低功耗测试(待机模式
只测试了待机模式,待机模式实现系统的最低功耗。 原理图如下,一开始全部焊接了,其中S2用来进入待机,S1用来唤醒 测试程序为: #include stm32f10x.h #include system_stm32f10x.h v oid Sys_Standby(void) { RCC_APB1PeriphClockCmd(RCC_APB1Periph_PWR, ENABLE); //使能PWR外设时钟 PWR_WakeUpPinCmd(ENABLE); //使能唤醒管脚功能 PWR_EnterSTANDBYMode(); //进入待机(standby)模式 } //系统进入待机模式
[单片机]
STM32F103C8T6<font color='red'>低功耗</font>测试(待机<font color='red'>模式</font>)
低功耗模式下如何用看门狗监控程序跑飞
一、看门狗简介 1、看门狗可用来当定时器计时,也可用来防止程序跑死。主要对应到两种工作模式,定时器模式和看门狗模式。 2、MSP430默认看门狗模式打开,因此一般在程序初始化前,会用到指令“WDTCTL = WDTPW + WDTHOLD”关闭看门狗模式,不然程序会一直超时重启。 3、如果想启用看门狗的定时器功能或看门狗超时复位功能,则需要对看门狗进行重新设置,以下将详细介绍。 二、定时器模式 1、设置成定时器模式时,超时溢出后,会进入看门狗中断函数。这样就可以当定时器用了。 2、注意当设置成定时器模式,计时溢出后,只进入看门狗中断函数,不会软重启MCU。溢出后自动重新计时。 3、设置成定时器模式,可以根据选择的时钟源和分频参
[单片机]
<font color='red'>低功耗</font><font color='red'>模式</font>下如何用看门狗监控程序跑飞
使用MSP430G2单片机的PWM模块控制LED指示灯的亮度
本篇文章是MSP430G2 LaunchPad系列教程的一部分,我们正在学习使用德州仪器的MSP430G2 LaunchPad开发板。到目前为止,我们已经学习了开发板的基础知识,并介绍了如何读取模拟电压以及使用MSP430G2进行连接LCD等。现在我们继续了解MSP430G2单片机中的PWM模块。我们将通过改变电位器来控制LED的亮度,因此,将电位器连接到MSP430的模拟引脚,然后读取其模拟电压,因此建议在继续学习之前先了解ADC的文章。 什么是PWM信号? 脉宽调制(PWM)是控制电路中最常用的数字信号。该信号以预定的时间和速度设置为高电平(3.3v)和低电平(0v)。信号保持高电平的时间称为“开启时间”,信号保持低电平的
[单片机]
使用<font color='red'>MSP430G2</font>单片机的PWM模块控制LED指示灯的亮度
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved