다음을 통해 공유


실시간 지원 애플리케이션에서 주변 장치 사용

RTApps(실시간 지원 애플리케이션)는 전용 사용을 위해 주변 장치를 매핑할 수 있습니다. RTApp에서 하나 이상의 주변 장치를 사용하려면 다음을 수행합니다.

  • 애플리케이션 매니페스트에 주변 장치를 추가합니다.
  • 인터럽트 처리기(필요한 경우) 및 기타 지원 코드를 애플리케이션에 추가합니다.
  • 각 주변 장치가 시작 시 알려진 양호한 상태인지 확인하는 코드를 추가합니다.

중요

RTApp용 주변 장치를 프로그래밍하는 방법에 대한 하드웨어 관련 정보는 하드웨어 제조업체의 설명서를 참조하세요. 레지스터 기본 주소, 인터럽트 번호, 클록 속도, 샘플링 빈도 및 MT3620에 대한 기타 세부 정보는 MT3620 데이터시트MT3620 M4 사용자 설명서를 참조하세요. 질문이 남아 있는 경우 을 이메일로 보내 Azure.Sphere@avnet.comAvnet에서 세부 정보를 요청할 수 있습니다.

RTApp에서 사용하는 모든 리소스는 애플리케이션 매니페스트에 지정해야 합니다. RTApp에서는 대상 칩에 대한 하드웨어 정의 JSON 파일에서 AppManifestValue에 할당된 리소스의 이름을 사용해야 합니다. 하드웨어 정의 헤더 파일의 리소스에 할당된 상위 수준 이름은 사용할 수 없습니다. 예를 들어 MT3620 하드웨어의 ISU0에서 I2C를 식별하는 값을 찾으려면 Microsoft Azure Sphere SDK 폴더에 설치된 HardwareDefinitions 폴더의 mt3620.json 파일을 확인합니다. 이 주변 장치는 JSON 파일에서 다음과 같이 정의됩니다.

 {"Name": "MT3620_ISU0_I2C", "Type": "I2cMaster", "MainCoreHeaderValue": "(0)", "AppManifestValue": "ISU0", "Comment": "MT3620 ISU 0 configured as I2C"},

I2C 주변 장치의 AppManifestValue에 할당된 값은 "ISU0"입니다.

동시에 로드된 애플리케이션은 리소스를 공유할 수 없습니다. 리소스 사용은 단일 애플리케이션에만 적용됩니다. Azure Sphere OS는 애플리케이션을 로드할 때 다음과 같은 몇 가지 중요한 작업을 수행합니다.

  • 주변 장치와 연결된 핀이 요청된 기능에 대해 구성되도록 멀티플렉싱을 구성합니다.
  • 애플리케이션이 요청된 주변 장치와 연결된 레지스터에 액세스할 수 있도록 방화벽을 구성하는 핵심 매핑을 설정합니다.
  • 매니페스트를 확인하고 다른 앱에서 이미 클레임한 리소스를 클레임하는 경우 애플리케이션을 로드하지 못합니다.

이 섹션의 나머지 부분에서는 특정 주변 장치 사용에 대한 세부 정보를 제공합니다.

참고

Azure Sphere OS는 시작 시 주변 장치를 다시 설정하지 않습니다. 애플리케이션은 시작 시 또는 다시 시작한 후 주변 장치가 알려진 상태가 되도록 해야 합니다.

주변 장치를 사용하는 새 애플리케이션이 설치되고 다음 조건이 충족되면 디바이스 재부팅이 트리거됩니다.

디바이스 다시 부팅이 시작되면 다시 부팅이 완료되고 디바이스가 응답할 때까지 기다립니다.

항목 설명
실시간 지원 애플리케이션에서 ADC 사용 Azure Sphere에서 ADC(아날로그-디지털 변환기)를 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 GPIO 사용 Azure Sphere에서 GPIO(범용 입력/출력)를 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 GPT 사용 Azure Sphere에서 GPT(범용 타이머)를 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 I2C 사용 직렬 통신에 Inter-Integrated 회로(I2C)를 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 I2S 사용 Azure Sphere에서 I2S(통합 인터칩 사운드)를 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 PWM 사용 Azure Sphere에서 PWM(펄스 너비 변조)을 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 SPI 사용 직렬 통신에 SPI(직렬 주변 장치 인터페이스)를 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 UART 사용 직렬 통신에 UART를 사용하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 외부 인터럽트 사용 RTApp에서 외부 인터럽트를 사용하여 외부 신호에 응답하는 방법을 설명합니다.
실시간 지원 애플리케이션에서 Watchdog 타이머 사용 MT3620 실시간 코어에서 Watchdog 타이머를 사용하는 경우의 효과에 대해 설명합니다.