Hello, for videos it is very good because I am still a beginner. I want to ask for this video when I debug in debug configuration an error appears that says "Error in initializing ST-LINK device. Reason: ST-LINK firmware upgrade required. Please upgrade the ST-LINK firmware using the upgrade tool." Next I was asked to upgrade the stm32 st-link and an error appeared that said "ST-Link is not in DFU mode. Please restart it". When I restarted it, there was no reaction and the error was still there. Can you help me with this problem? Thank you, sorry my English is not fluent and I can't speak Korean.
안녕하세요~^^; 22분38초 강의에서 링크스크립트 설정을 그대로 따라해 보았으나 빌드아날라이저에 아무런 정보가 나타나지 않는건 무엇을 잘못한 걸까요? 디버깅을 하면 워크스페이스쪽에 main함수 시작번지수가 강의하시는 시작번지와 동일하게 보이긴 하거든요? ^^; 링크스크립트 절대경로를 넣어도 마찬가지더라구요? 제가 뭘 놓친 걸까요? 이상하네요? 방금 IDE로 자동 생성된 코드를 돌려봐도 빌드 아날라이저에 아무런 정보가 안뜨네요.ㅠㅠ
안녕하세요. 항상 좋은 영상 감사합니다. STM32를 하다가 궁금한 점이 있어서 질문드립니다. HAL_Delay()를 사용하였는데 무한루프로 빠져서 이상을 발견했는데, uwtick이 증가를 안하는 현상이 있길래 보니까 systick_Handler함수가 돌지 않더라구요. Nucleo 보드에서는 이상이 없는데 Custom 보드에서 이러한 현상이 발생합니다. GPIO toglgle 함수만 쓰면 gpio 출력은 되긴하더라구요. 그리고 Break at address "0x1fff4b14" with no debug information available, or outside of program code. 이런 팝업이 IDE창에 뜹니다... 이것저것 해보다가 혹시 해서 질문드립니다.
안녕하세요. millis 관련된 함수에서 질문이 있습니다. HAl_gettick 함수에서 uwTick 변수가 32비트를 초과해서 오브플로우 될때도 따로 처리를 안해줘도 될까요? 실제 hal드라이브 안에 코드에서도 HAL_gettick을 사용하는데 타입 캐스팅도 안하고 따로 처리를 안해서 질문드립니다.
안녕하세요. 질문 하나 드려요. 디버그를 누르면 "No device found on target" 라고 메시지가 나오는데요. blue pill 보드랑 st-link v2랑 연결을 잘 못한것 같은데요. 방법을 알 수 있을까요? 구글링해서 해보느데... 몇시간을 해매고 있습니다.ㅠㅠ
SWCLK / SWDIO 신호가 잘 연결되어 있는지 확인 한 다음에, 만약 기존 다운로드되어 있는 펌웨어가 SWD가 활성화 안되어 있었다면, BOOT0 핀을 VCC에 연결한 상태에서 Reset 버튼을 이용해서 내장 부트로더를 실행한 다음에 디버깅을 시작하면 연결 될겁니다.
@@chcbaram 먼저 답변 감사드립니다. 결론은 연결을 잘못했었네요ㅠㅠㅠ 저는 이직을 하면서 최근에 처음 mcu를 접하게 되었는데요. 처음부터 많이 헤매고 있네요. 다행히 이에 대해 잘 정리해 놓으신 분이 계시네요. 링크 걸어 놓겠습니다. 저와 같이 선생님의 강의를 듣고 있는 분이 잘 정리한 블로그 주소입니다. blog.naver.com/sungtj0130/222221091062
감사합니다. 저도 그렇게 생각합니다. CubeMx에서 코드를 생성해 주는데..폴더를 다시 만들면.. CubeMx에서 생성된 코드를 사용할 수 있는지도 궁금하네요? 그리고 CubeMx에서 수정을 하고 코드를 생성시키면 코드에 반영이 되던데.. 아마도 Baram님은 오래된 개발환경 습관때문에 그렇게 하지 않았나 생각됩니다. 감사합니다^^
소중한 영상 잘 봤습니다. .isr_vector : { . = ALIGN(4); KEEP(*(.isr_vector)) /* Startup code */ . = ALIGN(4); } >ROM 실제로 메모리 맵을 보면 isr_vector의 시작 주소는 0x0800 0000입니다. .text의 시작 주소는 0x0800 0130입니다. 1. 제가 궁금한 사항은 isr_vector의 사이즈는 어떻게 결졍되는 것인가요?(0x130의 offset이 304BYTE가 되는 의미를 잘 모르겠습니다.) 2. .=ALIGN(4)의 의미는 무엇인가요?
안녕하세요. ALIGN(4)의 의미는 4바이트 단위로 배치되는 주소 위치를 정렬한다는 것입니다. 그리고 isr_vector 섹션은 스타트업 코드 파일에 어셈블리로 있으며, 사이즈는 이 코드안에 사이즈로 결정됩니다. 링커스크립트 상에 isr_vector먼저 배치되고 이후에 text 섹션이 배치되기 때문에 isr_vector의 코드 만큼 할당되고 이후에 text가 배치되어서 0x130의 오프셋이 발생한 것입니다.
안녕하세요. 저는학부시절에 c언어에 관심도 없었고, 프로그래밍 관련지식이 많이 부족합니다. 현재는 회사에 취업한지 4년정도 되었고 H/W 개발자로써, PCB 아트웍, 간단한 회로설계 및 시험, 제품 양산관련 서류작업 및 지원 업무등을 하고있습니다. 개발관련일을 하면 할수록 펌웨어를 배우고 싶은 마음이 커집니다. 추천하시는 STM 보드 하나 구매하여 인강을 하나씩 보려고하는데, 펌웨어 입문하기에 충분할까요? 아니면 인강을 보기전 선행되어야할 부분이 있을까요? 조언 부탁드립니다. 감사합니다.
제가 직접 강의를 들어보지는 못해서 어떤게 좋다고 말씀드리기는 어려울 것 같습니다. 인퍼런이나 여럭 강의가 있을 것 같은데 최대한 따라 할 수 있는 것을 하나 정해서 진행하시는 게 좋지 않을까 생각됩니다. 펌웨어도 워낙 다양한 부분이 있기 때문에 쉽게 접근 할 수 있는 부분부터 시작 해야 할 것 같습니다.
바람님 강좌잘보고 있습니다. 그런데 cubeide 에서 huart2.Init.BaudRate = 115200; uart 보드레이트 115200인데 테라텀에서는 같은 보드레이트로 설정하면 텍스트가 깨지고 보드레이트를 19200으로 설정하면 텍스트가 제대로 나옴니다. 어디 쪽 소스를 바꿔야 하나요?