p162_s1.c
来自「msp430开发版程序」· C语言 代码 · 共 33 行
C
33 行
//例:设ACLK=n/a,MCLK=SMCLK=TACLK=DCO≈800kHz,将P5.1每隔50000个DCO/SMCLK周期取反,产生一个频率为16Hz的方波。P162
//程序代码如下:
/*
将8路的发光二极管电路板接到P5口上观看运行效果
*/
//#include <msp430x44x.h>
#include <msp430x14x.h> //使之针对MSP430F14X系列单片机
void main(void)
{
WDTCTL = WDTPW + WDTHOLD; //停止看门狗
TACTL = TASSEL1 + TACLR; //时钟源SMCLK,清除TAR
CCTL0 = CCIE; //CCTR0中断使能
CCR0 = 50000;
P5DIR |= 0x02; //P5.1输出
TACTL |= MC1; //启动Timer_A工作于连续计数模式
_EINT(); //使能系统中断
for(;;)
{
_BIS_SR(CPUOFF); //CPU关闭
_NOP();
}
}
//Timer A0中断服务程序
#pragma vector=TIMERA0_VECTOR
__interrupt void Timer_A (void)
{
P5OUT ^= 0x02; //取反P5.1
CCR0 += 50000; //CCR0置入计数值
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?