msp430定时器A、B与联调

发布者:码字狂徒最新更新时间:2014-12-23 来源: 51hei关键字:msp430  定时器  联调 手机看文章 扫描二维码
随时随地手机看文章
#include   //130731调试通过
typedef unsigned char uchar; 
typedef unsigned int  uint; 
unsigned char i = 0,j = 0; 
void DelayMs(unsigned int ms)
{
  unsigned char j;
  while(--ms)
  {
    for(j=130;j>0;--j);
//      _NOP();
  }
}
/***** 定时器A 初使化 *******/
void TimerA_Init(void)
{
    CCTL0 = CCIE;                   //使能CCR0中断 
    CCR0 = 5000; 
    TACTL = TASSEL_2 + ID_0 + MC_1; //定时器A的时钟源选择SMCLK,增计数模式 
}
/**** 定时器B 初使化 *****/
void TimerB_Init (void)
{
    TBCCTL0 = CCIE; // INTERRUPT ENABLE
    TBCCR0 = 5000; // 
    TBCTL = TBSSEL_2 + ID0 + MC_1; //ID_2 + ID1 +     
}
void SystemInit(void)
{
//    WDTCTL = WDTPW + WDTHOLD;       //关闭看门狗 
/*    DCOCTL |= 0xE0;
    BCSCTL1 &= 0x00;
    BCSCTL1 |= 0x47;
    BCSCTL2 &= 0x00;
    BCSCTL2 |= 0x88;*/
    P2DIR = 0xff;                   //设置P2口方向为输出 
    P2OUT = 0x00; 
    P5DIR = BIT4;                   //设置P6口方向为输出 
    P5OUT = BIT4; 
    P1DIR = BIT1;                   //设置P6口方向为输出 
    P1OUT &= ~BIT1; 
}
void Wdt(void)
{
    WDTCTL |= WDTPW | WDT_MDLY_8;//以SMCLK进行32ms的延迟
    IE1 |= WDTIE; // 开WDT中断
}
void main(void) 
    SystemInit();
    TimerA_Init();
    TimerB_Init(); 
    Wdt();
    _EINT();                        //使能全局中断 
    for(;;)
    {      
      P5OUT ^= BIT4;
      DelayMs(200);
      __low_power_mode_4(); // 进入LPM4模式
    }
/******************************************* 
函数名称:Timer_A  
功    能:定时器A的中断服务函数,在这里通过标志 
          控制流水灯的流动方向和流动速度 
参    数:无 
返回值  :无 
********************************************/ 
#pragma vector = TIMERA0_VECTOR 
__interrupt void Timer_A (void) 
{   
  if(i++ >19)
  {
    i=0;
    P2OUT ^= 0xF0;
  }
/****** 定时器B 中断处理 ***********/
#pragma vector = TIMERB0_VECTOR
__interrupt void Timer_B0 (void)
{
  if(j++ > 5)
  {
    j = 0; 
    P2OUT ^= 0x0F;
//    __low_power_mode_off_on_exit(); // 退出低功耗模式
  }
}
/****** 看门狗 中断服务子程序***********/
#pragma vector = WDT_VECTOR
__interrupt void WDT_IRQ(void)
{
  __low_power_mode_off_on_exit(); // 退出低功耗模式
  P1OUT ^= BIT1;// 对引脚取反
}
关键字:msp430  定时器  联调 引用地址:msp430定时器A、B与联调

上一篇:msp430定时器A自动溢出
下一篇:PIC16F877定时器0的查询方式调试

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

基于MSP430和NRF2401的WSN节点设计
   0 引 言   无线传感器网络WSN(wireless sensor network)是一种自组织网络,它由大量低成本、资源有限的传感节点设备组成,节点间协同工作实现某一特定任务。由于无线传感网络所具有的易扩展、自组织、分布式结构和实时性的特点,无线传感网络的应用已经由军事领域扩展到其他许多领域,例如环境监测、气候监测、目标追踪、工业自动化等方面,此外还为未来的远程医疗和空间探索提供了很大的应用空间。   无线传感器网络体系结构如图1所示,通常包括传感器节点、汇聚节点(sinknode)、外部网络和用户界面。大量传感器节点随机部署在感知区域(SensoRField)内部或附近,能够通过自组织方式构成网络,传感器节点将采集
[单片机]
MSP430fr6989的串口DMA发送实验例程(从0写起,亲测可玩)
本例子选择MSP430fr6989的P2.0与P2.1作为串口UCA0TXD UCA0RXD ;(代码不多,主要对寄存器的操作,急于求成都写在main.c文件,做工程不建议这样做) 主要用到这两个寄存器: DMACTL0用于选择DMA通道;比如ADC12,串口 ,IIC,SPI,此处多说一句:DMA是一种方式,而SPI,IIC,串口等属于外设,两者不是一类概念,嘿嘿嘿 DMAxCTL用于DMA详细设置;此为重点!!!DMAxCTL包括: DMADT:选择传输方式是一个单字节还是一个块transfer;本例子选简单的单字节transfer; DMADSTINCR:分解单词DMA dest increase 即数据
[单片机]
关于MSP430的时钟问题的简介
  单片机上电后,如果不对时钟系统进行设置,默认800 kHz的DCOCLK为MCLK和SMCLK的时钟源,LFXTl接32768 Hz晶体,工作在低频模式(XTS=O)作为ACLK的时钟源。CPU的指令周期由MCLK决定,所以默认的指令周期就是1/800 kHz= 1 .25μs。要得到lμs的指令周期需要调整DCO频率,即MCLK=1 MHz,只需进行如下设置:BCSCTLl=XT20FF+RSEL2;   //关闭XT2振荡器,设定DCO频率为1 MHz   DCOCTL=DCO2   //使得单指令周期为lμs   MSP430的时钟周期(振荡周期)、机器周期、指令周期之间的关系   通用知识时钟周期也称为振荡周期:定义为
[单片机]
MSP430 G2553 单片机 串口 测试 调试
MSP430G2553 单片机 只有一个串口,初始化后即可使用。 板子插电脑上有这2个,上面一个用于串口通信,下面一个用于程序下载。 打开串口调试助手即可看到:
[单片机]
<font color='red'>MSP430</font> G2553 单片机 串口 测试 调试
蓝牙和MSP430音频信宿设计
描述 TI 的蓝牙 + MSP430 音频散热器参考设计可供客户用于创建各种低端、低功耗音频解决方案的应用。一些可能的应用 - 玩具、低端蓝牙扬声器、音频播放配件。此参考设计是一种经济实惠的音频实施方案,通过参考其提供的完整设计文件,您可以将重心转移到应用和最终产品开发工作上。此参考设计支持的软件包括 Stonestreet One Bluetopia 蓝牙堆栈(经过认证且免专利费)。 特性 凭借最低成本、最低功耗的 MSP430F5229 实现蓝牙音频功能(SBC 编码/解码) 设计中将音频处理任务从 MCU 转移到蓝牙器件,从而实现低功耗音频 这种经济高效的低端无线音频解决方案,采用 4 层布局和 QFN 封装 此解决方案
[单片机]
蓝牙和<font color='red'>MSP430</font>音频信宿设计
MSP432笔记——TIM定时器中断
使用driverlib库函数 以TA3为例 前期配置 时钟源 信号源 电压等级 flash //Flash FlashCtl_setWaitState(FLASH_BANK0,1); FlashCtl_setWaitState(FLASH_BANK1,1); //PCM state PCM_setPowerState(PCM_AM_LDO_VCORE1); //CS configure CS_setDCOCenteredFrequency(CS_DCO_FREQUENCY_48); 配置定时器 Config 参数配置结构体 config 开始定时器 start 使能定时器中断 (清空标志位、打开
[单片机]
msp430g2553的adc采样精度问题
问题:用官方例程进行ad采样发现直流采样值非常抖,只有百位上数值不抖。 解决:1,ad采样须考虑采样基准电压稳不稳,对于2553来说,其基准电压可以设置为内部1.5v,2.5v,vcc。或者外部基准电压(0-vcc)。 2,采样频率,一般来说极高采样频率与极高准确度不可兼得。采样频率太高很可能造成电容的充电未满,对于2553只有两个采样频率50k,200k,都不算很高。对精度基本没影响。 3,采样保持时间,采样保持时间过长,电容的电荷流失得越多造成采样不准。所以采样保持时间必须得找到合适的值。对于2553采样的保持时间是与adc时钟有关的,所以adc时钟分频和采样保持时间须得联合考虑(一度只改了采样保持时间,没注意这个
[单片机]
μC/OS-II软件定时器的分析与测试
  引 言   μC/OS-II操作系统是建立在微内核基础上的实时操作系统,抢占式多任务、微内核、移植性好等特点,使其在诸多领域都有较好的应用。   在μC/OS-II 2.83及其以后的版本中,一个较大的变化就是增加了对软件定时器的支持。这使得μC/OS实时操作系统的功能更加完善,在其上的应用程序开发与移植也更加方便。在实时操作系统中一个好的软件定时器实现要求有较高的精度、较小的处理器开销,且占用较少的存储器资源。本文在对μC/OS-II定时器算法分析的基础上,对定时精度和处理器占用情况进行了分析与测试,其结果在实时系统的设计与应用中具有借鉴意义。   1 定时器实现架构   在μC/OS-II操作系统内部,任务的延时功
[测试测量]
μC/OS-II软件<font color='red'>定时器</font>的分析与测试
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

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

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