특이한 영상을 유튭에서 보았습니다..
nRF52 또는 STM32 관련 펌웨어 소스를 기존의 펌웨어에서 가이드하는
개발 환경 방식이 아닌 자신만의 소스 폴더 구조로 재구성하여
startup code와 linker script를 기존 소스에 참고하여 작성하고
eclipse IDE 환경에서 개발환경을 셋업합니다.
참고로,
nRF52 경우, IAR, Keil, SES, gcc 개발환경을 지원하고
STM32의 경우 STM32CubeIDE 환경, gcc 등을 지원하는데
하기 영상은 nRF52개발 시 gcc 기반의 eclipse 환경으로
별도의 소스 구조로 재구성하여 자신만의 프레임워크 구조를 만듭니다.
:=> https://www.youtube.com/watch?v=hzgDLdZbbww&list=PLvFHFPM09alKd7QzWu_QN9eCLAASUj5_m
또 하기 영상도 동일하게 STM32펌웨어를 개발하는데
STM32CubeIDE 환경에서 재공하는 프레임워크가 아닌
자신만의 프레임워크와 소스 구조로 개발하는 과정입니다.
:=> https://www.youtube.com/watch?v=iARBtg9laI4
사실 좀 알고 있는 개발자가 본다면,
이렇게 기존의 펌웨어 개발 방식이 아닌
자신만의 프레임워크를 구축하여
기존소스를 재구성하여 statup code 와 linker script를 구성하여
개발한다는 것은 정말 대단한 작업입니다.
정말 대단한 것은 Arm 코어인 cortex-m4 와 해당 펌웨어의
이해가 있어야 가능하기 때문입니다.
(그런데 굳이 이렇게까지 할 이유가 있는지는
영상의 시리즈를 더 두고 봐야알겠네요.
현재는 글세 전 잘 모르겠네요.)
하여튼 영상의 주인공은 과히 펌웨어 최고수 분인 듯 합니다.
(추가)
해당 영상은 하기와 같이,
:=> https://www.youtube.com/watch?v=hzgDLdZbbww&list=PLvFHFPM09alKd7QzWu_QN9eCLAASUj5_m
nRF52840 칩 기반의 하기와 같은 ble dongle 을 사용하는데,
dongle로 나온 nRF52840 칩기반의 개발 환경을
이클립스 IDE와 gcc arm 툴체인과 nrfx 라이브러리로
특이하게,
STM32의 소스 워크스페이스를 기반하여
개발환경을 구축을 합니다.
STM32 의 기존소스에서 linker script와 start-up code 를
nfrx라이브러리에서 가져와 바꾸고
sysTick을 nrfx라이브러리에서 가져와
새로운 nRF52840 ble dongle의 개발환경을 만듭니다.
참고로,
보통 nRF 계열의 칩 개발을 위한 IDE는
IAR, Keil 또는 SES 환경이거나 gcc환경을 지원합니다.
(추가2)
참고로,
위 유튜브 영상 관련 코드의 깃허브는 하기와 같습니다.
:=> https://github.com/chcbaram/nrf52840_game
그리고,
해당 개발환경 세팅과 관련된 블로그는 하기와 같네요.
:=> https://m.blog.naver.com/chcbaram/222348114144
그런데,
이 영상은 gcc환경 개발을 위해 이클립스를 이용한 것인데,
정말 대단한 것이
STM32의 워크스페이스를 가져와서
자신만의 nRF52 기반의 개발 환경과 소스를 구축했다는 점입니다.
정말 대단한 것은 Arm 코어인 cortex-m4 와 해당 펌웨어의
이해가 있어야 가능하기 때문입니다.
그런데 굳이 이렇게까지 할 이유가 있는지는
영상의 시리즈를 더 두고 봐야알겠네요.
현재는 글세 전 잘 모르겠네요.
그리고 nRF52840 칩을 사용하기 위해
nRF52840 개발보드 기반의 하드웨어가 아닌
저렴한 nRF52840 기반의 USB dongle을 사용한다는 점이네요.
추후 이 강의 시리즈 후속편이 기대가 됩니다.
(추가3)
해당 영상과 같이 nRF52832 개발 환경을 구축하는데
이클립스 기반인 STM32CubeIDE를 이용해서 사용하는 유튜브영상도 하기와 같이 있습니다.
기존 처음 영상과 다르게 이번에는 ble 관련 nRF52832 소스까지 추가하여 개발환경을 세팅한 영상입니다.
:=> https://www.youtube.com/watch?v=sriQSH-daf0&list=PLvFHFPM09alKd7QzWu_QN9eCLAASUj5_m&index=2
(추가4)
이번 영상은 nRF52832 dmtech 보드의 개발 환경을 구축하는데
기존의 nRF52 환경이 아닌,
아두이노 스케치 환경에서 개발할 수 있도록 하는 강좌입니다.
:=> https://www.youtube.com/watch?v=NNQ2KBexdt8&list=PLvFHFPM09alKd7QzWu_QN9eCLAASUj5_m&index=4
(추가5)
정말 유용한 펌웨어 강좌 자료들이 모여있는 곳이 있습니다.
부트로더와 펌웨어의 기본실습 강좌들이 모여있는 블로그입니다.
(사족)
더 좋은 정보를 공유하도록 저에게 힘을 실어 보내주세요.
그런 의미에서 커피 한잔 사주실래요 ^^
=> https://www.buymeacoffee.com/openbini
그럼,
정보 공유합니다.
https://freenanum.github.io/Market/#/
'개발 이야기 > 임베디드 개발' 카테고리의 다른 글
중국 과학원의 새 CPU인 XiangShan RISC-V가 Cortex-A75에 필적하는 성능을 보여 (0) | 2021.07.07 |
---|---|
NodeMCU 확장 캐리어 보드(Breakout 보드) (0) | 2021.07.07 |
Arduino UNO 보드에서 Atmel Studio로 코딩해보자! (0) | 2021.06.15 |
EasyEDA를 사용하여 PCB설계하기 (강좌) (0) | 2021.06.13 |
Atmel studio 에서 아두이노 우노 보드 flash하기 (w/o ISP) (0) | 2021.06.10 |