注册 登录
电子工程世界-论坛 返回首页 EEWORLD首页 频道 EE大学堂 下载中心 Datasheet 专题
fighter_DPJ的个人空间 https://home.eeworld.com.cn/space-uid-663642.html [收藏] [复制] [分享] [RSS]
日志

2015-11-27

已有 799 次阅读2015-11-27 19:58


//扩展板1S定时流水灯

#include "msp430G2553.h"
#include"TCA6416A.h"
#include"HT1621.h"
#include"LCD_128.h"

void LCD_init();
void timer_init();
void delay(int);
//************主函数***************************
void main()
{

  WDTCTL = WDTPW + WDTHOLD;          // Stop WDT
  BCSCTL1 = CALBC1_16MHZ;
  DCOCTL = CALDCO_16MHZ;
  TCA6416A_Init(); // 初始化IO扩展口
  HT1621_init(); // 初始化lcd_128
  LCD_init();
  timer_init();
  BCSCTL2 |=SELM_1+DIVM_1;
  _EINT();              //开总中断
  while(1);
}
//----------------------------------
void LCD_init()
{

LCD_DisplayDigit(0,1);

LCD_DisplayDigit(0,2);

LCD_DisplayDigit(0,3);

LCD_DisplayDigit(0,4);

LCD_DisplayDigit(0,5);

LCD_DisplayDigit(0,6);
LCD_DisplaySeg(_LCD_COLON0);
LCD_DisplaySeg(_LCD_COLON1);
LCD_DisplaySeg(_LCD_COLON2);
HT1621_Reflash(LCD_Buffer);
PinOUT(0,1);           // 指定0号管脚输出为1
// PinOUT(1,1);           // 指定1号管脚输出为0
// PinOUT(2,1);           // 指定0号管脚输出为1
// PinOUT(3,1);           // 指定1号管脚输出为0
// PinOUT(4,1);           // 指定0号管脚输出为1
// PinOUT(5,1);           // 指定1号管脚输出为0
// PinOUT(6,1);           // 指定0号管脚输出为1
// PinOUT(7,1);           // 指定1号管脚输出为0
 // P1DIR|=(1<<6); //P1.6为LED
}
//--------------------------
void timer_init()
{
  TACCR0 =2500;  //计到2500,约20ms
  TACTL |= TASSEL_2+ID_1+MC_1;
 //TASSEL_x计数器时钟源选择,x=0,外时钟TACLK,1选ACLK,2选SMCLK,3选外部时钟
// ID_x是分频选择,x=0不分频,1是2分频,2是4分频,3是8分频后(125K)
// MC_x是计数模式,x=0,停止,1是up到CCR0,2是连续到满0xffff,3增减计数,先增到CCR0,再减到0
  TACCTL0 |= CCIE;                             // CCR0 interrupt enabled
}
//--------定时器中断函数------------
#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer_A(void)
{
  //TACCTL0&=~ CCIE; //关中断
  static int cc=0;
  cc+=1;
  if(cc==50)  //1s=1000ms=20*50 定时
  {
 static unsigned char turn = 1;
turn ^= BIT0;
PinOUT(0,turn);         //指定0号管脚输出为0&1
// Calculate_NumBuff(4,5,4);
LCD_DisplayDigit(4,6);
// HT1621_Reflash(LCD_Buffer);

//  HT1621_Reflash(LCD_Buffer);
// LCD_Clear();
 cc=0;
  }

}

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

热门文章