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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? msp430x21x1_ca_06.c

?? MSP430樣例程序
?? C
字號:
//*******************************************************************************
//  MSP430x21x1 Demo - Comp_A, Slope ADC to measure temperature
//
//  Description: This example uses the slope A/D method to measure a thermistor
//  resistance and converts that resistance to temperature. The thermistor is
//  connected to pin P2.1, the reference resistor to P2.0, and the capacitor
//  to P2.3. For the measurement, the capacitor is first charged up fully.
//  Then it is discharged through the reference resistor. The capacitor voltage
//  is tied to the comparator_A's + input with it's minus input tied to the
//  .25Vcc reference of the comparator. The time for the capacitor to discharge
//  through the reference resistor to .25Vcc is measured with Timer_A. The output
//  of the comparator is used to automatically trigger a capture of the Timer_A
//  count value. The capacitor is then fully charged again and discharged through
//  the thermistor in the same way. The ratio of the two discharge times is
//  equivalent to the ratio of the two resistors (thermistor and reference).
//  Since the value of the reference resistor is known, the value of the thermistor
//  can be calculated, and therefore the temperature is known.
//  ACLK = LFXT1 = 32768, MCLK = SMCLK = default DCO
//  //* External watch crystal installed on XIN XOUT is required for ACLK *//	
//
//
//            MSP430F21x1/11x1
//            -----------------
//        /|\|              XIN|-
//         | |                 | 32kHz
//         --|RST          XOUT|-
//           |                 |
//    +-10K--|P2.0             |
//    |      |                 |
//    +-NTC--|P2.1             |
//    |      |                 |
//    +------|P2.3             |
//    |      |                 |
//   ===2.2  |                 |
//    |      |                 |
//    ------ |VSS              |
//
//  M.Mitchell / A. Dannenberg
//  Texas Instruments, Inc
//  July 2005
//  Built with Code Composer Essentials Version: 1.0
//*******************************************************************************

#include  <msp430x11x1.h>

// Define Inputs/Outputs
#define Ref    (0x01)                       // Reference resistor on P2.0
#define Sensor (0x02)                       // Thermistor on P2.1

// Global variables
unsigned int port_pin, TEMP_SOURCE;         // Temporary holder for passing port pin locations
volatile int TEMP_FTHERM;                   // TEMP_FTHERM = Thermistor temperature reading
long int REF_RES, THERM_RES;                // REF_RES = discharge count for Reference resistor
long int RTHERM;                            // THERM_RES = discharge count for Thermistor
                                            // RTHERM = Thermistor resistance value

// System Routines
void initialize(void);                      // Configure modules and control Registers
unsigned int measure_count(unsigned int);   // measure count value for Thermistor, Reference
                                            // resistor

// Temperature table: Resistance/100 values for 110 deg. F down to 10 deg. F, according
// to the values for the type of thermistor used.
const unsigned int RES_TAB[101] = {47, 48, 49, 50, 51, 52, 53, 56, 57, 58, 60 ,61, 62, 64, 65,
                           67, 68, 70, 72, 73, 75, 77, 79, 81, 82, 84, 86, 89, 91, 93,
                           95, 98, 100, 102, 105, 108, 110, 113, 116, 119, 122, 125, 128,
                           131, 135, 138, 142, 145, 149, 153, 157, 161, 165, 170, 174,
                           179, 183, 188, 193, 199, 204, 210, 215, 221, 227, 233, 240,
                           246, 253, 260, 268, 275, 283, 291, 299, 308, 316, 325, 335,
                           344, 354, 365, 375, 386, 398, 409, 422, 434, 447, 460, 474,
                           488, 503, 518, 534, 550, 567, 585, 603, 622};

// Main Function
void main(void)
{
  int i, j;
	
  initialize();                             // Initialize system

  for (;;)                                  //
  {
  port_pin = Ref;                           // Set temp holder to Ref resistor pin
  REF_RES = measure_count(port_pin);        // Measure REF_RES discharge count
  port_pin = Sensor;                        // Set temp holder to Sensor (thermistor) pin
  THERM_RES = measure_count(port_pin);      // Measure THERM_RES discharge count
  P2DIR |= Ref;                             // Change Ref to output to hold other inputs low -
                                            // uses less power than to leave floating

  RTHERM = (100 * THERM_RES) / REF_RES;     // Calculate Thermistor

  // obtaining Thermistor temperature reading from table...
  i=0;
  j=110;
  while ((RTHERM - RES_TAB[i]) > 0)
  {
    i++;
    j=j-1;                                  // j = value of Thermistor temperature + 1
  }
  TEMP_FTHERM = j-1;                        // TEMP_FTHERM = Thermistor temperature reading
  _NOP();                                   // PUT BREAKPOINT HERE. Watch TEMP_FTHERM in watch window

  }
}

// setup ports, Timers, and variables - run once at start
void initialize(void)
{
  volatile int i;
  WDTCTL = WDTPW + WDTHOLD;                 // Stop watchdog timer
  for(i=0;i<10000;i++);                     // Delay for XTAL to stabilize
  P1OUT = 0x00;                             // Setup P1
  P1DIR = 0xCF;                             // Outputs = P1.0,1,2,3,6,7
                                            // Inputs = P1.4,5
  P2OUT = 0x00;                             // Setup P2
  P2DIR = 0x00;                             // All pins are outputs
  CAPD =  Ref+Sensor;                       // Disable input buffers for sensor inputs
  CACTL2 = P2CA0;                           // Setup CA:  +comp = P2.3
  _EINT();                                  // Enable interrupts
 }

// measure count value for Thermistor, Reference resistor, and Potentiometer
unsigned int measure_count(unsigned int TEMP_SOURCE)
{
  unsigned int TIMERCCR_COUNT;              // Temporary holder for CCR count on measure routine
  unsigned int TIMERA_COUNT;                // Temporary holder for TA discharge count

  CCR1 = 3605;                              // CCR1 ~ TAR+5ms (5tau)
  CAPD &= ~Ref;                             // Must be enabled for output function
  P2OUT |= Ref;                             // Ref Set
  P2DIR |= Ref;                             // Ref Output
  CCTL1 = CCIE;                             // Compare mode, interrupt
  TACTL = TASSEL0+TACLR+MC1;                // ACLK, TA clear, continuous mode
  LPM0;                                     // enter LPM0, wait for CCR1 interrupt
  P2DIR &= ~Ref;                            // Ref = HiZ, charge complete
  CAPD |= Ref;                              // Input buffer disabled for tri-state
  P2OUT &= ~Ref;                            // Ref = reset
  TIMERA_COUNT = TAR;                       // Store TAR count in temporary holder at start
                                            // of conversion
  CACTL1 = CARSEL+CAREF0+CAON;              // -comp = 0.25*Vcc, comp on
  CCTL1 = CM1+CCIS0+CAP+CCIE;               // Neg, CCIB, cap, interrupt
  P2DIR |= TEMP_SOURCE;                     // Select Thermistor or Reference
  CAPD &= ~TEMP_SOURCE;                     // Must be enabled for output function
  LPM0;                                     // Enter LPM0, wait for CCR1 interrupt
  TIMERCCR_COUNT = CCR1;                    // TIMERCCR_COUNT = TAR (CCR1) at EOC
  TIMERCCR_COUNT -= TIMERA_COUNT;           // TIMERCCR_COUNT = discharge time count
  P2DIR &= ~TEMP_SOURCE;                    // Disable selection
  CAPD |= TEMP_SOURCE;                      // Input buffer disabled for tri-state
  CACTL1 = 0x00;                            // Disable comparator
  CCTL1 = 0x00;                             // Disable CCTL1
  TACTL = 0x00;                             // Disable timer_A
  return(TIMERCCR_COUNT);                   // Return discharge time count
 }

// Timer A1 interrupt service routine
__interrupt void Timer_A1(void);
TIMERA1_ISR(Timer_A1)
__interrupt void Timer_A1(void)
{
  LPM0_EXIT;                                // Exit LPM0
  CCTL1 &= ~CCIFG;                          // Clear CCR1 interrupt flag
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩国产欧美三级| 成人性色生活片| 国产精品一区在线观看你懂的| 成人免费不卡视频| 精品视频一区二区不卡| 日韩午夜av电影| 在线免费观看不卡av| 亚洲人成在线播放网站岛国| 国产精品影视天天线| 中文字幕一区二区三区色视频| 在线不卡免费欧美| 欧洲精品一区二区| 亚洲成av人片观看| 中文字幕一区二区三区在线不卡 | 欧美高清在线一区| 日韩欧美视频在线| 26uuu另类欧美亚洲曰本| 欧美一区二区美女| 日韩美女视频一区二区在线观看| 久久精品72免费观看| 欧美精品日日鲁夜夜添| 91久久久免费一区二区| 国产一区二区精品久久91| 国产一区二区三区在线观看精品 | 亚洲v中文字幕| 久久亚洲一区二区三区四区| 极品美女销魂一区二区三区| 成人午夜精品在线| 欧美刺激午夜性久久久久久久| 国产毛片精品国产一区二区三区| 中文字幕在线观看一区二区| 欧美一区二区三区四区视频| 欧美精品亚洲一区二区在线播放| 99久久精品国产一区| 在线看国产一区| 在线观看91av| 久久精品亚洲麻豆av一区二区 | 日韩国产高清在线| 日日摸夜夜添夜夜添国产精品| 国产精品乱码一区二三区小蝌蚪| 2024国产精品| 国产精品日产欧美久久久久| 综合激情网...| 亚洲精品水蜜桃| 水蜜桃久久夜色精品一区的特点| 六月婷婷色综合| 色综合久久天天综合网| 91精品国产一区二区三区香蕉| 亚洲日韩欧美一区二区在线| 秋霞电影网一区二区| 国产激情偷乱视频一区二区三区| 91黄色激情网站| 欧美在线观看视频一区二区| 国产网站一区二区三区| 亚洲成a天堂v人片| 五月婷婷综合网| 精品伦理精品一区| 一区二区三区在线不卡| 亚洲国产成人av网| 国产精品久久久久久久久免费樱桃| 国产99精品国产| 欧美三级午夜理伦三级中视频| 国产精品成人一区二区三区夜夜夜| 一区二区激情视频| 97久久超碰国产精品电影| 欧美性猛片xxxx免费看久爱| 亚洲欧美综合另类在线卡通| 国产激情一区二区三区四区| 日韩三级.com| 日韩和欧美一区二区三区| 99久久精品费精品国产一区二区| 国产精品乱码久久久久久| 99re视频精品| 一区二区三区在线播| 9191成人精品久久| 精品一区二区三区免费| 日韩欧美国产一区二区在线播放| 精品亚洲成a人在线观看 | 国产精品一区二区在线观看网站| 国产成人h网站| 日韩中文字幕1| 国产欧美一区二区精品忘忧草| 亚洲综合免费观看高清完整版 | 欧美aaaaa成人免费观看视频| 亚洲精品亚洲人成人网在线播放| 国产欧美日韩中文久久| 国产精品99久久久| 韩国理伦片一区二区三区在线播放| 国产亚洲成年网址在线观看| 色噜噜狠狠色综合欧洲selulu| 欧美三片在线视频观看| 成人a区在线观看| 亚洲一区二区三区爽爽爽爽爽| 国产精品自拍三区| 中文字幕一区二区三区不卡 | 亚洲成人先锋电影| 亚洲国产成人午夜在线一区| 欧美变态口味重另类| 在线电影国产精品| 欧美午夜精品电影| 成人激情免费网站| 国产福利一区二区三区视频 | 久久综合久久鬼色中文字| 欧美tickling挠脚心丨vk| 欧美性三三影院| 成人av资源站| 国产成人自拍高清视频在线免费播放| 亚洲va欧美va天堂v国产综合| 亚洲精品网站在线观看| 亚洲欧美自拍偷拍色图| 欧美国产乱子伦| 日韩一区在线免费观看| 亚洲综合无码一区二区| 免费视频一区二区| 久久成人羞羞网站| 色综合久久88色综合天天6| 91麻豆国产福利在线观看| 99视频在线精品| 欧美色窝79yyyycom| 欧美精品乱码久久久久久按摩| 日韩三级高清在线| 亚洲精品日韩一| 婷婷开心久久网| 成人在线综合网站| 欧美日本乱大交xxxxx| 国产精品色呦呦| 日韩国产在线观看一区| 99久久久久免费精品国产 | 欧美xxx久久| 亚洲乱码日产精品bd| 国产精品66部| 国产精品久久久久久亚洲毛片 | 毛片一区二区三区| 色噜噜久久综合| 国产精品乱人伦| av一二三不卡影片| 国产欧美日韩一区二区三区在线观看| 中文字幕一区二区三区视频| 国产精品一区二区三区四区| 欧美丰满高潮xxxx喷水动漫| 久久影音资源网| 五月婷婷另类国产| 色婷婷精品大视频在线蜜桃视频| 欧美成人一区二区三区| 亚洲一区二区三区中文字幕| 99久久精品免费看| 久久亚洲精品国产精品紫薇| 亚洲成人免费视频| 欧美日韩中文字幕一区二区| 久久久99精品免费观看| 美日韩一区二区三区| 欧美精品一区二区三区蜜臀| 日韩毛片视频在线看| 色先锋aa成人| 午夜精品久久久久久久| 99国产精品久| 亚洲欧洲日本在线| 欧美午夜精品电影| 美女一区二区视频| 日韩视频一区二区三区| 寂寞少妇一区二区三区| 久久综合久久综合九色| 成人av资源在线观看| 中文字幕亚洲综合久久菠萝蜜| 欧美日韩大陆在线| 久草精品在线观看| 一区二区三区精品在线| 一本久久a久久免费精品不卡| 日韩激情av在线| 亚洲最新视频在线观看| 欧美怡红院视频| 国内欧美视频一区二区| 亚洲日本一区二区| 欧美日韩一级二级三级| 九一久久久久久| 亚洲香蕉伊在人在线观| 欧美高清在线一区| 欧美日本精品一区二区三区| 成人黄页在线观看| 日本不卡中文字幕| 亚洲色大成网站www久久九九| 欧美激情在线看| 91麻豆精品国产91久久久久| 色欧美乱欧美15图片| 国产一区 二区 三区一级| 一区二区三区在线视频观看| 国产婷婷一区二区| 久久男人中文字幕资源站| 欧美日韩免费一区二区三区| 国产高清在线精品| 成人av网站在线| 99国内精品久久| 91麻豆swag| 精品视频免费在线| 欧美日韩电影一区| 99久久精品久久久久久清纯| 国产麻豆日韩欧美久久| 国产成都精品91一区二区三| 激情丁香综合五月| 国产ts人妖一区二区|