⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.c

📁 LT-1B msp430 程序原理图集合
💻 C
字号:
/**********************************************
程序功能:在数码管上逐次显示数字0~9和字母A~F
-----------------------------------------------
测试说明:观察数码管显示
***********************************************/
#include  <msp430x14x.h>
#include  "BoardConfig.h"

//数码管7位段码:0--f
uchar scandata[16] = {0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,
                      0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
//记录显示位数的全局变量
uchar cnt = 0;

/********************主函数********************/
void main(void)
{
    WDTCTL = WDT_ADLY_1000;       // 设置内部看门狗工作在定时器模式,1000ms中断一次
    IE1 |= WDTIE;                 // 使能看门狗中断
    
    BoardConfig(0x88);            //打开数码管,关闭流水灯和电平转换
  
    P4DIR = 0xff;                 //设置P4,P5的IO方向为输出
    P5DIR = 0xff;                 
  
    P4OUT = 0x00;                 //设置P4,P5的输出初值
    P5OUT = 0x00;
  
    _BIS_SR(LPM3_bits + GIE);     //CPU进入LPM3低功耗模式,同时打开全局中断
}

/*******************************************
函数名称:watchdog_timer
功    能:看门狗中断服务函数,在这里输出数码管的
          段选和位选信号
参    数:无
返回值  :无
********************************************/
#pragma vector=WDT_VECTOR
__interrupt void watchdog_timer(void)
{ 
    P4OUT = scandata[cnt];        //输出段选信号 
    cnt++;                        //位计数变量在0~5之间循环
    if(cnt == 16) cnt = 0;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -