Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
66주차주차A/DA/D변환기변환기 개념개념 및및 AVRAVR의의 A/DA/D변환기변환기 구조구조
Next-Generation Networks Lab.
1. 1. 아날로그와아날로그와 디지털디지털
아날로그 (Analog)
• 영어의 analogous(비슷한)에서 유래함영어의 analogous(비슷한)에서 유래함
• 수학적으로 정확하게 표현하면, 아날로그는 연속적 = continuous
디지털 (Digital) 디지털 (Digital)
• 디지털의 어원은 손가락이라는 라틴어 digit에서 유래됨
• 디지털은 불연속적 = 이산적 = discrete• 디지털은 불연속적 = 이산적 = discrete
그림 9-1림
38
디지털의 장점
• 디지털은 아날로그에 비해 잡음에 매우 강하다디지털은 아날로그에 비해 잡음에 매우 강하다.
• 디지털은 아날로그에 비해 온도 특성이 좋다.
• 디지털은 아날로그에 비해 데이터의 처리가 매우 편하다.디지털은 아날로그에 비해 데이터의 처리가 매우 편하다.
아날로그의 장점 아날로그의 장점
• 아날로그 데이터는 원래 데이터에 매우 충실하다. 혹은 원래 데이터 그 자체이다.
39
아날로그아날로그--디지털디지털 변환변환 과정과정
ADC와 DAC의 과정
• ADC (Analog to Digital Converter): 아날로그 데이터를 디지털 데이터로 변환ADC (Analog to Digital Converter): 아날로그 데이터를 디지털 데이터로 변환
• DAC (Digital to Analog Converter): 디지털 데이터를 아날로그 데이터로 변환
• CODEC (Coder-DECoder): ADC와 DAC의 과정 모두 가리킴CODEC (Coder DECoder): ADC와 DAC의 과정 모두 가리킴
그림 9-4
40
ADC 1단계 표본화(Sampling)
• 연속적인 시간의 신호를 이산 시간 신호로 변환하는 과정연속적인 시간의 신호를 이산 시간 신호로 변환하는 과정
그림 9-5
• 나이키스트(Nyquist) 의 정리
샘플링 법칙에 따르면 샘플링 주파수 fs는 신호의 최대 주파수 f의 두 배 이상이 되어야
한다. 이보다 낮을 경우 앨리어싱(Aliasing)이 발생하기 때문에 원래 신호가 왜곡된다. 이
때 f /2를 중첩 주파수 혹은 나이키스트 주파수라 부른다때 fs/2를 중첩 주파수 혹은 나이키스트 주파수라 부른다.
41
ADC 2단계 양자화(Quantization)
• 연속적인 진폭의 신호를 이산 진폭 신호로 변환하는 과정연속적인 진폭의 신호를 이산 진폭 신호로 변환하는 과정
• 양자화 에러 연속적인 아날로그 값을 제한된 디지털 값으로 맵핑하여 나타나는 에러
그림 9-7
ADC 3단계 부호화(Coding) 0000 1001g
42
0000 00
ADC의 구분
그림 9 11그림 9-11
선택 기준 설명 AVR
표 9-1
1. 분해능 몇 비트로 (얼마나 세밀하게) 나타낼 수 있는가 ? 10비트
2. 변환속도 얼마나 빨리 A/D 변환의 결과를 나타낼 수 있는가 ? 13~260μS(중속형)
3 구현 방식 어떤 방식으로 ADC가 구현되어 있는가? 축차비교형 (SAR)3. 구현 방식 어떤 방식으로 ADC가 구현되어 있는가? 축차비교형 (SAR)
4. 입력전압의 종류 단극성인가? 양극성인가 ? 양극성
5. 데이터 출력 형태 직렬 출력인가? 병렬 출력인가 ? 병렬출력
43
6. 채널 수 단일 채널인가? 다중 채널인가 ? 다중채널
2. ATmega1282. ATmega128의의 ADCADC
• ADC 결과값 좌측 정렬 옵션
ADC 특징 (p.367)
• 10비트 분해능(Resolution) ADC 결과값 좌측 정렬 옵션
• 2.56V의 내부 기준 전압 지원
• 단일 변환 모드 혹은 프리러닝 모드
10비트 분해능(Resolution)
• 입력전압 범위: 0 ~ AVCC
• 0.5 LSB 적분 비선형 단일 변환 모드 혹은 프리러닝 모드
(Free Running) 지원
• ADC 변환 완료 인터럽트
0.5 LSB 적분 비선형
• ±2 LSB 정확도
• 13~260 uS 변환 시간 변환 완 인터럽
• Sleep Mode Noise Canceller
변환 시간
• 8 채널의 멀티플렉스된 단일 입력
• 7 채널의 차동 입력
• 10배 혹은 200배의 증폭률을
가진 2채널의 차동 입력
44
ADC 블럭다이어그램 ADC data register(ADCH/ADCL)
그림 9-13
전원전원
SAR
신호입력신호입력
45
ATmega128의 ADC 핀
그림 9-19
46
47
48
축차 비교형(SAR: Successive Approximation Register) ADC의 장점
• 비교적 변환시간이 빠르다. 그림 9 14비 적 변환시간이 빠 다
• 회로도가 간단한 장점이 있다.
• 저가로 제작 가능하다.
그림 9-14
• 분해능도 비교적 높은 편이다.
54 3754.375
3.753.125
2.5
1.5V
2.51.875
1.250.625
1.5V
49
0
ADC 변환 예제
아날로그 신호 입력범위: 0 ~ 5V 아날로그 신호 입력범위: 0 5V
3비트 ADC일 때 출력 값: 000 (0) ~ 111 (=7)
10비트 ADC일 때 출력 값: 0000000000 (0) ~ 1111111111 (=1023)비 일 때 출력 값 ( ) ( )
예제) 입력전압이 1.5V 일 때 3비트와 10비트로 변환된 ADC 값은 ? 예제) 입력전압이 1.5V 일 때 3비트와 10비트로 변환된 ADC 값은 ?
3비트 010
5V : 111 = 1.5V : x5
4 375x = 2.1 010
4.3753.75
3.1252 5
10비트 0100110011
(계산기 활용)
2.51.875
1.250.625
50
0.6250
ADC 기준 전압은 10비트 최대 값으로 변환될 입력 전압을 결정
ADC 기준전압
• ADC 기준 전압은 10비트 최대 값으로 변환될 입력 전압을 결정
• ADMUX 레지스터의 REF1~0 비트를 통해 설정
• 주의사항 : ADC 시작 전 이 값이 설정이 되어 있어야 한다 만일 ADC가 수행 중• 주의사항 : ADC 시작 전 이 값이 설정이 되어 있어야 한다. 만일 ADC가 수행 중
이 값을 변경하고자 한다면 최소 125us가 걸리므로 이 이후에 값을 읽어야 한다.
ADC 프리스케일러
• ADC 프리스케일러는 A/D 변환에 사용되는 클럭속도를 결정
• A/D 변환을 위한 클럭속도의 입력 범위는 단극성 입력일 때 50~200kHz 이고,
C 프리스케일러
/ 변환을 위한 클럭속 의 입력 범위는 단극성 입력일 때 이 ,
차동 입력일 때 50~1000kHz이다.
• ADCSRA 레지스터의 ADS2-0 비트를 통해서 원하는 분주비를 선택
51
ADC 기준전압 선택 회로
00
1
1
1
0
52
ADC 프리스케일러 그림 9-15
SC/1
28
OSC
/64
OSC
/32
OSC
/16
OSC
/8
OSC
/4
OSC
/2
OSOOOOOO
53
단일 변환
ADC 동작모드
단일 변환 모드
• ADCSRA 레지스터의 ADEN 비트를 세트
혹은 ADEN 비트와 ADSC 비트를 동시에 세트하면 시작
• ADC 변환이 완료되면 ADIF가 세트 되고 ADC 변환 완료 인터럽트가 요청되며
ADSC 비트는 자동적으로 클리어된다ADSC 비트는 자동적으로 클리어된다.
• ADC 변환 완료 이후 다시 ADC를 시작하려면 ADSC 비트를 세트하면 된다.
프리러닝 모드 프리러닝 모드
• ADSC 비트를 세트하여 시작한 후 자동으로 반복적으로 ADC를 수행
54
ADC 변환 시간
• 최대 약 39 클럭최대 약 39 클럭
= ADCSRA의 ADEN 비트가 세트된 후 ADC가 완료되기까지 시간
= ADC 회로를 안정화시키는 데 걸리는 시간 + ADC 변환 시간 ADC 회로를 안정화시키는 데 걸리는 시간 + ADC 변환 시간
• 따라서 한 번 안정화 시킨 후 두 번째부터는 조금 더 빨라질 수 있음
표 9-2
설명샘플앤홀드
클럭수ADC 변환클럭수
변환 시간@ 200kHz
ADEN 세트 후 최초 변환 시간 13.5 25 39*5us = 195us
이후 ADC 변환 시간 (단극성) 1.5 1313*5 65
이후 변환 시간 (단극성)13*5us =65us
(최대 초당 15,385회) 이후 ADC 변환 시간 (양극성) 1.5-2.5 13-14
55
잡음 제거 방법
• AVR의 ADC는 축차 비교 방식이므로 수십 us 정도의 초기값이 정확하지 않다• AVR의 ADC는 축차 비교 방식이므로, 수십 us 정도의 초기값이 정확하지 않다.
• A/D 컨버터의 아날로그 입력 신호선은 최대한 짧고 굵게 하는 것이 좋다.
• 잡음의 영향을 덜 받게 하기 위하여 디지털 전원 VCC에 LC 필터를 사용하여
AVCC에 붙인다.
• A/D 변환 중에 사용되지 않은 A/D 포트를 스위칭하지 않는다.
• 아날로그 GND 따로, 디지털 GND 따로 묶은 후 한 포인트에서 연결
• 데이터 값이 불안할 경우 평균을 구하면 조금 더 안정적이다.
• 잡음에 대해 극도로 민감할 땐 IDLE 모드에서 읽는 것도 좋다잡음에 대해 극도로 민감할 땐 IDLE 모드에서 읽는 것도 좋다.
56