본문 바로가기

STM32G

(8)
#STM32G-SSM EVM - Arduino 코드로 SPI 테스트 [STM32G-SSM] 보드에서 Arduino 코드로 SPI출력 하면 멈춰 버린다. variant.h 파일에서 핀맵 맞추고 PinMap_SPI_MOSI[0] 에 SPI2가 디폴트가 되도록 수정 했다. #include unsigned char spixfer(unsigned char Data) { return SPI.transfer(Data); } int cnt = 0; void loop() { Serial.println(cnt++); digitalWrite(12, HIGH); delay(100); spixfer(0xff); digitalWrite(12, LOW); delay(100); } SCLK출력은 나오는데(기본 4Mhz) MOSI 출력이 나오지 않는다. STM32CubeMx 에서 생성된 코드를 보니 ..
#STM32G-SSM EVM - Arduino 성능 테스트 STM32G0를 이용한 Arduino 만들기로 STM32G0가 Arduino 개발 환경에서 동작하므로 이제 Arduino에서 간단한 성능 테스트를 해 보자 Arduino에서 기본 제공하는 GPIO제어 함수로 토글 해보았다. #define PIN_OUT 12 void setup() { pinMode(PIN_OUT, OUTPUT); } void loop() { digitalWrite(PIN_OUT, HIGH); // turn the LED on (HIGH is the voltage level) digitalWrite(PIN_OUT, LOW); // turn the LED off by making the voltage LOW } 920ns (300khz) 정도 출력된다. 루프지연 시간도 2.6us 로 상당히 ..
#STM32G0-SSM - STM32G0를 이용한 Arduino 만들기 STM32G 시리즈도 Arduino 환경에서 개발 가능하다. Ardunio를 사용하면 기존 라이브러리를 그대로 사용할 수 있어서 간단히 테스트 하기에는 편리 한것 같다. 우선 전체 환경 설정은 variants 폴더의 DISCO_G0316 를 기준으로 제작했다. 핀맵은 STM32G0-SSM EVM보드를 기준으로 수정했고 보드 메니저에서 STM32G_SSM 로 표기 되도록 했다. STM32G Arduino 기본 핀맵 const PinName digitalPin[] = { PA_0, //0 SCLK PA_1, //1 I2S_CK PA_2, //2 I2S_SD PA_5, //3 PA_6, //4 I2S_MCK PA_7, //5 PA_11, //6 SCL PA_12, //7 SDA PA_3, //8 MISO PA..
#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 ..
#STM32G STM32CubeIDE 를 이용한 개발환경 설정 및 성능 테스트 #STM32G STM32CubeIDE 를 이용한 개발환경 설정 및 성능 테스트 [STM32G031-SSM] 보드를 이용하여 개발 환경 설정 및 STM32G0의 성능 테스트를 해 보았다. 처음에 STM32CubeMx를 이용하여 코드를 생성하려고 진행 했는데.. 설정 다 하고 코드 생성하려는 순간 STM32G 시리즈는 CubeMx에서 지원을 하지 않는다고 한다. 알아보니 STM32CubeIDE를 이용하라고 한다. STM32CubeIDE로 STM32G시리즈 선택해서 새로운 프로젝트를 생성 핀맵 설정CubeMx와 거의 동일하게 동작하는것 같다. STM32CubeIDE 클럭 설정최대 64Mhz까지 설정 가능하다. 기본 설정 완료후 STM32CubeIDE에서 저장 하면 기본 코드가 생성된다. [STM32G031-S..
#STM32G0-SSM EVM 보드 제작 - STM32G031F6 #STM32G0M-SSM EVM 보드 제작 - STM32G031F6 STM32의 저렴한 MCU로 STM32F0 를 많이 사용하고 있었는데 성능면에서 약간 아쉬울 때가 있으면 STM32F1 시리즈 F4시리즈를 선택 해야 한다. 성능을 위해 가격을 올리기가 약간 부담스러울 때가 있었는데 이번에 STM32G가 출시 되었다고 해서 제작 해 보았다. 한가지 아쉬운점은 기존의 STM32F시리즈와 핀 호환이 안된다. ST의 가장 큰 장점 이었는데... 보드는 가장 간단히 MCU및 센서모듈등의 표준 핀맵으로 사용하는 SSM 모듈 핀맵으로 20핀 TSSOP패키지의 STM32G031F6 로 제작 했다. STM32G의 장점으로 온도 스펙이 -40 ~ 125도로 산업용으로 적용 가능해 졌다. ADC속도도 빨라지고 내부 클럭 ..