![](https://csdnimg.cn/release/download_crawler_static/86635294/bg1.jpg)
使用高频晶振:
LED 控制.h 文件:
#define LED_OE P8DIR|=BIT2+BIT3+BIT4+BIT5
#define LED_black P8OUT&=~(BIT2+BIT3+BIT4+BIT5)
#define LED0_ON_OFF P8OUT^=BIT2
#define LED1_ON_OFF P8OUT^=BIT3
#define LED2_ON_OFF P8OUT^=BIT4
#define LED3_ON_OFF P8OUT^=BIT5
#define LED0_ON P8OUT|=BIT2
#define LED0_OFF P8OUT&=~BIT2
#define LED1_ON P8OUT|=BIT3
#define LED1_OFF P8OUT&=~BIT3
#define LED2_ON P8OUT|=BIT4
#define LED2_OFF P8OUT&=~BIT4
#define LED3_ON P8OUT|=BIT5
#define LED3_OFF P8OUT&=~BIT5
extern void LED_init(void);
LED 控制.c 文件:
#include "msp430f2616.h"
#include "LED 控制.h"
void LED_init(void)
{
LED_OE;
LED_black;
}
定时器设置.h 文件:
extern void TA_init();
定时设置.c 文件:
#include"msp430f2616.h"
//*******************************************************
//=======================================================
//函数名:void init_TA()
//输入参数:无
//输出参数:无
//作用:对两个定时器进行基本设置 对所用端口初始化
//连续计数时和 51 很像,TAR 计到 0xFF 时溢出中断
//=======================================================
//*******************************************************
void TA_init()
{
TACTL=TASSEL_2+MC_1+ID_0; //TA 时 钟 是 SMCLK, 增 计 数 模 式 , 不 分 频 6MHZ
1/6us
TACCR0=60000; // 初值设置为 60000 定时 10ms