728x90
반응형
4.1 ADC
4.1.1 ADC Introduction
ADC-Digital의 특징은 아래와 같다:
- 2개의 12비트 ADC
- 10/11 비트 정확도로 최대 12비트 분해능의 선형 연속 근사 알고리즘
- 최대 1MS/s 샘플링 속도
- 최대 8개의 단일 종단 외부 아날로그 입력
- 단일 또는 연속 변환 (단일 변환 후, idle 상태로 자동 복귀)
- 출력 모드: (부호없는 오른쪽 정렬 형식)
- 12비트
- 10비트
- 8비트
- 구성 가능한 샘플 시간과 변환 속도/전력
- 변환 완료와 하드웨어 평균 완료 플래그와 인터럽트
- 최대 4개의 소스에서 선택 가능한 입력 클럭
- 클럭 출력 옵션이 있는 저잡음 작동을 위한 비동기식 클럭 소스
- 하드웨어 채널 선택으로 선택 가능한 비동기 하드웨어 변환 트리거
- Internal, External, Alternate, 선택 가능한 전압 레퍼런스
- 저잡음 작동을 위한 저전력 모드 작동
- 하드웨어 평균 기능
- 자체 교정 모드
4.1.2 ADC External Signals
- ADC_VREFH: 레퍼런스 전압 HI
- ADC_VREHL: 레퍼런스 전압 LO
- ADC1_IN0: 아날로그 채널 1 입력 0
- ADC1_IN1: 아날로그 채널 1 입력 1
- ADC1_IN2: 아날로그 채널 1 입력 2
- ADC1_IN3: 아날로그 채널 1 입력 3
- ADC2_IN0: 아날로그 채널 2 입력 0
- ADC2_IN1: 아날로그 채널 2 입력 1
- ADC2_IN2: 아날로그 채널 2 입력 2
- ADC2_IN3: 아날로그 채널 2 입력 3
ADC 핀 설정은 ADCx_PCTL 레지스터에서 이루어져야 한다. 다른 추가 IOMUX 설정은 필요하지 않다.
4.1.3 ADC Driver Overview
ADC 드라이버는 Linux IIO (Industrial I/O) 드라이버 프레임에서 개발되었다. ADC 드라이버는 기본 함수만 제공한다. 아래 기능이 지원된다:
- 각 ADC 컨트롤러 채널에 대한 4개의 외부 입력
- 12비트 ADC
- 단일 변화
- 하드웨어 평균
- ADC의 저전력 모드
- 사용 가능한 샘플 속도 그룹에서 샘플 속도 변경
4.1.4 Source Code Structure
Table 35. ADC Driver Files
File | Description |
---|---|
drivers/iio/adc/vf610_adc.c | i.MX 6UltraLite와 i.MX 6SoloX ADC 함수 |
drivers/iio/adc/imx7d_adc.c | i.MX 7Dual ADC 함수 |
drivers/iio/adc/imx8qxp_adc.c | i.MX 8QXP ADC 함수 |
4.1.5 Menu Configuration Options
menuconfig로 모듈을 활성화하도록 커널 옵션을 구성한다:
- Device Drivers > Industrial I/O support > Analog to digital converters > Freescale vf610 ADC driver
- Device Drivers > Industrial I/O support > Analog to digital converters > i.MX 7Dual ADC driver
- Device Drivers > Industrial I/O support > Analog to digital converters > i.MX 8QXP ADC driver
4.1.6 Programming Interface
Linux IIO는 관련된 입력에서 로우 ADC 데이터를 가져오는 일부 시스템 인터페이스를 제공한다. 사용자는 사용 가능한 샘플 속도 그룹에서 샘플 속도를 설정할 수도 있다. ADC 컨트롤러 시스템 인터페이스는 다음 위치에 있다:
- /sys/devices/soc0/soc.1/2200000.aips-bus/2280000.adc/iio:device0:
- /sys/devices/soc0/soc.1/2200000.aips-bus/2284000.adc/iio:device1:
아래 테이블에는 소프트웨어 인터페이스가 나열되어 있다.
Table 36. Software Interfaces
Software interface | Description |
---|---|
in_voltage0_raw~ in_voltage3_raw | 로우 ADC 데이터를 가져오기 위한 cat in_voltage0_raw |
sampling_frequency_available | 사용 가능한 샘플 속도 그룹을 가져오기 위한 cat sampling_frequency_available |
in_voltage_sampling_frequency | 현재 샘플 속도를 보여주기 위한 cat in_voltage_sampling_frequency 샘플 속도를 설정하기 위한 echo value > in_voltage_sampling_frequency |
728x90
반응형