본문 바로가기

분류 전체보기

(1955)
#SAMD21E-S EVM - Arduino Zero 성능 테스트 ASMD21에 Arduino 를 올렸으니 간단히 성능 테스트를 해 봐야지... GPIO 토글 속도로 수행 속도를 측정해 보았다. 다른 MCU의 Arduino 코드에서 성능 테스트와 비교해 보면 클럭대비 나쁘지는 않은것 같다. 아두이노에서 제공하는 GPIO제어 함수(digitalWrite)로 GPIO 토글 하면 2.3us 정도 측정이 된다. #define PIN_OUT 27 #define Led1Off() PORT->Group[0].OUTCLR.reg = (1
#SAMD21E-S EVM - ATSAMD21E Arduino Zero Board 만들기 Arduino Code로 테스트 하면 이미 작성되어 있는 라이브러리가 많아서 간단하게 테스트 하기에 좋은것 같다. 그래서 SAMD21E EVM 보드에 아두이노 부트로더를 올려 보았다. #SAMD21E-S EVM 보드에 ATSAMD21 Arduino Bootloader 를 넣었더니 USB인식은 하는데 실제 Arduino IDE에서 구동하면 프로그램이 동작을 하지 않는다. ATSAMD21A 기준으로 작성된 bootloader라서 그런가... variant.cpp 파일을 수정 해 주어야 하나? ATSAMD21A 와 ATSAMD21E 용량 차이 때문에 그런것 같다. https://github.com/mattairtech/ArduinoCore-samd 에 SAMD21E를 이용하여 작성한 bootloader가 있다..
STM32H7 SPI - W5500 TCP/IP 전송속도 테스트 에러 문제 해결 STM32F7 evm 보드에서 테스트 했던 W5500 소스코드를 이용하여 STM32H7 보드에서 테스트 중인데 컴파일 에러가 발생한다. STM32F7 에서 W5500제어 테스트 에서 사용 했던 코드와 동일한데 왜 에러가 발생할까? #문제발생 에러코드 설명 자원 경로 위치 유형 expected identifier or '(' before numeric constant w5500.h /ex24_spi_w5500/Src 행 70 C/C++ Problem F7 코드에서는 문제가 없었는데... 에러를 찾아 가 보니 헤더파일의 선언 순서가 문제가 된다. 같은 컴파일러 인데 왜 문지가 되지? #문제해결 w5500.c #include "w5500.h" #include "config.h" #include "config...
#STM32G030 EVM - I2C 테스트 (TMP275 온도 센서의 온도 측정) #STM32G030 EVM - I2C 테스트 (TMP275 온도 센서의 온도 측정) STM32G-SSM EVM 보드는 표준 핀맵을 통일화 해서 다양한 확장보드에 공용으로 테스트 할 수 있도록 제작한 보드 이다. I2C도 핀 맵핑에 따라 동일한 위치에서 테스트 가능하다. SSM EVM표준 핀맵 SSM EVM 확장 테스트 보드 연결SSM EVM 표준 핀맵을 테스트 할수 있는 다양한 확장 테스트 보드를 이용해서 I2C 테스트를 진행 해 볼수 있다. 우선 I2C로 온도 값을 읽을 수 있는 TMP275 온도 센서 모듈을이용하여 SSM EVM 확장 테스트 보드에 연결하여 I2C를 테스트 해 보자. STM32CubeIDE를 이용하여 기본 핀맵 설정하고 I2C 셋팅을 한 후 코드 생성하면 자동으로 I2C 설정 코드가 ..
#STM32G030 EVM - UART 테스트 (STM32CubeIDE 에서 printf 사용하기) #STM32G030 EVM - UART 테스트 (STM32CubeIDE 에서 printf 사용하기) STM32g030F6에는 3채널의 UART포트가 있고 UART1(Tx-PB3, Rx-PB7) 포트가 보드상의 UART커넥터에 할당되어 있다. STM32CubeIDE에서 새로운 프로젝트를 생성하고 UART탭의 핀맵과 보레이트 등을 설정한다. STM32CubeIDE 로 코드 생성하면 자동 코드가 생성되고 기존 STM32 HAL코드와 동일하게 작성하면 UART 통신 테스트를 할 수 있다. int main(void){ /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------..
#STM32G0 STM32CubeIDE Timer Test - 1% HSI 이용 #STM32G0 STM32CubeIDE Timer Test - 1% HSI 이용 STM32G0 스펙을 보면 HSI클럭 부분에서 1%를 강조 하고 있다. 기존 칩보다 강점 이라고 내새우니 한번 테스트 해 봐야 겠다. Core: Arm® 32-bit Cortex®-M0+ CPU, frequency up to 64 MHz-40°C to 85°C/125°C operating temperatureUp to 64 Kbytes of Flash memory8 Kbytes of SRAM with HW parity check Voltage range: 1.7 V to 3.6 V 4 to 48 MHz crystal oscillator32 kHz crystal oscillator with calibrationInternal ..
CP2105 2Channel USB2UART 모듈 보드 제작 2채널의 USB2UART 기능이 있는 CP2105를 이용하여 USBTypeC 커넥터의 USB2UART 모듈 보드를 제작 했다. SSM 표준 핀맵으로 제작해 기존의 다양한 테스트 보드에 확장 연결하여 테스트 가능하도록 했다. USB를 연결하면 장치 관리자에서 2개의 가상 COM포트가 할당되는것을 확인 할수 있다.
STM32H7 EXTI 외부 인터럽트 테스트 STM32H7 EVM 보드에는 6개의 입력 스위치가 있고 5개의 외부 인터럽트를 테스트 할 수 있다. STM32CubeMx 를 이용하여 HAL 코드를 생성한다. 우선 핀맵에서 스위치가 연결되어 있는 포트 PC13을 GPIO_EXTI13 으로 설정한다. STM32CubeMx의 GPIO 탭에서 PC13을 풀업 설정을 해준다. 인터럽트를 설정하기 위해 EXTI line [15:10] interrupts 를 체크 한다. STM32CubeMx 에서 생성된 코드를 보면 GPIO초기화와, 인터럽트 초기화 코드가 생성된 것을 확인할 수 있다. static void MX_GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStruct = {0}; /* GPIO Ports Clock Enable..

반응형