ADC – Analog to Digital Converter
아날로그 - 디지털 변환기 (ADC, A / D 또는 D에 대한)는 양의 진폭을 나타내는 디지털 숫자로 연속 물리량 (통상 전압)로 변환하는 장치이다.
The conversion involves quantization of the input, so it necessarily introduces a small amount of error. 변환은 관련된 양자화 입력의이 있으므로 반드시 오류 소량 도입한다. Furthermore, instead of continuously performing the conversion, an ADC does the conversion periodically, sampling the input. 또한, 대신에 연속적으로 변환을 수행하는, ADC를 주기적 변환을 수행 샘플링 입력한다. The result is a sequence of digital values that have been converted from a continuous-time and continuous-amplitude analog signal to a discrete-time and discrete-amplitude digital signal . 결과는 연속 시간 및 연속 진폭 변환 된 디지털 값들의 시퀀스 인 아날로그 신호 (A)에 이산 시간 및 이산 진폭 디지털 신호 .
>Data Sheet 해석
>회로도 해석
>pixel 이란!!
-예제-
>부분 회로 분석!!
>ADCSRB – ADC Control and Status Register B
>ADCSRA – ADC Control and Status Register A
>ADCL and ADCH – The ADC Data Register
>DIDR0 – Digital Input Disable Register 0
>DIDR2 – Digital Input Disable Register 2
>ADC.C
#include "adc.h"
void adc_Init(void)
{
ADMUX =(0<<REFS1)|(0<< REFS0)|(0<< ADLAR)|(0<< MUX4)|(0<<MUX3)|(0<< MUX2)|(0<< MUX1)|(0<< MUX0);
ADCSRA =(1<<ADEN)|(1<< ADSC)|(0<< ADATE)|(0<< ADIF)|(0<< ADIE)|(1<< ADPS2)|(1<< ADPS1)|(0<< ADPS0);//64bit 사용
ADCSRB =(0<<ACME)|(0<<MUX5)|(0<< ADTS2)|(0<< ADTS1)|(0<< ADTS0);
}
unsigned int adc_Rum0(void)
{
adc_Init();
ADCSRA=ADCSRA|(1<< ADSC);
while( 0!=(ADCSRA &(1<< ADSC)) );
return ADC;
}
>ADC.H
#ifndef __ADC_H__
#define __ADC_H__
#include "main.h"
void adc_Init(void);
unsigned int adc_Rum0(void);
#endif //__ACD_H__
>MAIN.C
#include "lcd.h"
#include "TC0.h"
#include "Usart.h"
#include "adc.h"
int main(void)
{
unsigned char ucData;
char caVal[]="....";
unsigned int uiVal;
LCD_Init();
usart0_Init();
adc_Init();
while(1)
{
uiVal = adc_Rum0();
caVal[0]='0'+(uiVal/1000);
caVal[1]='0'+((uiVal%1000)/100);
caVal[2]='0'+((uiVal%100)/10);
caVal[3]='0'+(uiVal%10);
usart0_STR(caVal);
LCD_Inst(LCD_HOME);
}
return 0;
}
>회로 결선!!!
'코스웨어 > 16년 스마트컨트롤러' 카테고리의 다른 글
20160323_김가연_업무일지_ADC (0) | 2016.03.24 |
---|---|
20160323_장진웅_업무일지_컨버터, 타이밍도,ADC (0) | 2016.03.24 |
20160317-업무일지-허도경-타이머카운터 (0) | 2016.03.24 |
20160323_조재찬_업무일지_펌웨어(ADC) (0) | 2016.03.24 |
20160323_업무일지_박진한_ADC (1) | 2016.03.24 |
ADC (0) | 2016.03.23 |
20160323_업무일지_정우민_ADC (0) | 2016.03.23 |
2016_03_23_타이밍도_노태경_업무일지 (0) | 2016.03.23 |