본문 바로가기

전체 글

(1955)
GD32F130 SSM - 개발환경 설정 (STM32CubeIDE 오류, Arduino 만들기) 기존에 사용했던 GD시리즈는 STM32과 동일한 핀맵이고 개발툴도 STM32CubeIDE를 그대로 사용하여 개발 할 수 있었는데 GD32F130은 동일하게 동작하지 않는다. 아무래도 ST사에서 사용할수 없도록 하지 않았을까... [GD32-48 SSM] GD32F303 개발환경 설정 및 성능 테스트(STM32CubeIDE 이용) GigaDevice사의 GD32시리즈는 STM32시리즈와 동일 핀맵으로 호환 가능하으로 STM32를 대체해서 사용 할수 있다고 한다. 우선 GD32의 개발환경 설정과 간단한 성능 측정을 해 보자 개발환경은 ST사의 STM32C nexp.tistory.com 우선 STM32CubeProgramer 에서 디바이스 인식은 되지만 프로그램이 정상적으로 Write되지 않는다. 디바이스 I..
GD32F130 SSM - 보드 제작 간단한 프로젝트에 적용하는 1$이하 MCU로 STM32F030 시리즈중 TSSOP 20핀 타입을 가장 많이 사용 하는데 반도체 품귀 현상으로 부품 수급이 쉽지 않다. GigaDevice 사의 MCU는 ST와 동일한 핀맵으로 제작 되기 때문에 쉽게 대체 가능하고 20핀 대체용으로 GD32F130을 추천 받았다. 그래서 기존 STM32F030 SSM 보드에 납땜 해서 테스트 해 보았다. GD32F1 시리즈는 Cortex-M3코어로 최대 속도는 시장 제품보다 50% 증가고 동일한 주파수에서 코드 실행 효율성은 30~40% 향상되었으며 전력 소비는 20~30% 감소했다고 한다. STM32F030F4P6 의 경우 16k Flash가 최대 인데 GD32F130F6P6의 경우 동일한 패키지에 64k Flash를 지원..
STM32WB55 SSM - Zigbee 저전력 테스트 이번 프로젝트에서 초 저전력으로 주기적인 데이터 수집이 목표이다. AAA 배터리로 3년을 지속 할 수 있는 것이 목표 이다. 계산상으로 대기모드에서 15uA 이하가 유지 되어야 한다. STM32WB시리즈의 Zigbee 대기모드에서 RF동작이 가능한모드는 STOP2모드나 STNADBY 모드이다. STOP모드에서는 스펙상으로 2.2uA로 되어 있다. STM32WB의 저전력 모드에 대해 측정이 필요 할것 같다. 일반적으로 RF전송을 할 수 있는 모듈의 경우 15~30mA의 소모 전류가 필요 한데 저전력 모드로 들어 가지 않고 노말 5mA로 유지되면서 데이터 전송이 가능하다. Zigbee 모드에서 슬립모드로 진입하면.. UTIL_LPM_SetStopMode(CFG_INIT_TASK, UTIL_LPM_DISABL..
STM32WB55 SSM - Zigbee 데이터 송수신 테스트 STM32WB55는 무선 관련 스텍이 별도의 코어에서 수행되고 필요에 따라서 원하는 무선 프로파일을 다운로드 해서 사용할 수 있는 구조이다. nRF5시리즈의 SoftStack과 유사한 구조 이다. 차이점이라면 별도의 코어로 동작하기 때문에 장단점이 있을 수 있겠다. Zigbee 스택을 이용해서 무선으로 데이터 전송하는 테스트를 해 보자. 우선 Zigbee중 FFD(풀스택)을 다운로드 해서 테스트 해보면 좋을것 같다. 무선 스텍은 STM32WB_Copro_Wireless_Binaries 폴더에 있다. 소프트에어 스택 다운로드 방법은 STM32CubeProgrammer 를 이용하여 다운로드 하면 된다. 아래 그림과 같은 순서로 다운로드 하면된다. 주의 사항으로는 Start address 를 스택별, STM3..
STM32WB55 - Arduino Dhrystone, Whetstone, IIR Benchmark 성능 테스트 STM32WB55도 Arduino 환경에서 개발 가능하다. Board 파일을 "Generic STM32 Series" 로 선택해서 원하는 칩으로 환경설정 할 수 있다. 테스트 코드는 STM32H MCU Dhrystone, Whetstone, IIR Benchmark 성능 테스트 를 이용하였다. 벤치마크 테스트 결과 상당히 낮은 수치가 나온다. 저전력을 위해 32Mhz로 구동하고 있지만 Cortex-M4코어에서 너무 낮은 수치가 나오는데... mode = Arduino Dhrystone Benchmark, Version 2.1 (Language: C) Execution starts, 300000 runs through Dhrystone Execution ends : 26.643 Seconds Microse..
STM32WB55 SSM - STM32CubeIDE에서 RTC 테스트 STM32WB는 STM32와 동일한 코드를 이용해서 무선 기능을 사용할 수 있다. 하지만 기존 STM32와 약간 다른 사항들이 있는것 같은데 테스트 하면서 정리해 보자 저전력 모드에서 일정시간(30분) 마다 깨어나서 Zigbee 데이터를 전송하려면 RTC가 필수다. RTC 기능을 테스트 해 보자. RTC Enable하면 에러 발생한다. 내부 RTC(LSI)로 할당해서 그런것 같다. 외부 RTC(LSE) 로 설정하니 정상 동작 한다. RTC 초기화 코드 static void MX_RTC_Init(void) { /* USER CODE BEGIN RTC_Init 0 */ #define RTC_ASYNCH_PREDIV 0x7F #define RTC_SYNCH_PREDIV 0x0FF /* USER CODE END..
STM32WB55 SSM - 보드 제작 ST에서 BLE, Zigbee 스텍을 지원하는 저전력의 MCU가 출시 되어 SSM Type EVM 형태로 제작 했다. 기존의 STM32 코드를 이용하면서 RF기능이 필요한곳에 사용하기 좋을것 같다. Zigbee 스텍이 필요한 곳이 있어 프로젝트 적용하기전에 테스트 용도로 사용해 볼 예정이다.
STM32H7 W5300 iperf TCP 전송률 테스트 - 영혼까지 끌어 올리기 STM32H7 보드에서 W5300 의 TCP 전송율 테스트를 해 보자. STM32H7 칩 내부에 Ethernet MAC가 포함되어 있어 이더넷 통신이 가능하지만 Ethernet 전송율이 34Mbps 정도로 그렇게 빠르지 않다. STM32F439보드에서 W5300을 이용하면 이더넷 전송율을 90Mbps 이상 나오므로 STM32H7에서는 좀더 여유롭지 않을까.. STM32H7 보드에 W5300은 NE1(PD7)에 연결되어 있고 PC3에 리셋이 할당되어 있다. 기존에 테스트 했던 예제를 이용하여 STM32H7 에서는 정상동작을 하지 않는다. getMR() = 0201 W5300 memory initialization failed Mac address: 01:68:01:68:01:68 IP address : 1..

반응형