본문 바로가기
임베디드.일렉트로닉스/EFM8

EFM8 ADC 활용법.

by i.got.it 2015. 6. 24.

 

 

개요

 

EFM8 내장 ADC 이용하여 외부 아날로그 신호를 디지털로 변환하는 방법 정리함.  

ADC를 활용한다함은 세부 설정 파라메타가 많기 때문에 구현해야할 상황에 따라 적절한 선택을 해야한다.

본 예에서는 ADC를 활용하여 2개의 아날로그 신호를 입력받도록 하고, ADC는 이들 아날로그 전압 각각을 디지털로 변환하는 예를 보인다.

1. 아날로그신호 입력받을 핀 설정.

2. ADC 기본 설정.

3. Voltage Reference 설정.

4. 펌웨어에서 핀으로 입력된 2개의 아날로그 신호를 변환하여, 디지탈 값 확보.

- 상기 2에서 설정한것만으로는 다채널 변환 목적에서는 충분하지 않으며 코드내에서 ADC0 관련 설정을 동적 변경하게 된다.

 

EFM8 ADC기본 정보 : http://igotit.tistory.com/332  위 1, 2를 수행하기 위한 필수 기반지식은 TRM에서 제공된다.

 

 

 

 

 

1. 아날로그 전압 입력 핀 설정.

 

P0.6, P0.7 에 외부 아날로그 전압을 입력한다고 하자. ADC 입력으로 사용가능한 핀은 P0.0~P0.7,P1.2,P1.3 이 가능하다.

Simplicity Studio 프로젝트의 Configurator 에서 P0.6, P0.7의 설정을 아래 처럼 IOMode 를 Analog I/O 로 선택하고, Skip 에서 Skip 선택하는 걸로 설정완료된다. 

이제 이 핀으로 아날로그 전압 입력가능하다.

 

 

 

 

 

 

 

 

 

2. ADC 기본 설정.

 

 

 Simplicity Studio 의 Configurator 에서 ADC설정하는 예를 보인다.

 

Configurator  에서 ADC0 을 선택하고 오른쪽 설정에서 옵션들을 선택한다. 각 항목의 설정은 아래와 같다. 

 

Control

- Enable ADC : Enabled

- Burst Mode : Disabled

- Start of Conversion : Write to 1 of ADBUSY (선택가능 : ADBUSY/Timer0/2/3 Overflow/Rising Edge CNVSTR)

Multiplexer Selection

- Positive Input Selection : ADC0.6 (P0.6), 앞의 단계1에서 우리는 2개의 입력을 선택하였고 이 중 임의 1개를 기본 설정으로 연결해둔것임.

Configuration

- Resolution : 10bit. (선택가능 : 12, 10, 8 , 12bit  를 사용하려면 앞의 Control - Burst Mode 를 enable 해야함.)

- SAR Clock Divider : 30 (선택가능 : 1~32, SAR CLOCK SOURCE 주파수를 이 값으로 나눈 값이 SAKCLK 가 됨.)

- Enable 8-bit mode : Normal Mode. (선택가능 : Normal 10,12bit, 8bit Mode)

- Gain Control : 0.5x (선택가능 : 0.5x, 1x)

- Result Shift and Justify : Right justified (선택가능 : Right just./R just. 1 right shift/R just. 2 r st/R just. 3 r s/Left justified )

- Track Mode : Delayed  tracking (선택가능 : Normal, Delayed)

Burst Mode Control

- Burst Mode Repeat Count : 1conversion. (선택가능 : 1,4,8,16,32,64 ), 앞의 Control - Burst Mode를 disable 한 경우에는 1만 가능함.

Power Control

- Enable low Power Mode : Enabled.  SARCCLOCK 이 4MHz 이하인 경우에는 enable시켜서 전력소비 줄일 수 있다.

Accumulator Configuration

- Enable 12 bit mode : Disabled.

- Enable Accumulate : Disabled.

Window Compare

- Greater-Than Value : 0

- Less-Than Value : 0

 

 

 

 

 

 

 

3. Voltage Reference 설정.

 

ADC에서 사용되는 Voltage Reference 설정은 REF0CN 레지스터에서 이뤄진다.

confugurator 에서 설정할라면 아래 처럼 Volatge Reference 선택하고, 기준전압을 선택한다. 본 예에서는 1.65 V 내장 Voltage Reference 사용하는 경우다. 선택가능 : 1.65V(내장)/VDD/LDO/외부VREF핀에 인가된 전압.

 

 

 

 

 

 

 

 

본 글이 포함된 상위 정리장소 :

 

http://igotit.tistory.com/244

 

 

///338.

'임베디드.일렉트로닉스 > EFM8' 카테고리의 다른 글

EFM8 UB1 스타터 키트. - SLSTK2000A  (0) 2015.11.28
EFM8 소프트웨어 리셋 시키는법.  (0) 2015.11.05
EFM8 SB1 ADC  (0) 2015.06.19
EFM8 인트럽트 코드생성.  (0) 2015.06.10
EFM8 SB1 개발보드.  (0) 2015.06.09

댓글



 

비트코인




암호화폐       외환/나스닥/골드         암호화폐/외환/나스닥/골드
     
현물 |선물 인버스 |선물 USDT       전략매니저(카피트레이딩)         프랍 트레이더 온라인 지원가능. MT4,MT5