久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 2187|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

msp430g2553

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:110821 發(fā)表于 2016-3-26 00:28 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式

#include "msp430g2553.h"
#define LATCH_OUT       P1DIR |= BIT5
#define LATCH_OUT_H     P1OUT |= BIT5
#define LATCH_OUT_L     P1OUT &=~ BIT5
#define SCK_OUT         P1DIR |= BIT4
#define SCK_OUT_H       P1OUT |= BIT4
#define SCK_OUT_L       P1OUT &=~ BIT4
#define OE_OUT          P1DIR |= BIT2
#define OE_OUT_H        P1OUT |= BIT2
#define OE_OUT_L        P1OUT &=~ BIT2
#define R1_OUT          P1DIR |= BIT1
#define R1_OUT_H        P1OUT |= BIT1
#define R1_OUT_L        P1OUT &=~ BIT1
#define G1_OUT          P1DIR |= BIT3
#define G1_OUT_H        P1OUT |= BIT3
#define G1_OUT_L        P1OUT &=~ BIT3
#define A_OUT           P2DIR |= BIT0
#define A_OUT_H         P2OUT |= BIT0
#define A_OUT_L         P2OUT &=~ BIT0
#define B_OUT           P2DIR |= BIT1
#define B_OUT_H         P2OUT |= BIT1
#define B_OUT_L         P2OUT &=~ BIT1
#define C_OUT           P2DIR |= BIT2
#define C_OUT_H         P2OUT |= BIT2
#define C_OUT_L         P2OUT &=~ BIT2
#define D_OUT           P2DIR |= BIT3
#define D_OUT_H         P2OUT |= BIT3
#define D_OUT_L         P2OUT &=~ BIT3
#include "move.h"
  void main()
{
// Stop watchdog timer to prevent time out reset ?
WDTCTL = WDTPW + WDTHOLD;
//主系統(tǒng)時(shí)鐘切換為外部高速晶振
  if (CALBC1_8MHZ == 0xFF || CALDCO_8MHZ == 0xFF)
{
while(1);// If calibration constants erased, trap CPU!!
}
    // Configure Basic Clock
     BCSCTL1 = CALBC1_8MHZ;// Set range
     DCOCTL = CALDCO_8MHZ;// Set DCO step + modulation*/ ? ?? ??? ? ?? ??
     BCSCTL3 |= LFXT1S_2; // Set LFXT1為vol時(shí)鐘即12kHZ ? ?? ??? ? ?? ??
     CCTL0|= CCIE;//設(shè)置捕獲/比較控制寄存器,CCIE=0x0010,使能捕獲比較中斷  
     CCR0 =6;//設(shè)置捕獲/比較寄存器,初始值為12000,對(duì)于ACLK時(shí)鐘頻率為12khz的頻率,相當(dāng)于1s  ? ?? ???TA0CTL = TASSEL_1 +TACLR+MC_1; // 設(shè)置定時(shí)器A控制寄存器,  ? ?
// TASSEL_1選擇輔助時(shí)鐘ACLK,TASSEL_2選擇子系統(tǒng)時(shí)鐘SMCLK,與dco有關(guān);
// TACLR=0x0004,清除定時(shí)器A計(jì)數(shù)器  ? ??
//TACTL |= MC0; //設(shè)置定時(shí)器A控制寄存器,MC0=0x0010,使計(jì)數(shù)模式為增計(jì)數(shù) P1DIR=0XFF;  
      P1OUT=0xF0;
      P2SEL=0;
      _EINT();//使能中斷,這是一個(gè)C編譯器支持的內(nèi)部過(guò)程。
      LCK_OUT;
          LCK_L;
    while(1)
{  
      for(a=0;a<32;a++)//黑屏,用于開(kāi)機(jī)狀態(tài)時(shí)刷屏,即關(guān)閉所有燈,沒(méi)有他的話開(kāi)機(jī)會(huì)全屏點(diǎn)亮 ? ?? ?? ?? ?? ?dispram[a]=Bmp[0][a];? ?? ?? ? ?
     delay(100);
     for(zi=0;zi<13;zi++)//顯示效果:向右滾屏? ?? ?? ?? ? ? ?
    rightdisplay();
     for(zi=13;zi<25;zi++)//向右移動(dòng) ? ?? ?? ??
    updisplay();
    for(zi=24;zi<33;zi++)//顯示效果:向左滾屏? ?? ?? ?? ? ? ?? ?? ??
    leftdisplay();
   for(zi=32;zi<NUM;zi++)//向右移動(dòng) ? ?? ?? ?? ?
   downdisplay();
   delay(100);//所有字顯示完了的等待時(shí)間
  }
  }
   #pragma vector=TIMER0_A0_VECTOR
  __interrupt void Timer_A (void) //定時(shí)器A的CC0中斷處理程序
{   
   row=P1OUT; //讀取當(dāng)前顯示的行號(hào) ? ?
   row++;
   row&=0x0f;//行號(hào)加1,屏蔽高4位 ? ?  ?
if(zi<13)
   toright(CHENG);
  else if(zi<25&&zi>=12)
toupdown(GREEN);  
else if(zi<33&&zi>=24)
toleft(RED);
else  
toupdown(GREEN);
P1OUT&=0xf0;//行號(hào)端口清零 ?
LCK_H;//上升沿將數(shù)據(jù)送到輸出鎖存器 ? ?
P1OUT|=row; //寫(xiě)入行號(hào) ?
LCK_L;//鎖存顯示數(shù)據(jù) }
unsigned char tab[8];
unsigned char DIS[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};//行數(shù)據(jù)
/*-----------------------------------------------
             16x16漢字取模數(shù)據(jù)
------------------------------------------------*/
unsigned char hztest[32]=    //二維數(shù)組,目的是減少運(yùn)算,可以用最基本的一維數(shù)組,每個(gè)漢字有32個(gè)字節(jié)數(shù)據(jù)
{
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
};
/*-----------------------------------------------
             向595寫(xiě)入一個(gè)字節(jié) 單紅色
------------------------------------------------*/
void InputByte( unsigned char DataR1) //寫(xiě)一個(gè)字節(jié)
{
  unsigned  char i;
   
  for(i=0; i<8; i++)
  {
    if((DataR1&0x01) == 1)
    {
      R1_OUT_L;
    }
    else
    {
      R1_OUT_H;
    }
    SCK_OUT_L;
    SCK_OUT_H;
    DataR1 = DataR1 >> 1;
  }
}
/*-----------------------------------------------
            初始化定時(shí)器,做為動(dòng)態(tài)掃描
------------------------------------------------*/
void Init_TimerA0(void)
{
  CCTL0 = CCIE;                             // CCR0 interrupt enabled
  CCR0 = 300;
  TACTL = TASSEL_2 + MC_1;                  // SMCLK, contmode
}
void main(void)
{
  WDTCTL = WDTPW + WDTHOLD;                 // Stop WDT
  P1DIR |= BIT0;                            // P1.0 output
  
  LATCH_OUT;
  SCK_OUT;
  OE_OUT;
  R1_OUT;
  G1_OUT;
  A_OUT;
  B_OUT;
  C_OUT;
  D_OUT;
   
  Init_TimerA0();  
  
  _BIS_SR(LPM0_bits + GIE);                 // Enter LPM0 w/ interrupt
  
  while(1);
}
// Timer A0 interrupt service routine
#pragma vector=TIMER0_A0_VECTOR
__interrupt void Timer_A (void)
{
  static unsigned char count,j,i;
//  unsigned char i;
   
  LATCH_OUT_L; //鎖存釋放
  
  for(j=0;j<1;j++) //取每個(gè)漢字的前2個(gè)字節(jié),數(shù)據(jù)傳輸完成后鎖存輸出即可 j表示漢字個(gè)數(shù),如果是3個(gè)漢字屏就可以修改成3
  {
    InputByte(hztest[j*32+i]);
    InputByte(hztest[j*32+i+1]);
  }
  
  OE_OUT_H;//暫時(shí)關(guān)閉屏幕,防止出現(xiàn)鬼影,如果沒(méi)有使用該引腳控制則會(huì)出現(xiàn)拖影現(xiàn)象。
  LATCH_OUT_H; //鎖存有效,此時(shí)一行的數(shù)據(jù)顯示到屏上
  P2OUT = DIS[15-count] & 0x0f;//用P2口的前4位控制16行,屏內(nèi)部通過(guò)4-16譯碼器工作,循環(huán)掃描其他15行
  OE_OUT_L;//使能
  count++;
  i+=2;              //累加調(diào)用下一行數(shù)據(jù)
  if(count==16)
    count=0;
  if(i==32)
    i=0;
}

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

手機(jī)版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧一区二区 | 激情一区 | 国产精品日韩在线 | 91精品国产综合久久福利软件 | 久久久久久黄 | 天天夜夜操 | 日韩在线电影 | 欧美天堂在线 | 丁香久久 | 先锋资源吧 | 日韩一区二区三区在线视频 | 天天天天天天操 | 99福利网| 欧美一区二区三区在线观看视频 | 欧美一区二区三区四区视频 | 视频一区中文字幕 | 国产电影一区 | 户外露出一区二区三区 | 久久大陆 | www.欧美视频 | 欧美在线视频网 | 毛片日韩| 九九热免费在线观看 | 天天操夜夜操 | 2022精品国偷自产免费观看 | 中文字幕 欧美 日韩 | 看一级黄色毛片 | 日韩av在线不卡 | 91精品国产91久久综合桃花 | 国家一级黄色片 | 日韩成人免费 | 国产一区二区三区四区五区加勒比 | 亚洲美女网站 | 中文字幕 欧美 日韩 | 午夜在线 | 范冰冰一级做a爰片久久毛片 | 久久精品亚洲精品国产欧美 | 亚洲人成一区二区三区性色 | 国产精品视频999 | 久久综合九九 | 欧美精品1区2区 |