본문 바로가기

SAMD21

(14)
[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\zeroBootloader_D21_M0_150515.hexBootloader_D2..
[SAMD21 EVM] - UART 테스트 [SAMD21 EVM] - UART 테스트 SAM D 시리즈의 특징으로 멀티 SERCOM모듈을 들수 있다. SERCOM 은 I2C, SPI or USART를 쉽게 할당해서 유연하게 사용 할 수 있는 장점이 있다. 특히 IO핀을 다양한 형태로 할당 할 수 있으므로 PCB설계에 있어 자유롭게 제작 가능하다. SAMD21 UART 초기화 설정 코드SAMD21 EVM의 UART는 SERCOM2의 PA13(PAD1)->RXD, PA14(PAD2)->TXD 에 할당이 되어 있으므로 아래와 같이 핀맵 설정할 수 있다.struct usart_config usart_conf; usart_get_config_defaults(&usart_conf);usart_conf.mux_setting = USART_RX_1_TX_2_X..
[SAMD21 EVM] - 타이머 인터럽트 테스트 [SAMD21 EVM] - 타이머 인터럽트 테스트 Cortex-M0 코어를 사용하는 CPU와 거의 유사하게 사용할 수 있는것 같다. SAMD21 타이머 인터럽트 핸들러void SysTick_Handler(void){ Led2Toggle();} ATSAMD21 타이머 인터럽트 테스트 예제코드int main(void){system_init(); //1ms setting SysTick_Config(48000); Led1Init();Led2Init(); while (true) { }}
[SAMD21 EVM] CPU 클럭 설정 및 성능 측정 실험 [SAMD21 EVM] CPU 클럭 설정 및 성능 측정 실험 SAMD 시리즈는 Cortex-M0 코어의 48Mhz 로 동작하고 여러 다양한 기술로 페리의 병목현상을 줄여 성능 향상을 했다고 한다. 일단 GPIO 제어로 간단히 속도 테스트를 해보도록 하자. 우선 아래 코드와 같이 ATMEL에서 제공하는 코드를 이용하여 GPIO 토글 속도 테스를 해 보았다. int main(void){system_init(); Led1Init(); Led2Init(); while (true) { port_pin_toggle_output_level(PIN_PB30);}} GPIO토글 속도600khz로 출력된다.느리다. 아무래도 클럭 설정에 문제가 있는것 같다. conf_clocks.h 파일에 클럭 설정하는 부분이 있다.디폴트..
[SAMD21 EVM] 개발환경 설정 - IAR 을 이용한 환견 설정 [SAMD21 EVM] 개발환경 설정 - IAR 을 이용한 환견 설정 SAMD21 시리즈를 위한 개발환경은 여러가지가 있지만 익숙하고 간단히 사용할 수 있는 IAR 컴파일러를 이용하면 편리하다. 무엇보다 JLINK를 지원하기 때문에 좋은것 같다.IAR 7.2 이상 필요하다. ATMEL에서 제공하는 소프트웨어로 AVRSOFTWAREFRAMEWORK를 이용하면 쉽게 개발 환경을 구축 할 수 있다. http://www.atmel.com/tools/AVRSOFTWAREFRAMEWORK.aspx 다만 ATMEL에서 제공하는 다양한 MCU를 지원하다보니 복잡하고 불필요 한 것들이 너무 많은것 같다. IAR 7.2버전을 이용하여 프로젝트를 생성하고 칩셋을 선택 한다. ATSAMD21J18A 를 잉용하여 보드를 제작했..
[SAMD21 EVM] - ATSAMD21J18 테스트 보드 제작 [SAMD21 EVM] - ATSAMD21J18 테스트 보드 제작 SMART SAM D 시리즈는 Cortex®-M0+ 코어의 ATMEL사의 MCU로 저전력, 저가격의 목적으로 출시되 었다. 특히 아두이노 (Arduino ZERO) 보드에 적용되면서 핫 이슈가 되고 있어 테스트용 보드로 제작해 보았다. 최대 48Mhz로 동작하고 Mhz당 70μA전력이하 전력 소모로 저전력 이다.AVR Studio를 이용하면 개발 환경이 무료 이다. 또는 Arduino Software (IDE)를 이용할 수도 있다.그리고 Real Time Clock (RTC) 와 Calendar (leap year correction and 1ppm calibration)가 있어 편리한것 같다. SM-Type EVM 형태로 핀맵을 통일화 ..