티스토리

코독코독
검색하기

블로그 홈

코독코독

coderdocument.tistory.com/m

Coder Document

구독자
0
방명록 방문하기

주요 글 목록

  • MCU - 타이머/카운터 Timer/Counter용도- 시간 및 펄스 폭 측정- 외부 event count- PWM(Pulse Width Modulation) 펄스 발생- 주기적인 인터럽트 발생 종류8bit 타이머/카운터 : 0x00 ~ 0xFF까지 카운트가 가능하다.16bit 타이머/카운터 : 0x0000 ~ 0xFFFF까지 카운트가 가능하다. 동작회로에서 입력으로 clock 신호가 들어오면 clock이 발생한 개수를 count한다. 타이머/카운터 차이타이머는 mcu 내부 clock을 입력으로 사용카운터는 외부 clock을 입력으로 사용 사용1. 일정 시간마다 동작되어야 하는 경우    주기적으로 오버플로우가 발생하도록 하여 오버플로우가 발생한 경우, 특정 동작을 수행하도록 설계된다.2. 모터 동작    PWM 펄스를 생성하여.. 공감수 0 댓글수 0 2024. 7. 8.
  • MCU - 인터럽트 (3) MCU - 인터럽트 (2)https://coderdocument.tistory.com/entry/MCU-%EC%9D%B8%ED%84%B0%EB%9F%BD%ED%8A%B8-2 외부 인터럽트앞 장에서 서술한 ( 인터럽트 조건 발생 시에만 관련 플래그 트리거 )에 해당하는 종류이다.이는 입력 펄스의 변화를 감지하여 인터럽트가 발생한다. 입력 펄스의 인터럽트 설정1. 입력 펄스의 edge 트리거 방식- 상승 에지 발생 : level이 low에서 high로 변경될 때- 하강 에지 발생 : level이 high에서 low로 변경될 때- 에지 발생 (상승, 하강) : level이 변경될 때2. 입력 펄스의 level 트리거 방식- HIGH 입력 : level이 high일 때- LOW 입력 : level이 low일 때.. 공감수 0 댓글수 0 2024. 7. 8.
  • MCU - 인터럽트 (2) MCU - 인터럽트 (1)https://coderdocument.tistory.com/entry/MCU-%EC%9D%B8%ED%84%B0%EB%9F%BD%ED%8A%B8 - 인터럽트 우선 순위인터럽트는 비동기적으로 발생하기 때문에 여러 개가 인터럽트를 요청하는 경우가 발생할 수 있다.이 경우, 마이크로컨트롤러는 한번에 여러 개의 인터럽트를 처리할 수 없기 때문에 순차적으로 처리할 필요가 있다.순차적으로 처리하기 위해 인터럽트의 우선순위를 정하게 된다. 우선순위는 마이크로컨트롤러 내부에 미리 결정되어 있으며, 미리 결정된 인터럽트 우선 순위를 변경하기 위해서는 인터럽트 우선순위를 지정하는 레지스터를 변경하면 된다.마이크로컨트롤러에 따라 우선순위가 정해져 있어 변경하지 못하는 경우도 존재한다. - 인터럽트 .. 공감수 0 댓글수 0 2024. 7. 1.
  • MCU - 인터럽트 (1) 인터럽트인터럽트란, 프로그램이 수행되고 있는 동안에 어떤 조건이 발생하여 수행 중인 프로그램을 일시적으로 중지하게 만드는 조건이나 사건의 발생을 의미한다.인터럽트는 사건에 대해 비동기적으로 반응한다. 인터럽트 프로그램 실행 과정  마이크로컨트롤러가 프로그램을 실행하는 과정은 한번에 하나의 명령어만 처리할 수 있다.그러므로 인터럽트가 발생하면 현재 수행하던 Main 프로그램을 일시 중단하고 인터럽트 처리를 위한 ISR 프로그램을 수행한 후, 다시 원래 Main 프로그램으로 복귀하는 구조로 이루어진다. Main Program이 비동기적으로 발생한 event에 대해 반응하여 프로그램을 수행할 수 있다.이처럼 비동기적인 event에 대응하여 인터럽트를 처리하는 프로그램을 인터럽트 서비스 루틴 (Interrupt.. 공감수 0 댓글수 0 2024. 7. 1.
  • MCU - I/O 레지스터 I/O 레지스터I/O(Input/Output) register는 입출력 레지스터로 주변 소자의 기능을 제어하기 위해 사용된다.이 레지스터는 SRAM 영역에 주소가 할당되어있다. I/O 레지스터의 일반적인 제어 방법- I/O 포트를 제어하기 위해 sfrb, sfrw 키워드가 제공된다.- I/O 레지스터의 주소는 헤더 파일에 정의되어 있다. sfrb : byte 단위 특수 기능 레지스터를 지정하는 지시어다.sfrw : word 단위 특수 기능 레지스터를 지정하는 지시어다. C8051 I/O RegisterUser's Guides for Keil C51 Development Tools 내용을 참조하자면https://developer.arm.com/documentation/101655/0961/Cx51-User.. 공감수 0 댓글수 0 2024. 7. 1.
  • MCU - 상태 레지스터 상태 레지스터상태 레지스터(Status Register)란 가장 최근에 실행된 산술 연산의 명령 처리 결과에 대한 상태 정보를 표현한다.이 상태 정보는 조건부 처리 명령어(if ... 등)에 의해 프로그램의 흐름을 제어해야 할 경우, 사용될 수 있다. 상태 레지스터는 인터럽트를 처리하는 과정에서 자동적으로 저장되거나 복구되지 않기 때문에 필요하다면 소프트웨어에서 필요한 동작을 처리해주어야 한다. - 연산 결과에 따라 나타나는 플래그부호 플래그 : 가장 최근 수행된 산술 연산 결과과 +일 경우 0, -일 경우 1로 세팅된다.제로 플래그 : 연산 결과가 0일 경우 1, 0이 아닌 경우 0으로 세팅된다.캐리 플래그 : 자리 올림이 발생하거나 감산 결과 자리내림이 발생할 경우 1로 세팅된다.오버플로우 플래그 :.. 공감수 0 댓글수 0 2024. 6. 30.
  • MCU - 마이크로컨트롤러 마이크로컨트롤러마이크로컨트롤러(microcontroller, MCU)는 CPU, 기억장치(RAM, ROM), 입출력 장치를 하나의 칩에 모두 내장하여 정해진 기능을 수행할 수 있다. MCU는 micro controller unit의 약자이다. 마이크로컨트롤러의 종류에는 8051, AVR, PIC, ARM, 80C196 ... 등이 존재한다.마이크로컨트롤러를 컨트롤할 때 AND, OR, XOR 등의 비트 연산을 수행할 수 있다.마이크로컨트롤러는 규모가 작은 시스템에 사용한다. 그래서 특징으로 운영체제를 포함하지 않는 경향이 있다는 점과 특정 기능만 수행하도록 응용프로그램이 만들어진다는 점이 있다. 중앙처리장치(CPU)는 마이크로컨트롤러의 중심을 담당한다. 명령어의 인식, 해석과 실행을 제어하고 연산 처리를.. 공감수 0 댓글수 0 2024. 6. 30.
  • HDMI란 무엇인가? HDMI란?HDMI(High Definition Multimedia Interface)는 2002년에 처음 발표된 음성 신호 전송까지 포함된 디스플레이 인터페이스 커넥터 표준 규격입니다. 영상 신호뿐만 아니라 음성 신호까지 전송되어 케이블을 줄일 수 있는 점이 장점입니다. TMDS3개의 line을 통해 R, G, B 세 가지 원색을 전송하고, HV 신호는 B 신호통로에서 전송되며 R, G 신호통로에 음성 신호가 전송DDCDisplay Data Channel, 디스플레이 데이터 통로로, 장치의 송출 사양 신호와 데이터 격식 신호를 받는 용도로 사용되며, 장치의 이런 E-EDID(Enhanced Extended Display Identification Data,  호환성 식별 데이터) 정보가 전송CECCon.. 공감수 0 댓글수 0 2024. 6. 26.
  • 네트워크 인터페이스 명 변경 방법 네트워크 인터페이스 명 변경 방법cmd에서 ifconfig 명령으로 네트워크 인터페이스를 보면 이름이 enp10s0이라던가 wlp7s0과 같이 보이는 경우가 있을 것이다. 이때 이렇게 보이는 네트워크 인터페이스명을 우리에게 익숙한 eth, wlan으로 보이도록 바꾸는 방법이 있다. 다음 순서대로 진행해보자. 1. dmesg | grep -i wlp (또는 dmesg | grep -i eth 또는 dmesg | grep -i wlan) 해당 명령을 통해 부팅 시, wlan0을 wlp7s0으로 rename하고 있음을 알 수 있다. 2. vi /etc/default/grub 부팅 시 rename하고 있으므로 부트로더 설정을 수정해야한다.  파일을 열면 GRUB_CMDLINE_LINUX= 이 적혀있는 라인을 볼.. 공감수 0 댓글수 0 2024. 6. 25.
  • Makefile Makefile이란make빌드 방식은 gcc 빌드 방식을 대신하여 간단하게 빌드 할 수 있도록 해준다.이때 Makefile은 make 빌드툴을 이용하여 프로그램을 빌드할 수 있도록 make문법에 맞게 작성하는 문서라고 할 수 있다. gcc 빌드는 해본사람이라면 알겠지만 실행파일을 만드는데 필요한 소스파일이 적을 때엔 make빌드보다 간단하고 쉬워보이지만 필요한 파일이 많아질수록 점차 복잡해지고 오래걸린다는 것을 알 수 있다. make빌드는 Makefile을 통해 복잡한 빌드과정을 간단하게 수행할 수 있다.CROSS_COMPILE=/usr/lib/aarch64-linux-gun/aarch64-linux-gun-CC=$(CROSS_COMPILE)gccTARGET=testOBJS=test.oall: $(TAR.. 공감수 0 댓글수 0 2024. 6. 25.
  • TCP, UDP 통신 네트워크란네트워크란 여러 시스템이 프로토콜을 사용하여 데이터를 주고받는 것들을 하나의 단위로 통칭한 것이라고 할 수 있다. 즉, 다수의 시스템을 전송 매체(케이블, 공기, 무선 신호 등)로 연결해 구성한 시스템들의 집합체이다. 여기서 시스템이란 일반적으로 컴퓨터 시스템을 의미하지만 ‘내부 규칙에 따라 능동적으로 동작하는 대상’을 말한다. 자동차나 자판기, 컴퓨터 등과 같은 물리적 장치 뿐만 아니라 운영체제, 프로세스 등과 같은 논리적 대상 또한 시스템이라고 할 수 있다. 또한 프로토콜은 시스템이 전송 매체를 통해 데이터를 교환할 때 따르는 ‘표준화된 특정 규칙’을 말한다.  네트워크를 얘기하면 흔히 뒤따라오는 것이 있다. 바로 OSI 7 계층이다. OSI 7 계층이란 통신 기능을 7개의 기능으로 모듈화 .. 공감수 0 댓글수 0 2024. 6. 22.
  • WiFi Wifi란?Wi-Fi는 전자기기들이 무선랜(WLAN, 무선 근거리 통신망)에 연결할 수 있게 하는 기술. 즉, 두 대 이상의 전자기기들을 무선 신호 전달 방식으로 연결할 수 있게 하는 기술이며, IEEE802.11 표준 규격을 사용한다.  ieee802.11이란 WLAN에 사용되는 표준 규격으로, 유선 LAN인 이더넷의 단점을 보완하기 위해 고안된 기술이다. 802.11 프로토콜에 따라 다르지만 주가 되는 동작 주파수는 2.4GHz, 5GHz 이다.    자주 접하는 용어 와이파이에 대해 보다보면 Frequency, Channel, BandWidth, Bonding이라는 용어를 많이 접하게 될 것이다. 이 용어들은 아래와 같은 의미를 가지고 있다. Frequency : 말 그대로 주파수를 의미한다. Ba.. 공감수 0 댓글수 0 2024. 6. 17.
  • 컴파일러 & 크로스 컴파일 컴파일러란?인간의 언어에 가까운 소스코드(maic.c)를 컴퓨터가 이해할 수 있는 기계어로 변환하는 과정으로 컴파일된 파일을 Object File(main.o)이라고 부른다.컴파일러의 종류로는 gcc, g++ clang 등이 존재한다. 컴파일 과정전처리 (Pre-processing) 과정전처리기를 통해 소스코드 파일(*.c)을 전처리된 파일 (.*i)으로 변환하는 과정이다.주석을 제거하고, #include 지시문을 만나면 해당 헤더 파일을 찾아 헤더 파일에 있는 모든 내용을 복사해 소스코드에 삽입, =#define 지시문에 정의된 매크로를 저장하고 해당 내용을 치환한다.컴파일 (Compilation) 과정컴파일러를 통해 전처리된 파일(*.i)을 어셈블리어 파일(*. s)로 변환하는 과정어셈블리 (Asse.. 공감수 0 댓글수 0 2024. 6. 15.
  • git 기초 명령어 git은 분산 버전관리 시스템으로 소프트웨어 개발 과정에서 소스 코드의 변경 사항을 추적하고 관리하는 데 사용된다.git을 사용하면 여러 개발자가 동시에 작업할 수 있으며, 변경 내용을 효과적으로 병합하고 관리할 수 있다. 자신이 원하는 디렉터리에 git 저장소를 생성git init 위의 명령어를 디렉터리 안에. git 이 생성된다. 이 디렉터리에는 Git이 버전 관리를 하기 위한 메타 정보가 담겨있으며, 구체적으로 어떤 내용인지는 Git을 사용할 때 크게 중요하지 않다. 정말 중요한 것은 이 디렉토리를 지우는 순간, 해당 Git 저장소의 모든 변경 이력은 소실되고 일반 디렉터리로 돌아온다는 것이다. 로컬에 github 계정 정보 등록하기git config --global user.name "Your U.. 공감수 2 댓글수 0 2024. 6. 14.
  • Peripheral과의 통신 - 3. I2C I2C란?I2C(Inter-Integrated Circuit [아이스퀘어드시])는 1980년대 초반 필립스에서 개발한 직렬 버스로, 임베디드 시스템 혹은 휴대전화 등에 저속의 Peripheral을 연결하기 위해 사용된다. 즉, 빠른 속도를 요구하지 않는 간단한 주변 장치들에 적합하며, 통신 길이가 짧은 통신에 적합하다. I2C는 풀업 저항이 연결된 SDA(직렬 데이터), SCL(직렬 클럭) 이라는 두 개의 양 방향 라인을 사용한다. SDA는 데이터를 주고받는 라인, SCL은 타이밍을 동기화 하기 위한 클럭 라인이다.  이처럼 I2C는 CLK(클럭)이 있는 동기식 통신 방식이다.동기식 통신이란 송/수신측 간 통신에서 데이터를 주고 받는 시점(타이밍)을 정확하게 일치&유지 시키는 것이다. 이때, 그 시점을 .. 공감수 0 댓글수 0 2024. 6. 13.
  • 리눅스 명령어 & rootfs rootfs (root file system)리눅스는 모든 시스템을 파일로 관리한다. 파일시스템의 최상위 디렉터리는 루트 파일 시스템(이하 rootfs)이다.리눅스 시스템 부팅을 위한 모든 파일을 포함하고 있다. 다른 파일시스템을 부팅하는데 필요한 모든 실행파일과 라이브러리를 포함하고 있다. 시스템이 설치되면, 다른 모든 파일 시스템은 루트 파일시스템의 하위 디렉터리에 설치된다. /binuser 실행파일을 포함, binary의 약자/boot리눅스 컴퓨터를 부팅하는 데에 사용되는 정적 부트로더와 커널 실행파일, 구성 파일을 포함/devdevice 장치 파일 디렉터리시스템에 연결된 하드웨어 기기의 디바이스 파일을 포함 디바이스 드라이버가 아닌, 컴퓨터에 연결된 기기를 나타내고 그 기기에 접근을 가능하도록 하.. 공감수 0 댓글수 0 2024. 6. 13.
  • 네트워크 구조 우리는 인터넷을 매일 사용한다 해도 과언이 아니다. 그만큼 일상에서도 많이 사용하는 네트워크에 대해 조금 알아보고자 한다.LAN(Local Area Network)한정된 영역에 존재하며, 일반적으로 인터넷 연결의 단일 중앙 지점을 공유한다. 쉽게 말하면 집, 회사, IP 전화기 같은 작은 단위라고 생각하면 된다. 이때 컴퓨터끼리 직접 연결하지 않고 공유기나 스위치 등을 이용해 연결한다.이더넷 선은 버스 구조로 CSMA/CD방식을 무선 LAN은 CSMA/CA 방식을 사용하고 있다. CSMA:  데이터를 전송하고 싶은 노드가 케이블의 통신 상황을 감시하여 케이블이 열리면 송신을 개시하는 임의의 다중 접속 프로토콜이다.CSMA /CD (Collision Dection) : 전송 후 충돌을 감지하여 재전송을 시.. 공감수 0 댓글수 0 2024. 6. 12.
  • IPC와 RPC 차이 프로세스는 프로세스 간에 메모리를 공유하지 않는다. 그렇기 때문에 프로세스 간의 통신이 필요한데 이런 통신이 뭐가 있을까?? 또한 각기 다른 디바이스들이 어떻게 통신을 할까?? 이번 글에는 IPC와 RPC차이를 알아보고자 한다. IPC와 RPC는 async call로 스레드에서 하부작업 요청 시 요청된 하부작업의 실행 또는 종료와 관계없이 호출 스레드 또는 프로세스의 실행 흐름은 계속되는 호출을 말한다.IPC (Inter Process Communication)각 프로세스들이 통신하는 모든 형태를 일컽는다. 이에는 여러 형태의 메시지 전달 방식이 포함된다IPC의 종류Shard Memory프로세스간 공유되는 메모리 영역을 만들어 사용하는 방법커널에 만들어짐프로세스들은 읽기/쓰기를 통해 공유 영역을 수정할 .. 공감수 0 댓글수 0 2024. 6. 12.
  • Peripheral과의 통신 - 2. UART UART(범용 비동기화 송수신기: Universal Asynchronous Receiver/Transmitter)란 병렬 데이터의 형태를 직렬 방식으로 전환하여 데이터를 전송하는 컴퓨터 하드웨어의 일종이다. 메모리 또는 레지스터에 들어 있는 통신 데이터를 차례대로 읽어 직렬화 하여 통신하며, 최대 8비트가 기본 단위이다.  직렬통신은 Serial 통신이라고 하며, 병렬통신은 Parallel 통신이라고 한다.UART는 Rx와 Tx. 두 개의 입출력 핀이 있다. UART의 U는 범용을 가리키는데 이는 자료 형태나 전송 속도를 직접 구성할 수 있고 실제 전기 신호 수준과 방식이 일반적으로 UART 바깥의 특정한 드라이버 회로를 통해 관리를 받는다는 뜻이다. Clock이 존재하는 경우를 우리는 동기통신 Cloc.. 공감수 0 댓글수 0 2024. 6. 11.
  • Peripheral과의 통신 - 1. GPIO 임베디드에서 가장 많이 접하게 되는 peripheral과의 3가지 통신 방식이 있다. GPIO, UART, I2C 이다. 이 중 GPIO(범용 입출력: General Purpose Input/Output)는 개발자가 필요에 따라 입력/출력을 설정하여 사용할 수 있도록 한다. 단, 하나의 GPIO포트에 대해 입/출력을 동시에 설정할 수 없으며, 입력과 출력 중 한 가지 모드로 설정해서 사용해야한다. Linux에서 /sys/class/gpio/ 에서 export 된 GPIO 목록을 볼 수 있다. GPIO 입/출력 설정은 ‘direction’값에 ‘in’ 또는 ‘out’값을 넣어 설정한다. ‘in’이면 입력, ‘out’이면 출력이다.GPIO 포트를 입력(in) 설정해야하는 경우의 예로는 버튼이 있고, 출력(o.. 공감수 0 댓글수 0 2024. 6. 11.
  • 리눅스 커널& 디바이스 드라이버 일반적으로 디바이스란 컴퓨터에 물려있는 여러 주변장치들을 뜻한다. 네트워크 어댑터, LCD 디스플레이, 오디오, 터미널, 키보드, 하드디스크, 플로피디스크, 프린터 등이 바로 디바이스에 해당하고, 이러한 디바이스들을 컨트롤하기 위한 디바이스 드라이버가 존재한다.디바이스 드라이버는 시스템이 지원하는 하드웨어를 사용자가 응용 프로그램에서 사용할 수 있도록 커널의 일부 영역을 사용하여 동작하는 일종의 프로그램이다. 리눅스에서는 모든 것을 파일로 간주하는데, 이러한 디바이스 드라이버 또한 파일로 관리된다. /dev/ 아래에 들어있는 파일들이 바로 디바이스 드라이버 인터페이스이고, 하드웨어와는 독립적으로 응용프로그램이 파일 open, read, 같은 함수로 접근할 수 있다.  리눅스에서 사용자가 커널 모드의 디바.. 공감수 2 댓글수 0 2024. 6. 11.
  • 메모리 구조 저번 글에서는 임베디드 리눅스 부팅 절차에 대해서 얘기해 봤다.커널이 실행되면 컴퓨터는 여러 프로그램들을 실행한다 이때 각각의 실행 파일은 4G의 가상 메모리 공간에 로드되는데 그렇다면 메모리란 무엇일까? 이번엔 메모리에 대해서 얘기해 보고자 한다. 메모리란?메모리 라는 말은 기억장치라는 뜻을 가지고 있다. 우리가 원하는 작업을 처리하기 위해서는 처리 대상의 내용 또는 처리 결과를 잠시 기억하고 있어야 할 필요성이 생기는데, 이때 사용되는 것이 메모리이다.메모리와 저장소의 차이는 휘발성인지, 비휘발성인지의 차이가 있다.그래서 보통 전원이 켜져 있을 때만 단기적으로 저장되는 RAM(Random Access Memory)은 메모리라고 하고 RAM의 종류는 정적 메모리인 SRAM과 동적 메모리인 DRAM이 있.. 공감수 1 댓글수 0 2024. 6. 10.
  • 임베디드 리눅스 부팅 절차 임베디드란 메모리 등의 자원이 한정되어 있는 장치로 작은 컴퓨터라 볼 수 있다.그렇다면 컴퓨터에 전원 버튼을 누르면 어떻게 동작하는지 아는가? 이번 글은 임베디드 리눅스 부팅 절차를 설명해 보려고 한다.ROM -> SPL -> U-Boot -> Kernel임베디드에서 power 버튼을 누르면 부트롬이 실행된다.부트롬 이란?리셋이나 전원을 켠 직후에 실행되는 SoC의 칩상에 저장된 코드로 메모리 컨트롤러가 필요 없는 SRAM만 사용이 가능하며 이 안에는 부트로더를 실행할 수 있는 부트로더 메모리 정보가 담겨있다.부트롬에서 부트로더를 실행할 수 있는 메모리로 이동하게 된다.부트로더란?커널로 제어 넘길 때 보내주는 기본 정보로 장치 트리가 지원되지 않는 파워 PC와 ARM 플랫폼에서 SoC의 종류를 식별하기 .. 공감수 0 댓글수 0 2024. 6. 10.
  • Yocto 기초 Yocto 란?리눅스를 개발하려면 개발하려는 아키텍처를 확인해야 하고 어떤 OS를 사용할 건지 또 호환되는 버전은 무엇인지 부트로더 roofs 등등... 수많은 선택이 많다. 그걸 다 정했다 하더라도 빌드할 수 있는 환경을 구축하는데도 엄청난 시간이 소요된다. 이런 개발 환경을 좀 더 쉽게 만들어주는 게 빌드 툴이이다. 즉 하드웨어 아키텍처와 무관하게 커스텀 임베디드 리눅스를 만들기 위한 빌드 프레임워크이다, 빌드 툴은 buildroot. LTIB , Yocto 등 여러 가지가 존재하는데 그중 yocto project를 살펴볼 예정이다. yocto에서 다운로드한 컴파일러를 통해서 이미지들이 빌드되기 때문에 개발자는 컴파일러를 설치하려고 찾아다닐 필요가 없다는 큰 장점이 있지만 yocto의 전체 구조를 한.. 공감수 0 댓글수 0 2024. 6. 9.
  • HTTP HTTP(Hypertet Transfer Protocol)는 웹에서 데이터를 주고받는 서버-클라이언트 모델의 프로토콜이다.클라이언트의 요청과 서버의 응답 사이에는 여러 프록시 서버가 있다. 이 모든 통신은 안전하게 이뤄지기 위해 TCP연결을 사용한다. Http Header를 보면 많은 정보들이 담겨있고 그 정보들은 key와 value로 존재한다.  Http Header란?클라이언트와 서버가 요청 또는 응답으로 부가적인 정보를 전송하는 데이터이다. 헤더는 크게 4가지로 분류할 수 있다.General Header (공통 헤더)Request Header (요청 헤더)Response Header (응답 헤더)Entity Header (엔티티 헤더)General Header (공통 헤더)요청과 응답 모두에 적용되.. 공감수 0 댓글수 0 2024. 6. 4.
  • SHELL script # 쉘 스크립트 시작 표시#!/bin/sh# 입력read NAME# 출력echo "Hello, $NAME!"printf "Hello %s\n" $NAMEtest="SHELL SCRIPT"echo ${test}특별한 변수변수 기능$0스크립트명$1 ~ $9인수, 첫 번째의 인수는 $1, 2번째 인수는 $2로 액세스$#스크립트에 전달된 인수의 수$*모든 인수를 모아 하나로 처리$@모든 인수를 각각 처리$?직전에 실행한 커맨드의 종료 값(0은 성공, 1은 실패)$$이 쉘 스크립트의 프로세스 ID$!마지막으로 실행한 백그라운드 프로세스 ID#!/bin/shecho "\$0(스크립트 명): $0"echo "\$1(1번째 인수): $1"echo "\$2(2번째 인수): $2"echo "\$#(인수의 수): $#"ec.. 공감수 0 댓글수 0 2024. 6. 3.
  • Bluetooth란 + BLE 동작 방식 블루투스란 디지털 기기 사이에 전파를 이용하여 정보를 교환하는 기술로, 디지털 기기를 연결하는 케이블을 대체하는 단거리 무선 통신 시스템이라고 할 수 있습니다.1994년 에릭슨이 최초로 개발하였고, 1998년 Bluetooth SIG(pecial Interest Group) 설립 후 Bluetooth라는 이름을 발표했으며, 현재 블루투스는 Bluetooth SIG을 통해 관리되고 있습니다. 블루투스 시스템은 크게 BR/EDR(Basic Rate/Enhanced Data Rate)과 LE(Low Energy)두 가지로 나눌 수 있습니다.이러한 시스템 구현 방식에 따라 Bluetooth 장치 또한 두 가지 유형으로 구분되는데, BR/EDR 또는 LE 만 구현된 장치는 싱글모드 장치라고 하고, BR/EDR과 .. 공감수 0 댓글수 0 2024. 6. 3.
  • SQLD 1장 데이터 모델링의 이해 1장. 데이터 모델의 이해1절. 데이터 모델의 이해1. 모델링- 다양한 현상을 추상화, 단순화하여 일정한 표기법에 의해 표현하는 것- 모델이란 현실 세계의 추상화된 반영 2. 모델링의 특징- 추상화 : 일정한 형식에 맞춰서 표현- 단순화 : 제한된 표기법이나 언어로 표현- 명확화(=정확화) : 애매모호함을 제거하여 이해가 쉽게 표현 3. 모델링의 관점- 데이터 관점 (what) : 업무와 데이터 및 데이터 사이의 관계를 모델링- 프로세스 관점 (how) : 업무가 실제로 하고 있는 일, 해야 하는 일 모델링- 데이터와 프로세스의 상관 관점 (interaction) : 데이터에 대한 업무 처리 방식의 영향을 모델링 * 데이터 모델링의 중요성과 유의점(1) 중요성 : 파급효과, 간결한 표현, 데이터 품질 유.. 공감수 1 댓글수 0 2024. 6. 2.
  • GStreamer 기초 GStreamer란?스트리밍 미디어 응용 프로그램을 만들기 위한 프레임 워크로 모든 유형의 스트리밍 멀티미디어 응용 프로그램을 작성할 수 있습니다. 구성요소를 임의의 파이프라인에 혼합하여 응용 프로그램을 작성할 수 있는 장점이 있습니다. GStreamer 구성요소  1. PipelineGStreamer 파이프라인은 멀티미디어 데이터를 처리하는 element들로 구성되어 있습니다.데이터가 입력되는 src 요소와 출력되는 sink 요소,  encoding, decoding filtering 등의 특정 작업을 수행하는 요소들이 존재합니다.   2. ElementsElements는 파이프라인을 구성하는 추상화된 Block형태를 정의합니다. 서로 연결된 elements를 만들고 이를 통해 데이터가 흐르도록 합니다.. 공감수 0 댓글수 0 2024. 5. 29.
  • 프레임 (GOP) & 영상 품질 요소 ( Bit rate / Frame rate) 지난 글에 2024.05.23 - [Embedded SW 기초] - Stream 구조와 원리를 보셨다면 마지막에 손실압축과 무손실 압축이 있다는 것을 아실 수 있습니다. 사람의 눈은 시시각각 바뀌는 영상에 모든 정보를 담지 못합니다. 또한 같은 화면인 경우 같은 데이터를 준다면 중복 데이터로 인해 전송이 더 느려질 수 있습니다. 이러한 내용을 보완하고자 손실압축이 생겨 났습니다. GOP(Group Of Pictures)란?MPEG standard 비디오 압축 기술에서 사용되는 표현으로 인코딩한 이미지 프레임 그룹입니다.즉, 여러 장의 연속적으로 나열된 이미지 프레임들을 하나의 이미지 프레임 그룹으로 인코딩합니다.GOP의 구성은 IFrame BFrame PFrame이 있습니다. 그림에서 보듯  IFrame.. 공감수 1 댓글수 0 2024. 5. 29.
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.