공부
-
용어 정리공부/Embedded 2024. 4. 28. 16:21
Bootloader : 부팅 시 동작되는 프로그램Disk에 저장되어 있는 운영체제를 실행 시키는 역할. -> RaspberryPi는 자체 부트로더를 사용- 다중 OS 부팅 기능- 장치 제어 및 테스트 기능- 부팅 옵션 관리- hw 초기화 Ubuntu : GPUP2Window : BootmgrARM : U-Boot OS는 App가 메모리에 직접 접근하는 것을 막음-> 부트로더 단계에서는 메모리에 직접 접근 가능 CMOS : H/W chip- 비휘발성 메모리, 컴퓨터의 설정 정보를 저장, 배터리 전원을 사용BIOS : S/W- 기본적인 I/O를 위한 펌 웨어, 컴퓨터 부팅 시 바로 BIOS가 동작 시작- CMOS에 저장된 부팅 설정 정보를 읽어와서 부팅- CMOS의 설정..
-
STM32 - Firmware LED / Timer공부/Embedded 2024. 4. 24. 15:40
STM32 영어 0.01 초로 타이머 설정 싱크 설정 main.c/* USER CODE BEGIN Header *//** ****************************************************************************** * @file : main.c * @brief : Main program body ****************************************************************************** * @attention * * Copyright (c) 2024 STMicroelectronics. * All rights reserve..
-
SPI 통신공부/Embedded 2024. 4. 22. 00:02
https://developer-depot.tistory.com/entry/SPI-%ED%86%B5%EC%8B%A0-%EC%84%A4%EB%AA%85-%EB%B0%8F-%EB%B6%84%EC%84%9D-%EB%B0%A9%EB%B2%95 SPI 통신 설명 및 분석 방법 SPI 통신은 PCB 상의 칩과 칩 사이에서 마스터 슬레이브 모드로 서로 통신을 하는 기법 입니다. 아래 설명 글은 슬레이브 칩을 FM25W256으로 설명 하겠습니다. 일반적으로 마스터는 마이크로 컨트롤 developer-depot.tistory.com
-
[라즈베리파이] senseHat LED Controller공부/Embedded 2024. 4. 17. 09:22
- 기울이면 Player가 이동 from sense_hat import SenseHat from time import sleep sense = SenseHat() red = (255, 0, 0) green = (0, 255, 0) blue = (0, 0, 255) white = (255, 255, 255) black = (0, 0, 0) class Game(): def __init__(self): self.size = 8 self.board = [ [0, 1, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 1, 0], [0, 1, 1, 1, 1, 0, 1, 0], [0, 0, 1, 0, 0, 0, 1, 0], [0, 0, 1, 0, 1,..
-
[Embedded Linux] 프로세스공부/Embedded 2024. 4. 2. 10:06
프로세스 : 실행된 프로그램을 의미, 프로그램이 실행되어 메모리에 적재(Load) 된 상태 PID: Process ID, 운영체제에서 프로세스를 식별하기 위해 프로세스에 부여하는 번호 PPID: Parent Process ID, 부모 프로세스의 PID PGID: Process Group ID, 1 개 이상의 프로세스 그룹을 식별하기 위한 ID SID: Session ID, 1개 이상의 프로세스 그룹의 그룹을 식별하기 위한 ID 리눅스 명령어 ~$ ps -u : 유저가 실행한 프로세스 확인 ~$ ps -ef : 모든 사용자들이 구동시킨 프로세스에 대해 Full Format * PID 1 은 커널로 리눅스 부팅 시 최초 실행되는 프로세스이다. ~$ pstree : 프로세스를 트리 구조로 확인 * 최초 프로세..
-
[Embedded C] Thread공부/Embedded 2024. 4. 1. 17:20
Process 구성 .text : 코드 영역 .data : 초기화된 전역변수 .bss : 초기화 하지 않은 전역변수 .heap : 동적할당 변수들 .stack : 지역 변수들 POSIX thread POSIX API : Portable Operating System InterFace for Unix의 약자로 IEEE에서 지정한 운영체제간 호환성을 유지하기 위한 표준 POSIX thread : pthread.h 위치 : /usr/include/pthread.h thread 사용 시, pthread 라이브러리를 같이 링킹 해야한다. - gcc -o ./test ./test.c -lpthread #include #include #include void *test1(){ while(1) { printf("t1\..
-
[Vue] Components & pinia 실습공부/Vue 2024. 3. 11. 10:46
각 페이지는 여러개의 컴포넌트들로 나눌 수 있음 /components 에 자식 파일 생성 - HomeView.vue Home count: {{userInfoStore.age }} 나이를 줄이자 - HomeChild.vue HomeChild {{ userInfoStore.name }} 이름 변경 - GrandChild.vue GrandChild 한살로 돌아가자 - /stores/counter.js import { ref, computed } from 'vue' import { defineStore } from 'pinia' export const useUserInfoStore = defineStore('userStore', ()=>{ const name = ref("테스트"); const age = ref..
-
[Vue] Day - 1공부/Vue 2024. 3. 6. 14:25
뷰 프로젝트 생성 프론트 서버 실행 cd vue-project npm install npm run dev Chorme 확장 프로그램 veu.js 장점 html에서 변수, 조건문, 반복문 사용 가능 화면 변경사항에 대해 즉각 변경 화면의 각 부분을 컴포넌트 단위로 나눠서 개발 프론트와 백이 서로 다른 프로젝트로 분리되어 통신 단점: 최초 로딩속도가 느림, SEO 검색엔진 최적화 불편 > 단점극복을 위해 SSR 프레임워크인 Nuxt 사용 컴포넌트 .vue확장자가 붙은 파일 총 3 개의 영역, js html css {{}} mustache vue : ref 선언한 변수는 쓸 때 .value를 붙여줘야 함 : .value를 붙이면 에러 v-modal : 양방향 바인딩 는 데이터 변경 가능 v-bind : 단방향..