회원가입 ID/PW 찾기
AA

msp430f1611을 사용하고 있는데 ADC에서 읽어들인 값하고 직접 테스터기로 찍은 값이 달라요.

왜 그런가요?

그리고 책에 Nadc = 4095 * Vin - Vr-/Vr+  - Vr-  이게 무엇을 의미하는 지 궁금합니다..

 

P6SEL = 0x01;

 

void adc_init()
{
 ADC12CTL0 = ADC12CTL1 = 0;

 /** must be ENC = 0 **/
 ADC12CTL0 |= ADC12ON;         //ADC core enable. (consumes power)
 //ADC12CTL0 |= REFON;         // internal reference voltage on
 //ADC12CTL0 |= REF2_5V;         // reference generator voltage 2.5V (or 1.5V). REFON must be set.
 //ADC12CTL1 |= CSTARTADD0;      // conversion memory register start adress[0~3] (ADC12MEM0~ADC12MEM15)
 
 ADC12CTL1 |= ADC12SSEL0; // ADC12CLK = ACLK. ADC12 clock source - 00:ADC12OSC (consumes power), 01:ACLK, 10:MCLK, 11:SMCLK
 //ADC12CTL1 |= ADC12DIV0; // ADC12 clock divider[0~2]  - divide by 1~8
 
 ADC12CTL1 |= SHP;         //ADC12 Pulse Sample Mode (or Extended Sample mode)
 ADC12CTL0 |= SHT01 | SHT00; // 32 ADC12CLK cycles sampling. SHT1x, SHT0x - sample and hold time. only for when SHP =1. 
 //ADC12CTL0 |= MSC;         // Multiple sample and conversion. only for sequence or repeated modes.(ref. CONSEQx)

 //ADC12CTL1 |= SHS0 | SHS1; // Sample-and-hold source - 00:ADC12SC bit, 01:TA1, 10:TB0
 /*******************/

 //ADC12CTL1 |= CONSEQ0 | CONSEQ1; // ADC12 conversion sequence select (00:single channel and conversion, 01:sequence channel, 10:repeat single channel, 11:repeat sequence of channels)
 //ADC12CTL0 |= ENC;         // ADC12 Enable Conversion
 //ADC12CTL0 |= ADC12SC;         // ADC12 start conversion
}


u16 adc_convert(u08 adc_channel)
{
 u16 adc_result;
       

 /** must be ENC = 0 **/
 ADC12CTL0 &= ~ENC;
 switch (adc_channel)
 {
  case 0 :
   ADC12MCTL0 = INCH_0; break;
  case 1 :
   ADC12MCTL0 = INCH_1; break;
  case 2 :
   ADC12MCTL0 = INCH_2; break;
  case 3 : 
   ADC12MCTL0 = INCH_3; break;
  case 4 :
   ADC12MCTL0 = INCH_4; break;
  case 5 :
   ADC12MCTL0 = INCH_5; break;
  case 6 :
   ADC12MCTL0 = INCH_6; break;
  case 7 :
   ADC12MCTL0 = INCH_7; break;
  case 10 :
   ADC12MCTL0 = INCH_10; break; // temperature diode
 }
 /*******************/

 ADC12CTL0 |= ADC12SC + ENC; // SHI = 1
 ADC12CTL0 &= ~ADC12SC; // SHI = 0
 // wait until the conversion completes; ADC12BUSY?
 while (ADC12CTL1 & ADC12BUSY);
 ADC12CTL0 &= ~ENC;
 
 // 12 bit data mode
 adc_result = ADC12MEM0;
  
        
 return(adc_result);
}

                                      이렇게 해서 값을 읽어 들인값하고 테스터기로 찍어보면 나온값하고 어떻게 비교를 해야 하나요..위에 공식으로 적용을 해야하는지..   

전압은 0.6V가 나오는데 위에 대로 읽어 들인값은 744 값이 나옵니다.. 

전압인가는 5V를 넣어주었고..  

댓글 1
  • No Profile

    Nadc = 4095 * (Vin - Vr- ) / (Vr+ - Vr- ) 공식을 적용하여 값을 환산해야 입력된 전압 값을 알 수 있습니다. 

    4095 는 ADC가 12BIT로 2^12 의 Resolution을 갖기 때문에 변환 가능한 값의 범위가 0 ~ 4095 이고 , 그 최대 값을 나타내는 것 입니다.

    Vr- 는 마이너스 기준 전압 (보통 0v) , Vr+는 플러스 기준 전압 ( 보통 CPU 전원 3.3V ) 입니다.

    따라서 공식을 다시 쓰면 Nadc = 4095 * Vin / 3.3V 이 됩니다.

    Nadc = 4095 * 0.6V / 3.3V = 744

    더 예를 들어 보면

    입력 전압이 0V 이면 AD 값은 0 ,

    입력 전압이 1.65V 이면 AD 값은 2047

    입력 전압이 3.3V 면 AD값은 4095 가 됩니다.

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
41 Sensor 설계 HOT안녕하십니까 adxl345를 이용하여 모터진동을 측정하려는데 모터를 켤 때마다 통신이 끊깁니다1 uiouiouio 3043 2024.06.01
40 Sensor 설계 HOT비접촉 적외선 온도센서 코드에 관한 질문입니다....(전문가분들 부탁드립니다.)3 -0251 667 2021.01.22
39 Sensor 설계 HOT이 DIP타입 IC이름이 뭔가요?1 swfw 1037 2020.02.27
38 Sensor 설계 HOT부품 추천 부탁 드려요 에이스96 664 2019.07.06
37 Sensor 설계 HOTRF power splitter 에서 커플링 개념을 자세히 알고 싶습니다!!1 초보자K 854 2019.01.15
36 Sensor 설계 HOT안녕하세요!! 제가 RF 부품에 질문이 있습니다!!(power splitter)5 초보자K 980 2019.01.15
35 Sensor 설계 HOTpower splitters 에 질문이 있습니다.6 초보자K 835 2019.01.14
34 Sensor 설계 HOT부품중에 "Si2305DS" 이 부품에 대해 잘 모르겟는데1 Octave 758 2017.11.28
33 Sensor 설계 HOT혹시 이런 스위치 IC 아시는분 추천 부탁드립니다.3 용장군 1190 2016.12.14
32 Sensor 설계 HOTpads 품 추가하는법미뭔가요?2 깅동 910 2016.11.13
31 Sensor 설계 HOTTI 사 OMAP 관련 질문이 있어요 급합니다.1 킹또 774 2016.08.13
30 Sensor 설계 HOTC2G6DFP 이 부품 Datasheet가 안나오는데1 기다려줄래 729 2015.12.21
29 Sensor 설계 HOT부품명을 알고 싶습니다.10 skyjin 1038 2015.01.01
28 Sensor 설계 HOT안녕하세요. FA431Z 제품의 동작원리를 알고 싶습니다.4 wjddmltn23 1321 2014.05.19
27 Sensor 설계 HOT어떤 부품인지 알고 싶어요3 오리온32 1737 2014.03.19
26 Sensor 설계 HOT기판 점검 방법좀 알려주세요.3 고산묵월 2836 2013.12.27
25 Sensor 설계 HOT충전ic1 RUOK 1253 2013.03.19
24 Sensor 설계 HOTIC 칩 추천 및 질문이요~.~1 꼬기 865 2012.10.30
23 Sensor 설계 HOT배터리 모니터링 IC칩 찾아요2 다리미 1306 2012.10.04
22 Sensor 설계 HOT콘덴서 를 찾습니다. 얀이 801 2012.09.22
  • 인간의 나약함이 우리를 사교적으로 만든다. 공통의 불행이 우리의 마음을 결합시킨다.
    - 루소
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.