
PWM 생성기를 사용한 ADC 트리거

DSPIC33C MP 장치의 PWM 및 ADC 사용 방법 학습, 실험실 7 : DSPIC33CK 및 DSPIC33CH 장치의 코드 예제 ADC 입력을 트리거하는 PWM 생성기의 기본 구성을 보여줍니다. ADC 인터럽트 서비스 루틴 (ISR) 내부에서는 사용자가 트리거 응답 지연을 관찰 할 수 있도록 테스트 핀이 전환되었습니다. 또한, 조기 인터럽트 생성, 컴파일러 속성을 사용한 대체 작업 레지스터 및 샘플링 시간 조정 최적화 기능을 사용하여 트리거 응답 시간을 조정합니다.
각 제품 웹 사이트에서 항상 최신 데이터 시트를 확인하십시오.

장치가 프로그래밍되고 MCU가 시작된 후 PWM1H는 전용 ADC 코어 0을 트리거합니다. 약 277NS 트리거 응답 지연 후 ADC 코어 O ISR 테스트 핀 표시기 TP55 토글은 아래의 화면 캡처를 참조하십시오. ADC Core 0의 초기 인터럽트 생성기가 활성화되어 트리거 응답 지연이 최적화됩니다.
PWM2H는 Digital Power Development Board에서 온보드 푸시 버튼 사용자를 눌러 전용 ADC 코어 1을 트리거합니다. 약 265NS 트리거 응답 지연 후 ADC 코어 1 ISR 테스트 핀 표시기 TP53 토글 아래의 화면 캡처를 참조하십시오. 초기 인터럽트 생성기를 제외하고 ADC Core 1 ISR은 ISR을 대체 레지스터 세트와 연결하기 위해 컴파일러의 컨텍스트 속성을 사용했기 때문에 트리거 응답 지연이 추가로 줄어 듭니다.
온보드 푸시 버튼 사용자를 다시 누르면 PWM3H는 공유 ADC 코어 6을 트리거합니다. 약 335NS 후 ADC 코어 6 ISR 테스트 핀 표시기 TP50 토글은 아래의 화면 캡처를 참조하십시오. 공유 ADC의 구성은 공유 ADC 샘플링 시간이 8 Tadcore로 설정된 것을 제외하고는 전용 ADC 코어 1과 동일합니다. 이전 전용 ADC 코어와 달리 공유 ADC Core 6에는 전용 아날로그 핀이 없습니다. 이를 위해서는 ADC가 아날로그 핀에 연결하고 변환 전에 입력 신호를 올바르게 샘플링 할 수 있도록 샘플링 시간을 연장해야했습니다. 그러나이 샘플 시간은 트리거 응답 지연을 추가합니다.
초기화 프로세스 및 코드 구조에 대한 자세한 내용은 아래 섹션 펌웨어 빠른 시작 안내서 를 참조하십시오.

이 코드 예제는 MCC (Microchip Code Configurator)를 사용하여 장치 클록 도메인을 설정하는 방법을 보여주는 이전 코드 예제를 작성합니다. MCC는 또한 PWM 및 ADC 모듈에 대한 구성 도구를 지원하지만이 예제에서 PWM 및 ADC 구성은 일반 주변 장치 드라이버를 구축하여 사용자가 주변 장치 아키텍처 및 특정 구성 및 운영 모드의 주요 측면을 더 잘 이해할 수 있도록 도와줍니다. 각각의 PWM 및 ADC 예제 코드 프로젝트에서 PWM 및 ADC 구성 절차는 사용자 파일 PWM.C 및 ADC.C에 위치하고 있으며, 각 레지스터 비트는 특정 기능 또는 관심 모드를 달성/활성화하는 데 필요한 각 레지스터 비트가 설정되며 그 기능은 주석으로 설명됩니다. 사용자가 아키텍처, 기능 및 기능에 익숙해지면 구성 옵션 (일반 주변 장치 라이브러리 또는 MCC)이 모두 사용할 수 있습니다.
이 프로젝트에는 4 개의 하위 이사가 포함되어 있습니다
하드 드라이브에서 Main.C/H는 MPLAB X 프로젝트 디렉토리에 있습니다. 다른 모든 사용자 파일, 포함 주변 드라이버는 하위 디렉토리 소스 에 있습니다. MCC가 생성 한 파일은 항상 자체 하위 디렉토리 MCC_Generated-Files 에 있습니다.
PWM 및 ADC 주변 장치 드라이버 파일 P33C_PWM.C/H 및 P33C_ADC.C/H는 PWM 및 ADC 기본 모듈뿐만 아니라 특수 기능 레지스터 (SFR) 세트를 나타내는 데이터 구조를 제공합니다. 이 'Virtual'PWM 및 ADC 객체는 하드 코딩 된 지침없이 PWM 및 ADC 구성을로드, 읽기 및 수정하는 데 사용되므로 코드는 한 주변에서 다른 주변 또는 장치로 마이그레이션하기가 어렵습니다. PWM 및 ADC 구성을 단순화하기 위해이 예에서는 각 레지스터가 사용자 관심 구성이 설정되기 전에 알려진 기본 상태로 재설정됩니다. 따라서 특정 기능/기능에 중요한 레지스터 설정 만 표시됩니다.
Generic PWM 및 ADC 드라이버, 지원되는 기능 및 의도 된 사용 사례에 대한 자세한 내용은 P33C_PWM.C 및 P33C_ADC.C 내에서 의견을 읽으십시오.
이 코드는 관심있는 기능을 자동으로 시작하고 수행하도록 작성되었습니다. Code 예제, 테스트 포인트, 예상 신호 및 데모 모드 작동에 대한 자세한 내용은 File Main.c 위에있는 데모 지침을 읽으십시오.
© 2020, Microchip Technology Inc.