亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? msp430dayii_democ.c

?? MSP430小制作,精美紀念表
?? C
?? 第 1 頁 / 共 2 頁
字號:
  Temp_slope_ram = Temp_slope;          // Make RAM copy of Temp slope value
  Temp_offset_ram = Temp_offset;        // Make RAM copy of Temp offset value

}

void getTemp(void)
{
  ADC12CTL0 &= ~ENC;                    // Clear ENC first
  ADC12CTL0 = SHT0_15 + REFON + ADC12ON;
  ADC12MCTL0 = INCH_10 + SREF_1;        // Sample channel 10 using internal reference
  TACTL = TASSEL0 + TACLR + MC1;        // TACLK = ACLK, 16-bit up-mode
  CCR1 = 1500;                          // Delay to allow Ref to settle
  CCTL1 = CCIE;                         // Compare-mode interrupt
  LPM3;                                 // Wait for delay
  ADC12CTL0 |= ENC + ADC12SC;           // Start conversion
  LPM3;                                 // Wait for conversion completion
  ADC12CTL0 &= ~ENC;                    // Clear ENC first
  ADC12CTL0 = 0;                        // Turn-off ADC12
    
  tempF = (((long) ADC12MEM0 * Temp_slope_ram) / 4096 - Temp_offset_ram); 
}

void displayTemp(void)
{
  clearLCD();
  
  if( unitMode == ENGLISH )
  {
    displayValue(tempF, 2);
    LCDM7 = char_gen[15];               // Display "F' 
    LCDM6 = char_gen[13];               // Display degree
  }
  else
  {
    tempF -= 32;
    tempF *= .5555;                     // 5/9
        
    displayValue(tempF, 2);
    LCDM7 = char_gen[12];               // Display "C"
    LCDM6 = char_gen[13];               // Display degree
  } 
}

void displayTime(void)
{
  LCDM7 = 0;
    
  LCDM6 = char_gen[seconds&0x0f];
  LCDM5 = char_gen[(seconds>>4)&0x0f]+char_gen[16];
    
  LCDM4 = char_gen[minutes&0x0f];
  LCDM3 = char_gen[(minutes>>4)&0x0f]+char_gen[16];
    
  LCDM2 = char_gen[hours&0x0f];
  if( hours & 0x10 )
  {
    LCDM1 = char_gen[1];
  }
  else
  {
    LCDM1 = 0;
  }
}

void displayValue( int value, int stop )
{
  int i;
  int sign = 0;
  if( value < 0 )
  {
    value = ~value +1;
    sign = 1;
  }
  i = 6-stop;
  while( value > 9 )
  {
    LCD[i] = char_gen[value%10];
    value = value/10;
    i--;
  }
  LCD[i] = char_gen[value];
  if( sign )
  {
    LCD[i-1] = char_gen[17];
  }
}

void incHours (void)
{    
  hours = __bcd_add_short(hours, 0x01);
  
  if (hours == 0x13)
    hours = 0x01;                       // If hrs transition is 12 to 13, hrs = 1

}

void incMinutes(void)
{    
  minutes = __bcd_add_short(minutes, 0x01);
  if (minutes == 0x60)
  {
    minutes = 0;
    incHours();
  }  
}

void decMinutes(void)
{
  if( (--minutes & 0x0f) == 0x0f )
  {
    minutes = (minutes & 0xf0)+0x09;
    if( minutes == 0xf9 )
    {
      minutes = 0x59;
      if( --hours == 0x00)
      {
        hours = 0x12;
      }
      else if( hours == 0x0f )
      {
        hours = 0x09;
      }
    }
  }

}


void clearLCD(void)
{
  int i;
  for( i = 0; i < 20; i++ ){
    LCD[i] = 0;
  }
}

void changeUnitMode(void)
{

  unitMode ^= 1;                        // Toggle between 1 and 0
  clearLCD();
  if(unitMode == METRIC)
  {
    LCDM7 = char_gen[12];               // Display degrees C for indication
    LCDM6 = char_gen[13];
  }
  else
  {
    LCDM7 = char_gen[15];               // Display degrees F for indication
    LCDM6 = char_gen[13];
  }
}


void flash_write(word* address, int data)// Write the (integer) data to the addressed flash
{ 
  word gie = _BIC_SR(GIE) & GIE;        // Disable interrupts

  FCTL3 = FWKEY;                        // Unlock the flash
  FCTL1 = FWKEY + WRT;                  // Enable flash write
  *address = data;                      // Write the data to the flash
  FCTL1 = FWKEY;                        // Disable flash write
  FCTL3 = FWKEY + LOCK;                 // Lock the flash
  _BIS_SR(gie);                         // Restore interrupts (to previous state)
}

void flash_erase(word* address)         // Erase the addressed flash segment
{
  word gie = _BIC_SR(GIE) & GIE;        // Disable interrupts
  
  FCTL3 = FWKEY;                        // Unlock the flash
  FCTL1 = FWKEY + ERASE;                // Enable flash segment erase
  *address = 0;                         // Erase the flash segment
  FCTL1 = FWKEY;                        // Disable flash segment erase
  FCTL3 = FWKEY + LOCK;                 // Lock the flash
  _BIS_SR(gie);                         // Restore interrupts (to previous state)
}

// Basic Timer interrupt service routine
#pragma vector=BASICTIMER_VECTOR
__interrupt void bt_isr(void)
{ 
  seconds = __bcd_add_short(seconds, 0x01);
  if( seconds == 0x60 )
  {
    seconds = 0;
    minutes = __bcd_add_short(minutes, 0x01);
    if( minutes == 0x60 )
    {
      minutes = 0;
      hours = __bcd_add_short(hours, 0x01);
      if( hours == 0x13 )
      {
        hours = 0x01;
      }
    } 
  }

  LPM3_EXIT;                            // Exit LPM3 mode on return
}


#pragma vector=PORT2_VECTOR
__interrupt void p2_isr(void)
{ unsigned volatile int i;

  for (i = 0x3000; i>0 ; i--);          //Debounce
  
  if( (~P2IN & PB_TEMP)&&(P2IFG&PB_ALT) )//If temp button held, and alt button pressed...
  {
    incMinutes();
    tempModeTime = 0;
    displayTime();
    P1OUT &= ~0x01;
  }
  else if( (~P2IN & PB_ALT)&&(P2IFG&PB_TEMP) )//If alt button held, and temp button pressed...
  {

    unitMode ^= 1;                      // Toggle between 1 and 0
    incHours();
    displayTime();
    tempModeTime = 0;
    P1OUT &= ~0x01;
    held_down = 0;
  }
  else if ( tempModeTime > 0 && P2IFG & PB_TEMP ){
    LCDCTL &= ~LCDON;
    lcdOffModeTime = LCD_OFF_TIME;
    tempModeTime = 0;
  }
  else if( P2IFG & PB_TEMP )            // If temp button pressed, start displaying temp
  {         
    tempModeTime = MODE_TIME;
  }
  
  else if ( P2IFG & PB_ALT )            // If alt button pressed, toggle degrees C & F
  {        
    changeUnitMode();
  }
  
  P2IFG = 0;
}

#pragma vector=ADC_VECTOR
__interrupt void adc_isr(void)
{
  ADC12IFG &= ~BIT0;                    // Clear MEM0 interrupt flag
  LPM3_EXIT;                            // The ADC value is available in ADC12MEM0
}

enum
{
  NO_INT = 0,
  CC1_INT = 2,
  CC2_INT = 4,
  TA_INT = 10
};

#pragma vector=TIMERA1_VECTOR
__interrupt void ta1_isr(void)
{
  switch (TAIV)
  {
    case NO_INT: break;
    case CC1_INT: TACTL = 0; break;     // Disable TimerA
    case CC2_INT: break;
    case TA_INT: break;
    default: break;
  }
  LPM3_EXIT;                            // Exit LPM3 on return
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品一区二区在线观看| 欧美日韩亚洲综合在线| 欧美性猛交一区二区三区精品| 欧美精品成人一区二区三区四区| 日本一区二区高清| 免费成人在线视频观看| 日本精品免费观看高清观看| 久久久久成人黄色影片| 奇米精品一区二区三区四区| 91麻豆国产在线观看| 久久久高清一区二区三区| 天堂蜜桃91精品| 91成人国产精品| 欧美国产禁国产网站cc| 激情文学综合插| 91精品啪在线观看国产60岁| 亚洲人成精品久久久久| 成人av资源在线观看| 2023国产一二三区日本精品2022| 日本不卡视频在线观看| 欧美日韩午夜在线| 亚洲一区二区三区在线播放| 成人激情图片网| 国产精品人成在线观看免费| 国产一区二区在线免费观看| 日韩欧美一区在线观看| 日韩高清电影一区| 91精品国产丝袜白色高跟鞋| 婷婷久久综合九色综合伊人色| 91九色最新地址| 亚洲一区二区三区四区五区黄| 91色九色蝌蚪| 亚洲一区二区三区不卡国产欧美 | 美女脱光内衣内裤视频久久网站 | 婷婷国产v国产偷v亚洲高清| 色综合婷婷久久| 亚洲黄一区二区三区| 色香蕉久久蜜桃| 有坂深雪av一区二区精品| 99综合电影在线视频| 一区精品在线播放| 色吊一区二区三区| 五月综合激情日本mⅴ| 在线电影一区二区三区| 乱一区二区av| 国产精品网站在线观看| 91精彩视频在线观看| 亚洲成人激情社区| 精品国产一区二区三区久久影院| 国产一区日韩二区欧美三区| 国产三级精品三级| 91在线观看美女| 日产国产高清一区二区三区| 久久综合久色欧美综合狠狠| 成人免费高清视频在线观看| 亚洲麻豆国产自偷在线| 欧美日韩在线不卡| 国模少妇一区二区三区| 亚洲欧美日韩人成在线播放| 555夜色666亚洲国产免| 国产精品一区二区黑丝| 一区二区日韩电影| 精品卡一卡二卡三卡四在线| 从欧美一区二区三区| 亚洲丰满少妇videoshd| 久久综合久久综合亚洲| 日本韩国视频一区二区| 久久99精品久久久久久动态图| 国产精品美女久久久久久| 69p69国产精品| 99久久国产综合精品女不卡| 日韩av在线播放中文字幕| 国产精品免费免费| 制服丝袜亚洲播放| 成人丝袜视频网| 日韩成人免费看| 亚洲色图欧洲色图婷婷| 欧美成人福利视频| 欧美色图天堂网| 成人动漫一区二区| 黄色资源网久久资源365| 亚洲精品视频在线观看免费| xvideos.蜜桃一区二区| 欧美日韩国产片| 99久久精品一区二区| 精品亚洲国产成人av制服丝袜| 夜夜亚洲天天久久| 欧美激情一区二区三区在线| 欧美久久高跟鞋激| 色综合天天综合给合国产| 国产精品1024久久| 久久精品国产99国产精品| 亚洲一区二区三区四区在线| 国产精品久99| 国产欧美日韩在线| 精品精品欲导航| 欧美一区二区三区视频在线| 欧美日韩一区国产| 91蝌蚪porny| aaa亚洲精品| 国产成人夜色高潮福利影视| 麻豆精品在线看| 日韩不卡一二三区| 性做久久久久久| 久久91精品久久久久久秒播| 亚洲一区在线观看免费观看电影高清 | 久久久99精品久久| 欧美一区二区人人喊爽| 91亚洲精品一区二区乱码| 成人国产电影网| 国产大片一区二区| 国产精品亚洲午夜一区二区三区| 麻豆精品视频在线| 麻豆国产91在线播放| 日本大胆欧美人术艺术动态| 日韩中文字幕亚洲一区二区va在线| 亚洲国产一区在线观看| 亚洲国产欧美在线| 五月天视频一区| 日韩黄色片在线观看| 日韩电影免费一区| 经典三级在线一区| 国产成人亚洲精品青草天美 | 精品写真视频在线观看| 久久精品国产成人一区二区三区| 久久精品二区亚洲w码| 精品亚洲国产成人av制服丝袜| 国产一区二区在线视频| 国产aⅴ综合色| 色婷婷综合五月| 欧美精品日韩一本| 欧美刺激午夜性久久久久久久| www国产精品av| 中文字幕一区在线观看视频| 亚洲人成精品久久久久久| 亚洲一区二区综合| 久久国产精品第一页| 成人黄色片在线观看| 91国偷自产一区二区使用方法| 欧美日韩www| 久久久蜜桃精品| 亚洲激情图片一区| 美国十次综合导航| 成人免费毛片aaaaa**| 欧亚洲嫩模精品一区三区| 91精品国产手机| 中文字幕亚洲成人| 美国毛片一区二区三区| 成人手机在线视频| 欧美精品在线观看一区二区| 26uuu亚洲| 亚洲在线视频一区| 国产一区二区三区电影在线观看| 99re这里都是精品| 精品奇米国产一区二区三区| 亚洲视频一区在线| 国产在线视频一区二区| 91久久奴性调教| 久久久99免费| 视频在线观看91| 成人激情动漫在线观看| 日韩限制级电影在线观看| 亚洲人成网站色在线观看| 国产一区二区视频在线| 欧美丰满美乳xxx高潮www| 中文一区二区在线观看| 视频一区二区国产| 色综合视频一区二区三区高清| 26uuu国产日韩综合| 午夜视黄欧洲亚洲| 91免费看视频| 欧美国产一区在线| 国产一区二区女| 欧美一区二区三区不卡| 亚洲最大的成人av| 成人免费精品视频| 久久嫩草精品久久久精品一| 五月婷婷色综合| 91麻豆swag| 1024亚洲合集| 99免费精品在线观看| 国产精品伦一区| 国产成人自拍网| 欧美mv日韩mv| 毛片av一区二区| 欧美一级理论性理论a| 亚洲主播在线播放| 色噜噜偷拍精品综合在线| 亚洲欧洲性图库| 风间由美性色一区二区三区| 久久综合九色综合欧美亚洲| 免费在线观看成人| 日韩午夜在线影院| 免费成人在线影院| 日韩一卡二卡三卡四卡| 麻豆一区二区三| 欧美videofree性高清杂交| 六月丁香综合在线视频| 日韩一级二级三级| 国内一区二区视频|