일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 전기차충전기
- AWS
- lambda
- 충전기
- 홈어시스턴트
- 급속충전기
- IOT Core
- OCPP
- dynamodb
- 전기차충전
- 완속충전기
- thread
- Android
- 에버온
- homeassistant
- 파이썬
- YMODEM
- 전기차
- flask
- raspberry
- 디자인패턴
- 서버리스
- 안드로이드
- 플라스크
- everon
- STM32
- 펌웨어
- 라즈베리파이
- esp8266
- 보안
- Today
- Total
Louie NRT Story
[STM32] stm32f1 IAP(In Application Programming) - 03 본문
[STM32] stm32f1 IAP(In Application Programming) - 03
hyeok0724.kim@gmail.com 2021. 4. 22. 15:41작성일: 21년 4월 22일
Index
1. APP FLASH 코드 수정
2. APP BSP System_stm 코드 수정
3. APP main 수정
4. Build 파일 확인
5. 펌웨어 다운로드
6. 직접개발한 GUI 활용한 다운로드
1. APP FLASH 코드 수정
- Application 영역의 Firmware가 시작할 메모리 수정
- version 정보를 특정 메모리에 쓰도록 함
- 용량은 1KB 로 잡아놓음
- 빌드 후 Debug 폴더에 보면 ".map" 파일이 존재함을 확인 할 수 있음
- 파일을 열어보면 version 정보가 0x08010400에 저장되어 있음을 알 수 있음.
2. APP BSP System_stm 코드 수정
- VECTOR OFFSET 코드 수정
- 수정한 VECTOR OFFSET은 STM32F105 Chip에 대해서 Base가 되는 주소로 부터 Offset을 얼마나 되는지 알 수 있도록 함.
3. APP main 수정
- Firmware 버전을 정의하고 특정메모리에 쓰도록함
- 메모리에 직접 접근하는 __attribute__(section.... 이러한 명령어는 컴파일러마다 다르므로 주의
- while 문에서 간단히 LED 정도만 ON/OFF 하는 것으로 마무리 함
4. Build 파일 확인
- 빌드된 ".bin" 파일에서도 version을 확인할 수 있으며 추후 문제가 생겼을 경우 해당 펌웨어 한 파일의 버젼을 확인할 수 있음
5. 펌웨어 다운로드
- Tera Term에서 "1" 입력함
- 메뉴의 YMODEM 형식으로 보내기 선택
- 빌드된 ".bin" 파일을 선택함
- 다운로드 된 후 "a" 입력함
- 위에서 입력한 버젼이 나타남을 확인함
- 버젼을 변경하여 다시 빌드함
- 파일을 다운로드 하고 다시 "a" 입력함
- 버젼이 변경 되어 있음을 확인 할 수 있음.
6. 직접개발한 GUI 활용한 다운로드
Referece:
kjt9109.tistory.com/entry/STM32-IAP-Ymodem-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C-Bootloader-1
'전기차충전기' 카테고리의 다른 글
[논문지필] 10kW 멀티충전기 사용자 효율성 분석 (0) | 2021.05.02 |
---|---|
[STM32] WWDG와 IWDG 동작 (0) | 2021.04.29 |
[everon] 7kW 완속충전기 SW개발 문서 - Todo (0) | 2021.04.22 |
[STM32] stm32f1 IAP(In Application Programming) - 02 (0) | 2021.04.22 |
[21년 상반기] 국내 전기차 충전기 업체 (0) | 2021.04.17 |