반응형 프로그래밍193 [Ubuntu] 화면 검은색 깜빡임 해결 먼저 나의 환경 증상 1. 스크린샷 캡처(특히)부터 일반적으로 노트북을 사용할 때 한번씩 깜빡임. 주기적인 것은 아니고 뭔가 웹브라우저에서 휠을 사용한다거나, 프로그램을 전환한다거나 그래픽을 사용할때 깜빡임 2. 여기서 OS의 문제라고 생각되었던건, 이전 Windows에서는 이런 증상이 없었고 OS가 Load된 순간부터 깜빡임 3. 타이핑만 하는데 깜빡일 때 있음 4. 주기가 진짜 랜덤임 이유 1. 모름. GRUB_CMDLINE_LINUX_DEFAULT 설정부터 Ubuntu가 옛날 그래픽을 지원 썰, 커널 업데이트, 시큐리티 부팅부터 그래픽카드 드라이버 설치까지 다해보았지만 안되었고, 마지막으로 Stack Overflow에서 아무거나 복붙해서 하다보니 깜빡이지 않음 2. 그래픽카드 사용량을 확인해보니 4.. 프로그래밍/Linux 2023. 9. 12. [STM32] STM32CubeMX로 CMake설정하기 1. 설치 아래의 링크에서 설치가 가능하다. 회원가입이 필요할 수 있다. https://www.st.com/content/st_com/en/stm32cubemx.html 2. 실행&설정 먼저 자신에게 맞는 board를 선택하고 Start Project 클릭 [RCC] - [HSE] - "Crystal/Ceramic Resonator" 선택 [SYS] - [Debug] - "Serial Wire"선택 (이후 VSCode에서 Debug 실행해 볼 예정) PA5번 핀을 "GPIO_Output"으로 선택 NUCLEO-F411RE board에서 PA5핀은 User LED인 LD(초록색 빛)에서 확인할 수 있다. 즉 별도의 LED를 연결하지 않아도 board자체에서 확인할 수 있기에 PA5번을 선택. 다음은 디버깅.. 프로그래밍/STM32 2023. 9. 10. [STM32] VSCode 에서 STM32 디버깅하기(.vscode) 1. 먼저 elf 파일을 만들어줘야 하는데 아래 링크를 참조 2023.09.03 - [프로그래밍/STM32] - [STM32] cmake build(feat .bin, .elf, .hex 추출) [STM32] cmake build(feat .bin, .elf, .hex 추출) 먼저 나의 작업환경을 tree -L 4로 출력한 Directory 구조이다. . ├── CMakeLists.txt ├── MAIN │ └── board │ └── F4 │ ├── Core │ ├── Drivers │ ├── stm32f411re │ └── ledtest2.ioc ├─ park-duck.tistory.com 2. 프로젝트 루트 디렉토리의 .vscode에서 launch.json 생성 3. Add Configuration.. 프로그래밍/STM32 2023. 9. 3. [STM32] cmake build(feat .bin, .elf, .hex 추출) 먼저 나의 작업환경을 tree -L 4로 출력한 Directory 구조이다. . ├── CMakeLists.txt ├── MAIN │ └── board │ └── F4 │ ├── Core │ ├── Drivers │ ├── stm32f411re │ └── ledtest2.ioc ├── Toolchain │ ├── arm-none-eabi │ ├── bin │ ├── lib │ ├── share │ └── toolchain_arm_9.3.1.cmake ./CMakeLists.txt cmake_minimum_required(VERSION 3.10.2) set(CMAKE_SYSTEM_NAME Generic) set(CMAKE_SYSTEM_VERSION 1) # project settings project(te.. 프로그래밍/STM32 2023. 9. 3. [Renode] 가상머신 실행(Hello world 출력) 이전에 Renode를 설치했었다. 2023.08.15 - [Learning/Renode] - [Renode] 설치 [Renode] 설치 1. 지원 아키텍처 ARMv7 and ARMv8 Cortex-A and Cortex-M x86 RISC-V SPARC POWER Xtensa 2. 설치 아래 링크에서 renode-*.linux-portable.tar.gz를 다운로드 https://github.com/renode/renode/releases/latest renode_portable 폴더를 만든 후 park-duck.tistory.com Renode의 사용 목적이 대부분 가상 시물레이션일텐데, 내가 가지고있는 STM32 NUCLEO-F411RE을 기준으로 가상머신을 돌려보자. * 하드웨어에 대한 지식이 많이.. 프로그래밍/Renode 2023. 8. 22. [Python] 파일명 일괄 변경 .txt 파일을 따로 이름을 정하지 않고 저장하였을 때 "새로운 텍스트 파일 [number].txt" 식으로 저장이 되는데 파일명 format을 한번에 변경하고자 할 때 사용 ex) 새로운 텍스트 파일 2.txt -> 2_test.txt import glob import re import os for name in glob.glob("새로운*[0-9]{1,2}*.txt"): number=re.search("[0-9]{1,2}", name) os.rename(name, "{}_test.txt".format(number.group()) 변경하고자 하는 파일 name의 형식에 따라 정규식 표현 pattern이 변경될 수 있으므로 정규식 표현을 공부해야할 수도 있음. 프로그래밍/Python 2023. 8. 20. [Renode] 설치 1. 지원 아키텍처 ARMv7 and ARMv8 Cortex-A and Cortex-M x86 RISC-V SPARC POWER Xtensa 2. 설치 아래 링크에서 renode-*.linux-portable.tar.gz를 다운로드 https://github.com/renode/renode/releases/latest renode_portable 폴더를 만든 후 그곳에 압축해제 mkdir renode_portable tar xf renode-*.linux-portable.tar.gz -C renode_portable --strip-components=1 - 환경변수 추가 cd renode_portable export PATH="`pwd`:$PATH" 또는 .bashrc 가장 아래에 환경변수 추가 sudo.. 프로그래밍/Renode 2023. 8. 15. [Ubuntu] STM32 VSCode debugger GDB version Error 해결 OS: Ubuntu 20.04 VSCode로 STM32를 돌리려는데 아래와 같은 에러가 발생 GDB could not start as expected. Bad installation or version mismatch. See if you can start gdb from a shell prompt and check its version (Must be >= 9) 시도해 본 것은 gdb 업그레이드 툴체인 버전(7~10) 변경 openocd로 변경 -> openocd에서도 똑같은 에러 발생 st link upgrade 등 조금이라도 의심되는 건 다 해봤으나 안됨 해결방법은 VSCode에서 extends의 Cortex-Debug 버전을 낮추는 것 https://ja.stackoverflow.com/quest.. 프로그래밍/Linux 2023. 8. 14. [Ubuntu] STLink Upgrade 사용하여 STM32 board firmware update하기 sudo java -jar STLinkUpgrade.jar OS : Ubuntu 20.04 1. STLink Upgrade 다운로드 https://www.st.com/en/development-tools/st-link-server.html 2. 압축해제 3. 터미널을 열어 AllPlatforms 폴더로 이동(Linux) 4. Java 설치 # sudo apt install openjdk-[version]-jdk sudo apt install openjdk-11-jdk 4. STLinkdUpgrade 실행 아래 명령어를 수행하면 프로그램이 실행됨 sudo java -jar STLinkUpgrade.jar 5. Device를 선택 후 Open in update mode, Upgrade를 차례대로 클릭 프로그래밍/Linux 2023. 8. 14. [Jenkins] Cmake 사용&버전 변경 1. [Dashboard] - [Jenkins 관리] - [Plugin Manager]에서 Cmake 설치 나는 이미 설치되어 있으므로, 처음인 사람은 Available plugins에서 설치 설치를 하고 cmake 명령어를 사용하면 version이 3.10.2이다. 버전이 너무 낮아 에러가 발생하기 때문에 버전을 바꿔주자. 2. [Dashboard] - [Jenkins 관리] - [Global Tool Configuration]에서 Add CMake 원하는 version을 설치하고 Name을 설정하는데, 앞으로 사용할 때 필요하니 기억해 두자. 3. Jenkins File 작성 installation에 Global Tool Configuration에서 설정한 Name값을 적어주면 된다. stages {.. 프로그래밍/Jenkins 2023. 7. 23. [Jenkins] Git Command CI&CD Git을 공부하면서 Jenkins로 돌린 파일이다. Git 충돌에 관해서는 CUI로 해결하기 힘들어(할 줄 몰라) 제외하였다. 마찬가지로 rebase를 하거나 충돌 관련 try는 CI에서 구현하기 힘들어(할 줄 몰라2) 제외하였다. 그래서 stage, commit, branch, merge, stash 부분만 존재한다. 프로그래밍/Jenkins 2023. 7. 4. [Git] 5. stash Git stash란, 수정중인 파일들을 잠시 임시저장해야할 경우에 주로 사용된다. 예를 들면 Commit을 하기에는 코드 수정이 완료되지 않았는데 branch를 변경 또는 다른 작업을 해야할 때... 임시저장을 하고 나중에 다시 가져와 이어 작업할 수 있다. 1. 임시저장하기 git stash하게 되면 stack에 쌓이게 된다. git stash 2. stash 리스트 확인 git stash list 3. stash 이력 확인 git stash show -p stash@{stash 번호} 4. stash 적용(apply) stash는 stack과 같이 쌓인다 하였는데 적용하는 방법은 2가지이다. C++ 기본 stack 라이브러리에서는stack에서 top을 하게되면 마지막 push의 값을 반환하나 stac.. 프로그래밍/Git 2023. 7. 4. 이전 1 2 3 4 5 6 ··· 17 다음 반응형