개발자/Arduino

Arduino Portenta H7 처음 시작하기

지구빵집 2021. 2. 19. 10:15
반응형

 

 

Arduino Portenta H7 시작하기 이 튜토리얼은 보드를 설정하는 방법, 컴퓨터를 구성하는 방법 및 구성이 성공했는지 확인하기 위해 고전적인 Arduino 깜박임 예제를 실행하는 방법을 알려줍니다. 

 

Arduino 용 Portenta H7 설정 튜토리얼

 

Arduino 용 Portenta H7 설정

 

지금까지 가장 강력한 마이크로 컨트롤러 보드를 구입하신 것을 축하드립니다! 새 보드를 시험해보고 싶은 마음이 있지만 Portenta H7을 사용하여 Arduino 스케치를 실행하기 전에 컴퓨터와 Arduino IDE를 구성해야 합니다. 이 튜토리얼은 보드를 설정하는 방법, 컴퓨터를 구성하는 방법 및 구성이 성공했는지 확인하기 위해 고전적인 Arduino 깜박임 예제를 실행하는 방법을 알려줍니다.

 

Portenta H7의 장점 중 하나는 다양한 유형의 소프트웨어 코어를 지원한다는 것입니다. 코어는 특정 프로세서 세트를 위한 소프트웨어 API입니다. 하드웨어에서 직접 동작하는 digitalRead (), analogWrite (), millis () 등의 기능을 제공하는 API입니다.

 

튜토리얼을 작성하는 순간 Portenta와 함께 작업할 수 있는 Arduino 코어와 MicroPython 코어가 있습니다. 후자의 경우 C 또는 C ++가 아닌 인기 있는 프로그래밍 언어 Python으로 스케치를 작성하고 Portenta H7에서 실행할 수 있습니다.

 

이 튜토리얼은 Arduino 코어와 호환되는 C 및 C ++로 작성된 수천 개의 기존 Arduino 라이브러리와 코드 예제를 활용할 수 있는 Arduino 코어에 중점을 둡니다. MicroPython 코어를 사용한 개발을 위해 Portenta H7을 설정하는 방법에 대한 자습서가 곧 릴리스 될 예정입니다. 

 

배울 것

 

  • Arduino 및 Mbed 운영 체제 (Mbed OS) 스택 정보
  • Mbed 라이브러리 설치
  • Portenta 보드의 내장 LED 제어 

 

필수 하드웨어 및 소프트웨어

 

  • Wonders H7 보드
  • USB C 케이블 (USB A-USB C 또는 USB C-USB C)
  • Arduino IDE 1.8.10+ 또는 Arduino Pro IDE 0.0.4+ 

 

Portenta와 Arduino 코어

 

Portenta H7에는 Mbed OS를 실행하는 2 개의 Arm Cortex ST 프로세서 (Cortex-M4 및 Cortex-M7)가 장착되어 있습니다. Mbed OS는 마이크로 컨트롤러가 저전력에서 IoT 애플리케이션을 실행하도록 특별히 설계된 임베디드 실시간 운영 체제 (RTOS)입니다. 실시간 운영 체제는 일반적으로 버퍼 지연 없이 데이터가 들어오는 대로 처리하는 실시간 애플리케이션을 실행하도록 설계된 운영 체제입니다. 여기에서 실시간 운영 체제에 대해 자세히 알아볼 수 있습니다.

 

Portenta H7 용 Arduino 코어는 Mbed OS 위에 있으며 예를 들어 스토리지, 연결, 보안 및 기타 하드웨어 인터페이스를 처리하는 Mbed OS API를 사용하여 애플리케이션을 개발할 수 있습니다. 여기에서 Mbed OS API에 대해 자세히 알아볼 수 있습니다. 그러나 Arm® Mbed ™ 실시간 운영 체제의 강력한 기능을 활용하는 것은 복잡한 프로세스 일 수 있습니다. 따라서 우리는 Arduino 스케치를 실행할 수 있도록 하여 해당 프로세스를 단순화했습니다. 

 

Arduino 코어는 Mbed 스택 위에 구축됩니다.

 

개발 환경 구성

 

이 섹션에서는 내장 RGB LED를 깜박이는 Arduino Sketch를 실행하기 위해 Portenta 보드를 설정하는 단계별 프로세스를 안내합니다.

 

1. 기본 설정

적절한 USB C 케이블을 사용하여 Portenta를 컴퓨터에 연결하는 것으로 시작하겠습니다. 다음으로 IDE를 열고 컴퓨터에 올바른 버전의 Arduino IDE 또는 PRO IDE를 다운로드했는지 확인합니다. 

 

Portenta H7은 적절한 USB-C 케이블을 사용하여 컴퓨터에 연결할 수 있습니다.

 

2. 사용 가능한 보드 목록에 Portenta 추가

이 단계는 클래식 IDE와 Pro IDE 모두에서 동일합니다. 이사회 관리자를 열고 "portenta"를 검색합니다. Arduino mbed 지원 보드 라이브러리를 찾아 "설치"를 클릭하여 최신 버전의 mbed 코어 (이 자습서 작성 시점에 1.2.3)를 설치합니다.

 

참고 : 이전에 Nano 33 BLE 코어를 설치한 경우 이 단계에 따라 업데이트됩니다. 

 

"portenta"를 검색하면 Portenta H7을 지원하기 위해 설치해야하는 코어가 표시됩니다.

 

또한 Pro IDE에서 "portenta"를 검색하면 Portenta H7을 지원하기 위해 설치해야하는 핵심이 표시됩니다.

 

3. USB 연결 확인 (Windows 만 해당)

이 단계에서는 Windows가 Portenta H7을 감지할 수 있는지 확인합니다. 이렇게 하려면 Windows 장치 관리자를 열고 모든 것이 올바르게 설정되면 USB 장치 아래에 나열된 장치를 볼 수 있습니다. 그렇지 않으면 플러그를 뽑았다가 다시 연결해보십시오. 

 

Portenta H7이 올바르게 감지되면 USB 장치 아래의 장치 관리자에 나열됩니다.

 

4. 클래식 깜박임 스케치 업로드

보드에 대한 연결이 작동하는지 확인하기 위해 고전적인 깜박임 예제로 Portenta를 프로그래밍해 보겠습니다.

  • 클래식 Arduino IDE에서 메뉴 항목 File-> Examples-> 01.Basics-> Blink를 클릭하여 깜박임 예제를 엽니다.
  • Arduino Pro IDE에서 다음 코드를 복사하여 IDE의 새 스케치에 붙여 넣습니다. 
// the setup function runs once when you press reset or power the board
void setup() {
    // initialize digital pin LED_BUILTIN as an output.
    pinMode(LED_BUILTIN, OUTPUT);
    digitalWrite(LED_BUILTIN, HIGH); // turn the LED off after being turned on by pinMode()
}

// the loop function runs over and over again forever
void loop() {
    digitalWrite(LED_BUILTIN, LOW); // turn the LED on (LOW is the voltage level)
    delay(1000); // wait for a second
    digitalWrite(LED_BUILTIN, HIGH); // turn the LED off by making the voltage HIGH
    delay(1000); // wait for a second
}

 

Portenta H7에 내장된 RGB LED를 그라운드로 당겨서 불을 밝혀야 합니다. 즉, 각 핀의 전압 레벨이 LOW 이면 LED의 특정 색상이 켜지고 전압 레벨이 HIGH 이면 꺼집니다. 또한 pinMode (LED_BUILTIN, OUTPUT)를 호출하면 LED가 LOW가 되어 LED가 켜집니다. 

 

Portenta H7의 경우 LED_BUILTIN은 보드의 내장 RGB LED를 녹색으로 나타냅니다.

 

참고 : 내장 RGB LED의 개별 색상은 별도로 액세스하고 제어할 수 있습니다. 튜토리얼 "듀얼 코어 프로세싱"에서는 LED를 제어하여 다른 색상으로 조명하는 방법을 배웁니다. 

 

 

5. 깜박임 스케치 업로드

이제 스케치를 업로드하고 LED가 깜박이기 시작하는지 확인해야 합니다. Arduino Portenta H7 (M7 코어)을 보드로 선택하고 Portenta H7이 연결된 포트를 선택해야 합니다. Portenta H7이 포트 목록에 표시되지 않으면 5 단계로 돌아가 드라이버가 올바르게 설치되었는지 확인하십시오. 선택한 후 업로드를 클릭합니다. 업로드되면 내장 LED가 1 초 간격으로 깜박이기 시작합니다.

 

참고 : Portenta H7에는 별도의 코어를 실행하는 M7 및 M4 프로세서가 있습니다. 그렇기 때문에 스케치를 업로드할 대상을 선택해야 합니다 (Portenta의 프로세서에 대해 자세히 알아보려면 "듀얼 코어 처리"자습서를 확인하십시오). 

 

보드 선택기에서 Arduino Portenta H7 (M7 코어)을 선택합니다.

 

Arduino Portenta H7 (M7 코어) 선택

 

결론 이제 Arduino 스케치를 실행하도록 Portenta 보드를 구성했습니다. 이와 함께 Arduino Core가 Mbed OS에서 어떻게 실행되는지에 대한 이해를 얻었습니다. 

 

다음 단계

  • Portenta H7의 두 프로세서를 사용하여 두 개의 개별 작업을 동시에 수행하는 방법을 배우려면 다음 자습서 "듀얼 코어 프로세싱"을 진행하십시오.
  • 여기에서 Mbed를 기반으로 선택한 이유에 대해 자세히 알아보십시오. 

 

문제 해결

스케치 업로드 문제 해결

 

스케치를 업로드 작업 중에 업로드에 실패했다는 오류 메시지가 표시되면 Portenta H7이 부트 로더 모드에 있는 동안 스케치를 업로드할 수 있습니다. 이렇게 하려면 재설정 버튼을 두 번 클릭해야 합니다. 녹색 LED가 페이드 인 / 아웃되기 시작합니다. 스케치를 다시 업로드하십시오. 업로드가 완료되면 녹색 LED가 페이딩을 중지합니다. 

 

재설정 버튼을 두 번 클릭하면 보드가 부트 로더 모드로 전환됩니다.

 

USB 허브 문제 해결

 

USB 허브를 사용하여 다른 장치를 Portenta에 연결하려면 해당 장치에 전원을 공급할 수 있는 활성 USB 허브인지 확인하십시오. 패시브 허브는 작동하지 않습니다. 활성 USB 허브를 사용하고 있지만 여전히 작동하지 않는 경우 지원되지 않는 모델 일 수 있습니다. 

 

Ubuntu 문제 해결

 

Portenta를 Ubuntu에서 작동하는 데 문제가 있는 경우 다음을 시도할 수 있습니다. 

 

Portenta를 Ubuntu에서 작동하는 데 문제가있는 경우 시도

 

원문 자료는 이곳을 참고하세요.

 

 

 

반응형