본문 바로가기

EFM32_STUDY

(11)
EFM32G210 EVM - 저전력 Embedded Web Server 테스트 EFM32G210 EVM - 저전력 Embedded Web Server 테스트 EFM32G210의 장점으로 Cortex-M3코어(128k Flash/16k RAM)에 저전력으로 구동 된다. 소형에 저렴하면서 플래시와 램이 풍부해서 소형 임베디드 웹서버 제작하기에 좋을것 같다. 간단히하기 위해 내부 플레쉬메모리에 웹서버를 구현 해 보았다. 할당된 IP에 접속하면 출력될 Web Page간단한 이미지와 입출력 제어를 위한 CGI코드로 구성되어 있다. EFM32 Web Server 테스트 동영상
EFM32G210 EVM - ADC 테스트 (Potentiometer 값을 TFT LCD 그래프로 표시하기) EFM32G210 EVM - ADC 테스트 (Potentiometer 값을 TFT LCD 그래프로 표시하기) EFM32G210은 8개의 12bit ADC포트가 있고 1개의 온도센서가 내장되어 있다. EFM32 ADC의 특징은 아래와 같다.Ultra low power precision analog peripherals - 12-bit 1M samples/s Analog to Digital Converter - 4 single ended channels/2 differential channels - On-chip temperature sensor - Conversion tailgating for predictable latency EFM32 ADC 블록도 EFM32G210f128 ADC 핀맵 EFM32 AD..
EFM32G210 EVM - SD Card를 이용한 TFT LCD 전자액자 테스트 (SPI 제어 방식) EFM32G210 EVM - SD Card를 이용한 TFT LCD 전자액자 테스트 (SPI 제어 방식) EFM32의 최대 장점은 저전력 동작이면서 Cortex-M3의 성능을 가지고 있는것이다. 저전력이 요구되는 휴대용 전자 액자를 만들어 보면 좋을것 같다. [I1511 TFT LCD] 모듈을 이용하여 TFT LCD 테스트를 해 보았다. [Xmega32-EX] 확장 보드에서 SD Card는 1번부터 PB8(SD_CS), MISO, MOSI, SCLK, PF2(LCD_CS)로 연결되어 있다. SPI방식의 TFT LCD 모듈 핀맵 EFM32 TFT LCD 드라이버 코드//----------------------------------------------------------------------------- ..
EFM32 Timer 테스트 - 타이머 인터럽트로 1초 만들기 EFM32 Timer 테스트 - 타이머 인터럽트로 1초 만들기 EFM32 Timer 초기화 함수 void InitTimer0(void) { // Enable clock for TIMER0 module CMU_ClockEnable(cmuClock_TIMER0, true); //Select TIMER0 parameters TIMER_Init_TypeDef timerInit = { .enable = true, .debugRun = true, .prescale = timerPrescale1024, .clkSel = timerClkSelHFPerClk, .fallAction = timerInputActionNone, .riseAction = timerInputActionNone, .mode = timerModeU..
EFM32G210 EVM - PWM테스트 (RGB LED 제어) EFM32G210 EVM - PWM테스트 (RGB LED 제어) EFM32는 6개의 PWM출력을 할수 있다. PWM을 이용하여 [Xmega32-EX EVM] 확장 테스트 보드에서 RGB LED 조면제어 테스트를 해 보았다. EFM32 PWM 기능- Up-count PWM- Up/down-count PWM- Predictable initial PWM output state (configured by SW)- Buffered compare register to ensure glitch-free update of compare values EFM32 PWM 출력 핀맵EFM32는 PWM출력을 위한 2개의 타이머가 있고 각각 3채널, 6개의 PWM을 출력할 수 있다. EFM32G210F128 Timer 블록도 3..
EFM32G210 EVM - SPI 테스트 EFM32G210 EVM - SPI 테스트 EFM32의 SPI최대 클럭 속도는 14Mhz 까지 동작한다. (최대 peripheral clock이 28Mhz 이므로.. )- SPI master mode, peripheral clock rate/2 EFM32G210 EVM 보드에서 SPI핀을 USART1에 할당하였다. EFM32 SPI 블록도 EFM32 SPI 초기화 함수void SPI0_Init(void){ CMU_ClockEnable(cmuClock_USART1, true); USART_TypeDef *SPI0; SPI0 = USART1; /* Setting baudrate */ SPI0->CLKDIV = 128 * (SPI_PERCLK_FREQUENCY / SPI_BAUDRATE - 2); /* Con..
EFM32G210 EVM - UART 테스트 EFM32G210 EVM - UART 테스트 MCU를 처음 다룰때 디버깅 및 제어를 위해 가장 기본적으로 필요한 인터페이스 수단으로 UART를 사용하는데 EFM32는 2채널의 UART가 있다. 특히 Low Energy UART 기능이 있어 저전력으로 UART통신을 할 수 있다고 한다. EFM32 UART 블록도 EFM32 UART 핀맵 PE10, PE11 에 UART0가 연결되어 있다. PC0, PC1에 UART1이 연결되어 [EFM32 EVM] 보드에서는 있지만 SPI로 사용하고 있다. EFM32 UART 초기화코드 void U0_Init(unsigned char baud) { USART_InitAsync_TypeDef init = USART_INITASYNC_DEFAULT; USART_TypeDef ..
EFM32 성능테스트 - 클럭 설정 및 소비 전류 테스트 EFM32 성능테스트 - 클럭 설정 및 소비 전류 테스트 EFM32 는 Cortex-M3코어의 저전력 기능이 강화된 MCU이다. 저전력을 위해 여러가지 기능들이 많이 있다. 저전력 기능중 가장 큰 부분인 클럭 부분을 살펴 보면 칩내부에 있는 HFRCO, LFRCO 와, 칩외부에서 공급할수 있는 HFXO, LFXO로 나누어 진다. 초기에 리셋되면 디폴트로 내부 28Mhz를 2분주한 14Mhz로 구동이 된다. HFRCO : 1-28 Mhz High Frequency RC Oscillator LFRCO: 32.768 kHz Low Frequency RC Oscillator HFXO: 4-32 Mhz High Frequency Crystal Oscillator LFXO: 32.768 kHz Low Frequen..