전체 글72 VSCode에서 STM32F411CEU6(Black-Pill) 개발환경 구축하기 개발 환경대상버전OSWindows 10 24H2(Desktop), MacOS Sequoia 15.5(24F74)(MacBook M2 Air)STM32CubeMX6.16.1STM32CubeProg2.21.0보드STM32F411CEU6펌웨어V24J46S7동기두 번째 사진처럼 작은 LCD 스크린에 영상을 띄워보고 싶다는 욕심이 들었다. 그래서 먼저 GPT를 통해 STM32사 칩중에 LCD 스크린에 영상을 띄우기 적절한 칩을 추천해달라고 하니 Black-Pill(이하 블랙필)을 추천해주었다.그래서 알리익스프레스를 통해 보드와 LCD 스크린(ST7789)을 주문했고 4 ~ 5일 후 받아볼 수 있었다. 자주 쓰던 Nucleo 보드와 별 차이 없이 개발할 수 있겠다고 생각하여 CubeMX를 사용해 기본 코드만 생성 .. 2026. 1. 22. 임베디드리눅스완전정복 | 3장 | 부트로더 이 카테고리의 글은 책을 읽고 제 나름대로 정리한 내용을 담고 있습니다. 책 내용을 그대로 서술하지 않았습니다.이번 장은 부트로더가 무엇이고 어떤 일을 하는지와 배경지식에 대한 장이다. 내용이 다소 추상적이라서 이해하기 힘들었다. 게다가 나중에 라즈베리파이에 커널을 올릴 땐 여기서 배운 U-Boot를 쓰지 않아서 실습을 못했다.부트로더란시스템에 전원이 들어오면 부트로더는 어떤 일을 한다. 마침내 부트로더가 일을 다하면 커널이 실행된다. 커널이 실행되려면 기본적인 작업들이 꼭 필요하다. 부트로더는 커널이 동작할 수 있도록 만드는 기본적인 작업들을 수행한다.'Bootloader - OSDev Wiki'The boot loader ultimately has to:Bring the kernel (and all.. 2025. 11. 15. 임베디드리눅스완전정복 | 2장 | 툴체인 이 카테고리의 글은 책을 읽고 제 나름대로 정리한 내용을 담고 있습니다. 책 내용을 그대로 서술하지 않았습니다.리눅스의 4가지 요소는 툴체인, 부트로더, 커널, 루트파일시스템이다. 책에서는 2~5장까지 하나씩 소개한다.툴체인타깃 환경타깃 환경은 소스 코드가 최종적으로 올라가서 실행될 보드를 의미한다. 거기에 올라갈 소스 코드를 빌드하는 가장 좋은 방법은 아예 똑같은 개발 환경을 세팅한 후 소스 코드를 빌드하는 것이다. 이걸 Native-Compile이라고 부른다. 하지만 이 타깃 환경은 보통 개발자의 PC보다 성능이 떨어진다. 그러므로 타깃 환경에서 개발한다면 속이 터질 것이다. 그러므로 내 PC에서 적당히 개발하다가 빌드 시기가 다가오면 타깃 환경에 맞게 빌드하면 된다. 이걸 Cross-Compile.. 2025. 11. 11. 임베디드리눅스완전정복 | 1장 | 라이센스 이 카테고리의 글은 책을 읽고 제 나름대로 정리한 내용을 담고 있습니다. 책 내용을 그대로 서술하지 않았습니다.이 책은 첫 장부터 리눅스 커널이나 시스템에 대한 설명을 시작하는게 아니라 리눅스 생태계에 대한 설명을 한다. 사실, 이전까지는 리눅스는 모든 소스가 공개되어 있고 모두가 기여할 수 있다 정도만 알고 있었지, 그렇게 할 수 있는 환경이 다른 OS의 개발 환경과 어떤 차이가 있는지 자세히는 알지 못했다. 책에서 라이센스에 대한 내용을 읽고 나서야 좀 더 찾아보게 되었고, 깃허브에서 리포지토리를 만들 때 선택하는 라이센스가 무슨 의미인지 이해할 수 있게 되었다. OpensourceSW_License_Guide.pdf|오픈소스SW라이선스종합정보시스템 라이센스에 관한 정말 자세한 정보는 다소 딱딱하지.. 2025. 11. 11. I2S를 사용하여 사인파의 톤과 볼륨 조절하기 개발 환경대상버전OSWindows 10 24H2(Desktop), MacOS Sequoia 15.5(24F74)(MacBook M2 Air)STM32CubeIDE1.18.1STM32CubeMX6.14.1STM32CubeProg2.19.0STM32CubeCLT1.18.0보드Nucleo-F446RE(F103RB는 I2S를 지원하지 않아서 다른 보드를 구매했습니다.)펌웨어V24J46M32사용한 모듈과 데이터 시트모듈데이터시트UDA1334ATShttps://cdn-shop.adafruit.com/product-files/3678/UDA1334ATS.pdf톤과 주파수의 관계위 사진을 보면 각 음계와 옥타브에 따라 어떤 주파수인지 알 수 있다.그리고 특정 음계(note)에서 N만큼 떨어진 음계를 구하는 공식은 다음.. 2025. 8. 25. I2S를 사용하여 사인파 출력하기 개발 환경대상버전OSWindows 10 24H2(Desktop), MacOS Sequoia 15.5(24F74)(MacBook M2 Air)STM32CubeIDE1.18.1STM32CubeMX6.14.1STM32CubeProg2.19.0STM32CubeCLT1.18.0보드Nucleo-F446RE(F103RB는 I2S를 지원하지 않아서 다른 보드를 구매했습니다.)펌웨어V24J46M32사용한 모듈과 데이터 시트모듈데이터시트UDA1334ATShttps://cdn-shop.adafruit.com/product-files/3678/UDA1334ATS.pdfI2S는?I2C와 비슷하게, Inter-Integrated Sound의 줄임말이다. I2S는 Master와 Slave 대신 Transmitter와 Receive.. 2025. 8. 25. DMA와 일반 메모리 복사 비교 개발 환경대상버전OSWindows 10 24H2(Desktop), MacOS Sequoia 15.5(24F74)(MacBook M2 Air)STM32CubeIDE1.18.1STM32CubeMX6.14.1STM32CubeProg2.19.0STM32CubeCLT1.18.0보드Nucleo-F103RB펌웨어V24J46M32DMA는?Direct Memory Access의 줄임말이다. DMA는 CPU처럼 메모리에 직접 접근하여 데이터를 어디론가 전송시키는 일을 담당한다.만약 CPU가 이 일을 담당하게 된다면 데이터 전송이 완료될 때까지 다른 작업을 할 수 없기 때문에 명령어 처리 속도가 늦어지게 된다. 그래서 이 작업을 DMA가 대신 담당한다면 데이터 전송과 관련된 일을 하는 시간만큼 CPU는 다른 작업을 할 수 .. 2025. 7. 21. FatFs를 사용하여 SD카드 파일시스템 접근하기 (2) - 읽기/쓰기 및 기타 함수 개발 환경대상버전OSWindows 10 24H2(Desktop), MacOS Sequoia 15.5(24F74)(MacBook M2 Air)STM32CubeIDE1.18.1STM32CubeMX6.14.1STM32CubeProg2.19.0STM32CubeCLT1.18.0보드Nucleo-F103RB펌웨어V24J46M32참고한 자료어댑터에 대한 데이터시트를 찾지 못했고, 비슷한 자료에서는 통신 절차에 대한 설명이 없어서 관련 자료를 위주로 참고했습니다.'4.2.1 Writing Raw Data to an SD Card via SPI''How to Use MMC/SDC'Lecture 12: SPI and SD cards - EE-379 Embedded Systems and Applications | Electr.. 2025. 7. 21. FatFs를 사용하여 SD카드 파일시스템 접근하기 (1) - 초기화 개발 환경대상버전OSWindows 10 24H2(Desktop), MacOS Sequoia 15.5(24F74)(MacBook M2 Air)STM32CubeIDE1.18.1STM32CubeMX6.14.1STM32CubeProg2.19.0STM32CubeCLT1.18.0보드Nucleo-F103RB펌웨어V24J46M32참고한 자료어댑터에 대한 데이터시트를 찾지 못했고, 비슷한 자료에서는 통신 절차에 대한 설명이 없어서 관련 자료를 위주로 참고했습니다.'4.2.1 Writing Raw Data to an SD Card via SPI''How to Use MMC/SDC'Lecture 12: SPI and SD cards - EE-379 Embedded Systems and Applications | Electr.. 2025. 7. 12. I2C 통신으로 16x2 LCD 디스플레이 출력하기 개발 환경대상버전OSWindows 10 24H2(Desktop), MacOS Sequoia 15.5(24F74)(MacBook M2 Air)STM32CubeIDE1.18.1STM32CubeMX6.14.1STM32CubeProg2.19.0STM32CubeCLT1.18.0보드Nucleo-F103RB펌웨어V24J46M32사용한 모듈과 데이터 시트모듈데이터시트B10K Potentiometerhttps://www.mouser.com/datasheet/2/13/RV24AF-1658492.pdfHD44780Uhttps://cdn.sparkfun.com/assets/9/5/f/7/b/HD44780.pdfPCF8574https://www.ti.com/lit/ds/symlink/pcf8574.pdfI2C는?Inter-In.. 2025. 6. 30. 이전 1 2 3 4 ··· 8 다음