

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# NXP LPC54018 IoT 모듈 시작하기
<a name="getting_started_nxp"></a>

**중요**  <a name="deprecation-message"></a>
이 라이브러리는 더 이상 사용되지 않는 Amazon-FreeRTOS 리포지토리에서 호스팅됩니다. 새 프로젝트를 생성할 때는 [여기서 시작](freertos-getting-started-modular.md)하는 것이 좋습니다. 현재 사용되지 않는 Amazon-FreeRTOS 리포지토리를 기반으로 하는 기존 FreeRTOS 프로젝트가 이미 있는 경우에는 [Amazon-FreeRTOS Github 리포지토리 마이그레이션 가이드](github-repo-migration.md) 섹션을 참조하세요.

이 자습서에서는 NXP LPC54018 IoT 모듈을 시작하기 위한 지침을 제공합니다. NXP LPC54018 IoT 모듈이 없는 경우 AWS 파트너 디바이스 카탈로그를 방문하여 [파트너](https://devices.amazonaws.com/detail/a3G0L00000AANtAUAX/LPC54018-IoT-Solution)에서 구매하세요. USB 케이블을 사용하여 NXP LPC54018 IoT Module을 컴퓨터에 연결합니다.

시작하기 전에 AWS IoT 및 FreeRTOS 다운로드를 구성하여 디바이스를 클라우드에 AWS 연결해야 합니다. 자세한 내용은 [첫 번째 단계](freertos-prereqs.md) 섹션을 참조하세요. 이 자습서에서는 FreeRTOS 다운로드 디렉터리의 경로를 `freertos`라고 합니다.

## 개요
<a name="w2aac31b9b7c25c42c11"></a>

이 자습서에는 다음의 시작하기 단계에 대한 지침이 포함되어 있습니다.

1. 보드를 호스트 시스템에 연결합니다.

1. 마이크로 컨트롤러 보드용 내장형 애플리케이션을 개발 및 디버깅하기 위한 소프트웨어를 호스트 시스템에 설치합니다.

1. FreeRTOS 데모 애플리케이션을 바이너리 이미지로 크로스 컴파일합니다.

1. 애플리케이션 바이너리 이미지를 보드에 로드한 후 애플리케이션을 실행합니다.

## NXP 하드웨어 설정
<a name="nxp-setup-hardware"></a>

**NXP LPC54018을 설정하려면**
+ 컴퓨터를 NXP LPC54018의 USB 포트에 연결합니다.

**JTAG 디버거를 설정하려면**

NXP LPC54018 보드에서 실행되는 코드를 시작하고 디버깅하려면 JTAG 디버거가 필요합니다. FreeRTOS는 OM40006 IoT 모듈을 사용하여 테스트되었습니다. 지원되는 디버거에 대한 자세한 내용은 [OM40007 LPC54018 IoT Module](https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/lpc54018-iot-module-for-the-lpc540xx-family-of-mcus:OM40007) 제품 페이지에서 제공되는 *User Manual for NXP LPC54018 IoT Module*을 참조하세요.

1. OM40006 IoT 모듈 디버거를 사용하는 경우 디버거의 20핀 커넥터를 NXP IoT 모듈의 10핀 커넥터에 연결하려면 변환기 케이블을 사용합니다.

1. 미니 USB-USB 케이블을 사용하여 NXP LPC54018과 OM40006 IoT 모듈 디버거를 컴퓨터의 USB 포트에 연결합니다.

## 개발 환경 설정
<a name="setup-env_nxp"></a>

FreeRTOS는 NXP LPC54018 IoT 모듈에 대해 IAR Embedded Workbench 및 MCUXpresso라는 두 개의 IDE를 지원합니다.

시작하기 전에 이러한 IDE 중 하나를 설치합니다.

**IAR Embedded Workbench for ARM을 설치하려면**

1. [IAR Embedded Workbench for ARM](https://www.iar.com/iar-embedded-workbench/#!?architecture=Arm)로 이동하여 소프트웨어를 다운로드합니다.
**참고**  
IAR Embedded Workbench for ARM에는 Microsoft Windows가 필요합니다.

1. 설치 관리자를 실행하고 메시지에 따라 완료합니다.

1. **License Wizard(라이선스 마법사)**에서 **Register with IAR Systems to get an evaluation license(IAR Systems에 등록하여 평가 라이선스 받기)**를 선택합니다.

1. 데모를 실행하기 전에 디바이스에 부트로더를 배치합니다.

**NXP의 MCUXpresso를 설치하려면**

1. [NXP](https://www.nxp.com/support/developer-resources/software-development-tools/mcuxpresso-software-and-tools/mcuxpresso-integrated-development-environment-ide:MCUXpresso-IDE)에서 MCUXpresso 설치 관리자를 다운로드하여 설치합니다.
**참고**  
버전 10.3.x 이상이 지원됩니다.

1. [MCUXpresso SDK](https://www.nxp.com/support/developer-resources/software-development-tools/mcuxpresso-software-and-tools/mcuxpresso-software-development-kit-sdk:MCUXpresso-SDK)로 이동하여 **Build your SDK(SDK 빌드)**를 선택합니다.
**참고**  
버전 2.5 이상이 지원됩니다.

1. **Select Development Board(개발 보드 선택)**를 선택합니다.

1. **Select Development Board(개발 보드 선택)**의 **Search by Name(이름으로 검색)**에 **LPC54018-IoT-Module**를 입력합니다.

1. **Boards(보드)**에서 **LPC54018-IoT-Module**을 선택합니다.

1. 하드웨어 세부 정보를 확인한 다음 **Build MCUXepresso SDK(MCUXepresso SDK 빌드)**를 선택합니다.

1. MCUXpresso IDE를 사용하는 Windows용 SDK가 이미 빌드되어 있습니다. **Download SDK**를 선택합니다. 다른 운영 체제를 사용하는 경우 **Host OS(호스트 OS)**에서 해당 운영 체제를 선택한 다음 **Download SDK(SDK 다운로드)**를 선택합니다.

1. MCUXpresso IDE를 시작하고 **Installed SDKs(설치된 SDK)** 탭을 선택합니다.

1. 다운로드한 SDK 아카이브 파일을 **Installed SDKs(설치한 SDK)** 창으로 끌어서 놓습니다.

설치 중에 문제가 발생할 경우 [NXP Support(NXP 지원)](https://www.nxp.com/support/support:SUPPORTHOME?tid=sbmenu) 또는 [NXP Developer Resources(NXP 개발자 리소스)](https://www.nxp.com/support/developer-resources:DEVELOPER_HOME)를 참조하십시오.

## 클라우드에서 MQTT 메시지 모니터링
<a name="getting_started_nxp_mqtt_monitoring"></a>

FreeRTOS 데모 프로젝트를 실행하기 전에 AWS IoT 콘솔에서 MQTT 클라이언트를 설정하여 디바이스가 AWS 클라우드로 보내는 메시지를 모니터링할 수 있습니다.

**MQTT 클라이언트를 사용하여 AWS IoT MQTT 주제를 구독하려면**

1. [AWS IoT 콘솔](https://console.aws.amazon.com/iotv2/)에 로그인합니다.

1. 탐색 창에서 **테스트**를 선택한 다음 **MQTT 테스트 클라이언트**를 선택하여 MQTT 클라이언트를 엽니다.

1. **구독 주제**에 ***your-thing-name*/example/topic**을 입력한 다음 **주제 구독**을 선택합니다.

데모 프로젝트가 디바이스에서 성공적으로 실행되면 ‘Hello World\$1’가 구독한 주제로 여러 번 전송된 것을 볼 수 있습니다.

## FreeRTOS 데모 프로젝트 빌드 및 실행
<a name="nxp-build-and-run"></a>

### IDE로 FreeRTOS 데모 가져오기
<a name="nxp-freertos-import-project"></a><a name="nxp-load-project"></a>

**FreeRTOS 샘플 코드를 IAR Embedded Workbench IDE로 가져오려면**

1. IAR Embedded Workbench를 열고 **File(파일)** 메뉴에서 **Open Workspace(작업 공간 열기)**를 선택합니다.

1. **search-directory(검색 디렉터리)** 텍스트 상자에 `projects/nxp/lpc54018iotmodule/iar/aws_demos`를 입력하고 **aws\$1demos.eww**를 선택합니다.

1. **Project(프로젝트)** 메뉴에서 **Rebuild All(모두 다시 빌드)**을 선택합니다.

**FreeRTOS 샘플 코드를 MCUXpresso IDE로 가져오려면**

1. MCUXpresso를 열고 **File(파일)** 메뉴에서 **Open Projects From File System(파일 시스템에서 프로젝트 열기)**을 선택합니다.

1. **디렉터리** 텍스트 상자에 `projects/nxp/lpc54018iotmodule/mcuxpresso/aws_demos`를 입력하고 **마침**을 선택합니다.

1. **Project(프로젝트)** 메뉴에서 **Build All(모두 빌드)**을 선택합니다.

### FreeRTOS 데모 프로젝트 실행
<a name="nxp-run-example"></a>

**IAR Embedded Workbench IDE로 FreeRTOS 데모 프로젝트를 실행하려면**

1. IDE의 **프로젝트** 메뉴에서 **Make**를 선택합니다.

1. **Project(프로젝트)** 메뉴에서 **Download and Debug(다운로드 및 디버그)**를 선택합니다.

1. **Debug(디버그)** 메뉴에서 **Start Debugging(디버깅 시작)**을 선택합니다.

1. 디버거가 `main`의 중단점에서 중지되면 **Debug(디버그)** 메뉴에서 **Go(이동)**를 선택합니다.
**참고**  
**J-Link Device Selection(J-Link 디바이스 선택)** 대화 상자가 열리면 **OK(확인)**를 선택하여 계속합니다. **Target Device Settings(대상 디바이스 설정)** 대화 상자에서 **Unspecified(지정 안 함)**를 선택하고 **Cortex-M4**를 선택한 다음 **OK(확인)**를 선택합니다. 이 단계는 한 번만 수행하면 됩니다.

**MCUexpresso IDE로 FreeRTOS 데모 프로젝트를 실행하려면**

1. IDE의 **프로젝트** 메뉴에서 **빌드**를 선택합니다.

1. 처음 디버깅하는 경우 `aws_demos` 프로젝트를 선택하고 **디버깅** 도구 모음에서 파란색 디버그 버튼을 선택합니다.

1. 발견된 디버그 프로브가 표시됩니다. 사용할 프로브를 선택한 다음 **OK(확인)**를 선택하여 디버깅을 시작합니다.
**참고**  
디버거가 `main()`의 중단점에서 중지되면 디버그 다시 시작 버튼 ![\[Colorful logo with overlapping circles representing cloud services integration.\]](http://docs.aws.amazon.com/ko_kr/freertos/latest/userguide/images/reset.png)을 한 번 눌러 디버깅 세션을 재설정합니다. (이 단계는 NXP54018-IoT-Module용 MCUXpresso 디버거의 버그로 인해 필요합니다).

1. 디버거가 `main()`의 중단점에서 중지되면 **Debug(디버그)** 메뉴에서 **Go(이동)**를 선택합니다.

## 문제 해결
<a name="getting_started_nxp_troubleshooting"></a>

FreeRTOS 시작하기에 대한 일반 문제 해결 정보는 [시작하기 문제 해결](gsg-troubleshooting.md) 섹션을 참조하세요.