일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 디버깅
- 라즈베리파이
- STM32
- bare metal
- AArch64
- Visual Studio Code
- Raspberry
- avr-gcc
- UART
- Visual Studio
- nucleo
- esp32
- GPIO
- yocto
- Debugging
- C++
- QEMU
- Arduino
- platformio
- buildroot
- USART
- atmel
- Debug
- BeagleBone
- raspberrypi
- vscode
- AVR
- Linux
- 아두이노
- 리눅스
- Today
- Total
목록2025/02 (5)
임베디드를 좋아하는 조금 특이한 개발자?

소스코드https://github.com/MainForm/STM32_LCD_I2C참고 문서PCF8574 datasheet 1602A datasheet개요 I2C통신은 2개의 선(SDA, SCL)을 통해 많은 Slave Devices과 통신할 수 있는 Protocol입니다. 앞으로 이 통신으로 EEPROM이나 센서에서 데이터를 송수신하는데 많이 사용하게 될 것입니다. 많은 디바이스를 2개의 선으로 통신할 수 있다는 장점이 있지만 통신속도가 다른 통신에 느릴 수 밖에 없어 만약 속도를 중요시 해야하는 통신의 경우 SPI 통신을 고려해야합니다. 이 포스트에서는 I2C의 장점이 가장 또렷하게 드러나는 LCD 출력을 해보려고 합니다. LCD의 경우 작동을 하기 위해서 최소한으로 8pin(데이터 4pin + ..

개발 환경 OS : Ubuntu 22.04 LTS (WSL2) 개발 보드 : beaglebone black crosstool-ng : 1.27.0참고 문서1) u-boot Document https://docs.u-boot.org/en/latest/index.html2) Mastering-Embedded-Linux-Programming-Second-Edition github https://github.com/PacktPublishing/Mastering-Embedded-Linux-Programming-Second-Edition 1. u-boot를 위한 crosstool-ng 빌드먼저 아래 링크의 포스트를 따라하여 crosstool-ng를 빌드해주기 바랍니다.https://littlebito..

개발 환경 OS : Ubuntu 22.04 LTS (WSL2) 개발 보드 : beaglebone black 공식 홈페이지의 설치 방법을 따라 설치 하였습니다.https://crosstool-ng.github.io/docs/install/ Installing crosstool-NGBefore installing crosstool-NG, you may need to install additional packages on the host OS. Specific instructions for several supported operating systems and distributions are provided here. Note that not all the dependencies are currently de..

첨부파일개발 환경 개발 보드 : nucleo-f429zi board개발 프로그램- STM32 CubeMX : 6.12.0- STM32 CubeIDE : 1.16.0개요 임베디드 시스템에서 타이머는 매우 기본적인 기능중 하나로 실습시 반드시 해보는 기능중 하나입니다. 타이머를 사용하는 이유는 특정 테스크를 특정 시간마나 반복하여 동작하거나 특정 시간 이후 실행하기 위해 자주 사용됩니다. 또한, 시스템 전체를 멈추는 HAL_Delay함수(AVR의 경우 _delay_ms 함수)를 사용시 다른 기능도 중단되므로 해당 함수 대신 사용하는 기능이다. 타이머의 동작 방법은 사람이 손가락으로 시간을 세는 것과 같다고 할 수 있습니다. 사람이 손가락을 사용하여 10초를 센다고 하였을 때, 우리는 1초마다 손가락을 ..

해당 문제의 발생 원인은 gperf 버전이 업데이트 되면서 발생하는 문제입니다. 해당 문제를 해결하기 위해서는 3.0.4버전으로 다운그레이드를 할 필요가 있습니다. 먼저 다음의 명령어로 기존에 설치되었던 gperf 를 삭제합니다.sudo apt-get --purge remove gperf 이제 3.0.4버전의 gperf를 설치하도록 하겠습니다.wget http://ftp.gnu.org/gnu/gperf/gperf-3.0.4.tar.gzcd ./gperf-3.0.4.tar.gz./configuremakesudo make install 위 명령어를 사용하여 설치를 완료하였다면 /usr/local/bin 폴더에 gperf파일이 있는 것을 확인 할 수 있습니다.해당 파일을 저희가 터미널에서 사용하기 위해서 파..