본문 바로가기

SAMD_STUDY

(4)
[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 를 잉용하여 보드를 제작했..