본문 바로가기

[ATMEL]/SAMD21

[SAMD21 EVM] 아두이노 제로(Arduino Zero) 보드 만들기

[SAMD21 EVM] 아두이노 제로(Arduino Zero) 보드 만들기




Arduino Zero 보드는 ATSAMD21G18을 이용한 보드 이다. [SAMD21 EVM] 보드에 부트로더만 다운로드 하면 쉽게 Arduino Zero 보드를 제작 할 수 있다. 


테스트는 [SAMD21 EVM] 보드와 모든 포트가 출려되는 STM32-48 EXP 확장 테스트 보드를 이용 하여 진행 하였다.


먼저 ARDUINO 최신 프로그램부터 다운로드 한다.



Arduino Zero 부트로더 설치

부트로더는 아래 폴더에 있고 JTAG를 이용하여 다운로드 하면 된다.

arduino-1.7.8\hardware\arduino\samd\bootloaders\zero

Bootloader_D21_M0_150515.hex

Bootloader_D21_M0_Pro_150427.hex


Bootloader_D21_M0_150515.hex




J-Link Lite를 이용하여 부트로더를 먼저 다운로드 한다. 

https://www.segger.com/jlink-software.html

(기존 SAM 시리즈와 같이 SAM-BA 를 통해 다운로드 할수 있도록 했으면 완벽할것 같은데.... 아쉬운점이다.)




ARDUINO M0 부트로더가 정상적으로 다운로드 되었다면 USB연결하고 ARDUINO CC로 테스트 프로그램을 다운드 해 보자.




USB연결하면 Arduino M0 장치를 검색하고 드라이버를 찾는다.  

아래와 같이 aruino 설치한 폴더에 드라이버 파일을 찾을 수 있다.

D:\arduino-1.7.8\drivers








Arduino 환경 설정

보드는 Arduino M0 Pro (Native USB Port)를 선택한다.



시리얼 포트는 USB로 인식힌 시리얼 포트를 선택 한다.




Arduino 기본 예제 테스트

간단히 GPIO를 토글 하는 예제를 테스트 해 보았다.

컴파일 완료 되고 다운로드도 문제없이 진행 되는것을 확인 했다.

이제 간단히 Arduino 프로그램을 이용하여 간단히 [SAMD21 EVM] 보드를 제어할 수 있다.




Arduino 기본 예제 테스트 동영상

Arduino CC의 기본 제공 예제인 PIN12(PA17), PIN13(PA19)를 토글 하는 예제이다.




Arduino Zero 보드를 테스트 해보고...

기존 AVR을 이용한 Arduino 보드와 비교해 보면 성능면에서는 상당히 좋은것 같다.

다만 SAMD21의 고유 기능들을 모두 사용하려면 까다로운 설정을 해 주어야 하고 기존 기능과 호환성을 위해서 성능면에서 포기 해야 하는것들이 많이 있는것 같다.



소프트웨어 측면에서 간단히 사용하기는 좋을것 같은데 제한된 리소스(비용) 내애서 최대 성능을 끌어내야 하는 하드웨어 측면에서 보면 Arduino를 포팅해서 사용할 필요가 있을까 싶다.(순전히 하드웨어 엔지어어 입장에서 생각해 본 의견이다.)


컴파일도 IAR보다는 속도나 성능면에서 떨어지는것 같고프로그램 다운로드도 JTAG를 사용하는것 보다 불편한점이 많은것 같다.




Ardunio Zero 핀맵

 * + Pin number +  ZERO Board pin  |  PIN   | Label/Name      

 * +------------+------------------+--------+-----------------

 * |            | Digital Low      |        |                 

 * +------------+------------------+--------+-----------------

 * | 0          | 0 -> RX          |  PA11  |                 

 * | 1          | 1 <- TX          |  PA10  |                 

 * | 2          | ~2               |  PA08  |                 

 * | 3          | ~3               |  PA09  |                 

 * | 4          | ~4               |  PA14  |                 

 * | 5          | ~5               |  PA15  |                 

 * | 6          | ~6               |  PA20  |                 

 * | 7          | ~7               |  PA21  |                 

 * +------------+------------------+--------+-----------------

 * |            | Digital High     |        |                 

 * +------------+------------------+--------+-----------------

 * | 8          | ~8               |  PA06  |                 

 * | 9          | ~9               |  PA07  |                 

 * | 10         | ~10              |  PA18  |                 

 * | 11         | ~11              |  PA16  |                 

 * | 12         | ~12              |  PA19  |                 

 * | 13         | ~13              |  PA17  | LED             

 * | 14         | GND              |        |                 

 * | 15         | AREF             |  PA03  |                 

 * | 16         | SDA              |  PA22  |                 

 * | 17         | SCL              |  PA23  |                 

 * +------------+------------------+--------+-----------------

 * |            |SPI (Legacy ICSP) |        |                 

 * +------------+------------------+--------+-----------------

 * | 18         | 1                |  PA12  | MISO            

 * | 19         | 2                |        | 5V0             

 * | 20         | 3                |  PB11  | SCK             

 * | 21         | 4                |  PB10  | MOSI            

 * | 22         | 5                |        | RESET           

 * | 23         | 6                |        | GND             

 * +------------+------------------+--------+-----------------

 * |            | Analog Connector |        |                 

 * +------------+------------------+--------+-----------------

 * | 24         | A0               |  PA02  |                 

 * | 25         | A1               |  PB08  |                 

 * | 26         | A2               |  PB09  |                 

 * | 27         | A3               |  PA04  |                 

 * | 28         | A4               |  PA05  |                 

 * | 29         | A5               |  PB02  |                 

 * +------------+------------------+--------+-----------------

 * |            | LEDs             |        |                 

 * +------------+------------------+--------+-----------------

 * | 30         |                  |  PB03  | RX              

 * | 31         |                  |  PA27  | TX              

 * +------------+------------------+--------+-----------------

 * |            | USB              |        |                 

 * +------------+------------------+--------+-----------------

 * | 32         |                  |  PA28  | USB HOST ENABLE 

 * | 33         |                  |  PA24  | USB_NEGATIVE    

 * | 34         |                  |  PA25  | USB_POSITIVE    

 * +------------+------------------+--------+-----------------

 * |            | EDBG             |        |                 

 * +------------+------------------+--------+-----------------

 * | 35         |                  |  PB22  | EDBG_UART TX    

 * | 36         |                  |  PB23  | EDBG_UART RX    

 * +------------+------------------+--------+-----------------

 * | 37         |                  |  PA22  | EDBG_SDA        

 * | 38         |                  |  PA23  | EDBG_SCL        

 * +------------+------------------+--------+-----------------

 * | 39         |                  |  PA19  | EDBG_MISO       

 * | 40         |                  |  PA16  | EDBG_MOSI       

 * | 41         |                  |  PA18  | EDBG_SS         

 * | 42         |                  |  PA17  | EDBG_SCK        

 * +------------+------------------+--------+-----------------

 * | 43         |                  |  PA13  | EDBG_GPIO0      

 * | 44         |                  |  PA21  | EDBG_GPIO1      

 * | 45         |                  |  PA06  | EDBG_GPIO2      

 * | 46         |                  |  PA07  | EDBG_GPIO3      

 * +------------+------------------+--------+-----------------

 * |            |32.768KHz Crystal |        |                 

 * +------------+------------------+--------+-----------------

 * |            |                  |  PA00  | XIN32           

 * |            |                  |  PA01  | XOUT32          

 * +------------+------------------+--------+-----------------





반응형