Firmware 26

EEPROM 사용시 주의사항 (AT24Cxx)

EEPROM에 데이터 저장하는 코드 구현 중 살짝 곤란했던 사항 정리 (요즘은 MCU Flash 에 바로 저장하니 EEPROM 사용할 일이 크게 없긴 했음.) 1. Write(저장) 1) 예전에는 데이터가 몇 바이트 안되서 그냥 주소 적용하고 btye 저장했는데, 이번에는 한번에 64byte 이상 저장하면서 Page Wirte를 통해 저장함. 2) 이게 처음 16byte 만 저장되고 이후 저장이 안되는 문제 가 있었음. 3) 확인하니 해당 EEPROM 은 최대 16byte 단위로 Page Write만 지원됨. (EEPROM 종류마다 약간씩 다름.. 265byte 단위로 저장되는 것도 있음) 4) 연속해서 16byte씩 나누어 저장하니 안됨 5) 16byte 저장하고 Ack 확인하던가, 3~4ms 대기(지..

Firmware 2024.01.07

CAN 속도 별 전송 frame 개수

2.0A 표준 , 2.0B 확장 프레임 2종류가 있는데, 전송 데이터 8byte 기준 1ms 당 전송 횟수는 하기와 같음 data 8byte (64bit) Mbps bps byte 1ms byte Cnt ext. frame (2.0B) std. frame (2.0A) 1 1000000 125000 125 7.668711656 9.057971014 0.5 500000 62500 62.5 3.834355828 4.528985507 0.25 250000 31250 31.25 1.917177914 2.264492754 0.125 125000 15625 15.625 0.958588957 1.132246377 1Mbps 기준, 1ms 에 ext. 기준 7.6회 전송할수 있음. 기타 여러 조건 감안하여 7회 라고 봐..

Firmware 2023.11.06

WAVGAT DAPLINK stm32 오프라인 다운로더

https://ko.aliexpress.com/item/1005003843969242.html?spm=a2g0o.cart.0.0.650f56baSkxFUG&mp=1&gatewayAdapt=glo2kor https://ko.aliexpress.com/item/1005003843969242.html?gatewayAdapt=glo2kor&mp=1&spm=a2g0o.cart.0.0.650f56baSkxFUG AliExpress.com에 오신것을 환영합니다 로그아웃 회원가입 로그인 내 주문 내 코인 메시지 센터 결제 위시리스트 내 쿠폰 ko.aliexpress.com stm32 다운로더 장치이다. 다운로더 장치에 전원 연결 후 내부 메모리에 hex 파일 저장 후 stm32 장치에 펌웨어 다운로드 가능하다. (예전..

Firmware/STM32 2023.07.18

Cube IDE 에 OpenOCD 연결. / stm32 blue pill

Cube IDE에서 st-link로 실시간 디버깅시 ST MCU가 아니라고 하면서 정지됨. 정품 MCU 사용하면 되지만 시중(중국)에서 stm32f103 정품 부착된 제품 구하기가 쉽지 않음. st-link로 연결하는것은 불가능한것 같고, 시중에 OpenOCD로는 가능할것으로 보여 확인해봄. 저렴한 DAP LINK라는 디버거로 시도. 연결하면 COM포트, HID USB 입력 장치가 추가됨. openOCD 프로그램 다운.. https://gnutoolchains.com/arm-eabi/openocd/ Download OpenOCD for Windows Download pre-built OpenOCD for Windows OpenOCD is an open-source tool that allows debug..

Firmware/STM32 2023.03.19

CH32V307VCT6 테스트 / WCH-Link

CH32V07VCT6 STM32F307 클론 같은데.. 이건 RISC-V라 라이센스 비용이 안들어가서 싸게 만들수 있나.. 가격이 엄청 저렴함. 성능은 테스트 해봐야 하는데..사양은 기존stm32과 비슷함. USB, CAN, SDIO, 이더넷도 되고 가격은. 알리에서..3~4천원정도 하는것 같다. https://ko.aliexpress.com/item/1005004941906861.html?spm=a2g0o.cart.0.0.210156baLWOuNL&mp=1&gatewayAdapt=glo2kor 954.0₩ 30% OFF|CH32V307RCT6 CH32V307VCT6 CH32V203C8T6 CH32V103R8T6 CH32V103C8T6 CH32V208WBU6 CH32V305RBT6 CH32V203F8P6..

Firmware 2023.03.18

stm32f401 Virtual COM port / USB CDC 테스트

stm32f103 과 다르게 CUBE-IDE 로 코드 수정없이 바로 된다. 포트 PA11, PA12 클럭 48M 디바이스 선택 버추얼 포트 선택 500ms 마다 전송 /* USER CODE BEGIN Includes */ #include #include "usbd_cdc_if.h" /* USER CODE END Includes */ CDC_Transmit_FS("abcd\r\n", 6); HAL_Delay(500); stm32F4는 풀업 저항이 내장되어 필요없음. R27 직렬저항 은 0옴으로 적용. D+와 D- 차동배선으로 적용. # 초반에 USB 인식 실패되어 확인해보니 D+, D- 가 서로 바뀌어 배선됨.. PA12를 D-, PA11을 D+에 연결함 ㅎㅎ

Firmware/STM32 2023.03.16

stm32f103 Virtual COM port (USB CDC) / CAN bus

시중에 돌아다니는 STM32 블루필이라는 아두이노 보드로 테스트.. 1. Cube IDE에서 ST-link로 (가짜?라고) 실시간 디버깅이 안됨. hex 만들어 cube 프로그래머로 다운은 가능.. => keil 은 가짜도 다운 잘 되는 것 같음..밑에 keil버전. # cmsis dap (open ocd)로는 디버깅 가능함. https://luckydream.tistory.com/523 Cube IDE 에 OpenOCD 연결. / stm32 blue pill Cube IDE에서 st-link로 실시간 디버깅시 ST MCU가 아니라고 하면서 정지됨. 정품 MCU 사용하면 되지만 시중(중국)에서 stm32f103 정품 부착된 제품 구하기가 쉽지 않음. st-link로 연결하는것은 불가능한것 luckydre..

Firmware/STM32 2023.03.12

stm32 SDIO SD 카드 테스트 / FR_NOT_READY

STM32F401 로 Cube-IDE 테스트 포트 설정 클럭은 84M 로 하면 최대 42M로만 설정됨. 인터럽트 설정 DMA 설정 USE LFN 만 Enable SD 카드 확인 입력 포트 설정안하면 위에 같이 경고창 나옴. ================== 추가사항 ===== STM32F4 펌웨어 버그가 있는것 같다. 1.26.2 에서 잘 동작하는데.. 1.27.1로 업데이트 하고 SD 카드 마운트 하면 FR_NOT_READY 를 리턴한다. 이것 때문에 H/W 디버깅만 계속하고..하루종일 개고생함...참나... HAL 라이브러리 비교하면서 원인 찾으려다..시간이 없어서...나중에 확인해봐야 겠다.. 여기 유사한 내용 있음..이런..ㅡㅡ; https://community.st.com/s/question/0..

Firmware/STM32 2023.01.15

큐브 모니터 사용법 STM32CubeMonitor

st에서 나온 비주얼 디버깅 프로그램 https://www.st.com/en/development-tools/stm32cubemonitor.html STM32CubeMonitor - STMicroelectronics STM32CubeMonitor - Monitoring tool to test STM32 applications at run-time, STM32CMonPwr, STM32CubeMon-Win, STM32CMonUCPD, STM32CMonRF, STM32CubeMon-Mac, STM32CubeMon-Lin, STMicroelectronics www.st.com stlink 프로브 설정 1. myPorbe_Out 설정 in 설정. myVariables 에서 다운로드 파일(axf) 선택. 다운로드 ..

Firmware/STM32 2022.06.16

ESP32 CAM / 다운 연결 / CAN 연결 / CAN log 저장

목적 can 수신데이터 SD 카드 저장 용도 테스트 해보니 고속으로 들어오는 CAN데이터를 실시간으로 SD 카드 저장이 어렵다. 일정 데이터를 Ram 버퍼 저장하고 CAN 데이터 들어오지 않는 타이밍에 SD 카드에 저장 하면 될것 같으나 이건 해당 프로토콜을 알아야 가능하기 때문에 범용적으로 사용 불가. 방법은 SD 카드 저장 속도를 올려야 하는데 SPI방식이 아닌 SDIO 4bit / 8bit 인터페이스로 변경하면 될듯하지만, 현재 보류 중...시중에 ESP32 보드중에 SD카드가 SDIO로 연결된게 없는 것 같음... 그냥 STM32 에 SDIO로 연결해서 테스트 해볼까 생각중.. 회로도 psram 이 추가되어 램이 많고, 여기에 SD 카드 있어서 CAN 연결후 저장 하기 좋음. 다운로드 기존 D1-..

Firmware/ESP32 2022.01.22

DSP [ 28377s] 초기 설정, SCI uart / 프로젝트 생성

폰트 탭 사이즈 조정 디버깅 에뮬레이터 수정 새로 추가 후 연결된 프로브 선택 디버깅 환경설정 SCI (UART)설정 코드 float 처리가 안됨. 하기 옵션 다 조정했는데..stack 사이즈가 문제인가.. 더 키우면 될것 같은데.. void SetupSCI(void) { // SCI setting EALLOW; GpioCtrlRegs.GPAGMUX2.bit.GPIO28 = 0; // Configure GPIO28 for SCIRXDA operation GpioCtrlRegs.GPAMUX2.bit.GPIO28 = 1; GpioCtrlRegs.GPAGMUX2.bit.GPIO29 = 0; // Configure GPIO29 for SCITXDA operation GpioCtrlRegs.GPAMUX2.bit...