[ST_MICRO] (268) 썸네일형 리스트형 [STM32G4-SM EVM] STM32G431 Arduino SPI 테스트 기존 STM32F4 시리즈와 비교 해서 하드웨어 적으로 개선된 부분이 있다고 하는데 특히 SPI클럭이 fPCLK/2 (Maximum speed at master mode – 75 MHz) 이다 STM32G4 의 MCU클럭은 최대 180Mhz 으로 85Mhz 까지 가능하다. STM32G431 로 Arduino 에서 SPI 클럭 출력 테스트를 해 보자 #define PIN_OUT PC13 #include void setup() { Serial.begin(115200); Serial.println("SPI tst.."); pinMode(PIN_OUT, OUTPUT); digitalWrite(PIN_OUT, 0); delay(2000); SPI.begin(); SPI.setClockDivider(SPI_CLOC.. [STM32G4-SM EVM] STM32G431 Dhrystone, Whetstone 벤치마크 테스트 STM32G4 시리즈는 저렴한(2$대) 가격의 고성능 ARM Cortex M4 코어이다. 벤치마크로 MCU성늘을 측정해 보자 MCU 성능 측정을 할수 있는 벤치마크 방법은 여러가지가 있지만 Dhrystone, Whetstone 방식을 많이 사용한다. 각각의 특징은 아래와 같다. Dhrystone - 정수(ALU)연산성능 측정, MIPS 수치로 표기 Whetstone - 부동소수점(FPU)연산성능 측정, MFLOPS 수치로 표기 테스트 코드는 STM32H MCU Dhrystone, Whetstone, IIR Benchmark 성능 테스트 를 이용하였다. 기본 코드로 테스트 해보면 170Mhz 클럭 정도의 성능이 나오는것 같다. Whetstone Benchmark, Version 1.2 (Language: .. [STM32G4-SM EVM] STM32G431 Arduino 만들기 ARDUINO-SM EXP 보드를 이용하여 STM32G431의 Arduino 보드를 만들어 보자 Arduino Board 파일은 https://github.com/stm32duino/Arduino_Core_STM32 를 사용한다. 먼저 Arduino https://github.com/stm32duino/BoardManagerFiles/raw/main/package_stmicroelectronics_index.json Arduino Boards Manager 에서 Genernic STM32G4 Series를 선택한다. Board part number를 ELAB_G431_SM 보드를 선택 한다. Generic G431 보드파일을 수정해서 ELAB_G431SM 보드파일로 만들었다. STM32G431 Ardui.. [STM32G4 SM EVM] STM32CubeIDE TFT LCD(COM26T2844) 테스트 STM32G4-SM 보드는 SM Type EVM 형태의 표준 핀맵으로 제작되었고 확장 테스트 보드에서 기존에 제작 해 두었던 여러가지 보드를 테스트 할 수 있다. STM32G431는 GPIO 속도도 빠르기 때문에 LCD 테스트 해 보면 좋을 것 같다. 확장 테스트 보드의 LCD에는 8bit 방식으로 연결되어 있다. 8비트 방식을 16비트 방식으로 변환 해 주는 LCD_CONV 테스트 보드에 연결하여 테스트 했다. STM32CubeIDE 를 이용하여 TFT_LCD 모듈(COM26T2844) 를 위한 핀맵을 설정하고 기본 코드를 구동하면 정상 동작한다. #define LCD_LAT_BITBIT14 #define LCD_LAT_PORTGPIOC #define LCD_LAT_ON()sbi(LCD_LAT_PORT.. [STM32G431 EVM] 성능 테스트 (STM32CubeIDE) STM32G4 시리즈는 최대 170Mhz로 구동되는 CortexM4 코어로 저렴하면서 성능도 좋은 MCU인것 같다. 기본 성능 테스트를 해 보자. STM32CubeIDE 를 이용하여 STM32G4 프로젝트를 생성한다. 기본 핀 맵을 설정한다. 클럭설정은 최대 클럭인 170Mhz로 설정한다. STM32G431 GPIO 토글 속도 테스트 소스코드 int main(void) { /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ /* MCU Configuration--------------------------------------------------------*/ /* Reset of all peripherals, Initializes the Flash interface an.. [STM32G4 SM EVM] 보드 제작 - STM32G431 테스트 소형 페키지중 최대 성능을 사용 할 수 있는 MCU를 찾다가 48핀 패키지의 STM32G431을 테스트 해 볼 수 있는 보드를 제작 했다. Cortex-M4코어에 170Mhz로 동작 한다. STM32F 시리즈는 핀맵이 호환이 되지만 STM32G 시리즈와 핀맵이 호환이 되지 않아 새롭게 SM-Type 핀맵으로 만들었다. [STM32-64 Ardu] STM32F732 Arduino - BNO055 9축 IMU 센서 테스트 STM32F732 Arduino I2C 테스트를 참고 해서 9축 IMU센서 BNO055 센서 모듈을 테스트 해보자. 우선 BNO055 센서 라이브러리를 설치 한다 https://github.com/adafruit/Adafruit_BNO055 BNO055 기본 예제 #include #include #include #include /* Set the delay between fresh samples */ #define BNO055_SAMPLERATE_DELAY_MS (100) // Check I2C device address and correct line below (by default address is 0x29 or 0x28) // id, address Adafruit_BNO055 bno = Adafru.. [STM32-64 Ardu] STM32F732 Arduino I2C 테스트 - TMP100 온도 센서 테스트 STM32F732 보드에서 Arduino I2C 테스트를 진행 해보자. 가장 간단하게 테스트 할 수 있는 SSM 확장 보드를 이용해서 I2C 온도 센서 모듈 TMP100 을 이용하여 온도 값을 읽어오는 예제를 테스트 해 보자. 우선 가장 간단히 I2C로 온도 센서 값을 읽어 올 수 있는 코드를 작성해서 테스트 해보자 #include #define TMP100_ADDR 0x4c float read_temp(unsigned char address) { byte temp_reg = 0; byte a, b; float temp=.0; Wire.beginTransmission(address); // Start transmission Wire.write((byte)temp_reg); // 온도 레지스터 Wire.e.. 이전 1 ··· 3 4 5 6 7 8 9 ··· 34 다음