본문 바로가기

Computer Science/Embedded System Design6

[임베디드] 3장 라즈베리파이 실습 (2) 실습3. 사운드 센서 - 사운드 센서: 소리가 감지될 경우 소리의 세기만큼 LED 밝게 켜짐. - SoundSensor in C #include #include #define SOUND 29 // BCM 21 // physical pin 40 int main(void) { if (wiringPiSetup() == -1) { return 1; } pinMode(SOUND, INPUT); while (1) { if (digitalRead(SOUND) == 1) printf(“Sound detected\n”); else printf(“No sound detected\n”); delay(500); } return 0; } - SoundSensor in Python import RPi.GPIO as gpio #U.. 2023. 10. 20.
[임베디드] 3장 라즈베리파이 실습 (1) 실습1. Python과 GPIO - 라즈베리파이에서 주로 사용하는 프로그래밍 언어: Python, C - Python: 1991년 귀도 반 로섬이 발표. 특징은 아래와 같음(7) 플랫폼 독립적 인터프리터 방식 객체 지향적 동적 타이핑 대화형 언어 다양한 플랫폼에서 사용가능 라이브러리가 풍부 여러 연구, 교육 기관 및 산업계에서 이용 - 라즈베리파이에서 파이썬 사용하기: Thonny 실행. - GPIO를 사용할 때는 피지컬 핀번호와 라이브러리가 인식하는 핀번호를 잘 구분해서 사용해야함. - wiringPi: 라즈베리파이에서 GPIO 핀을 제어하는 데 사용되는 라이브러리.(2019 이후 더 유지보수 안됨.) C언어 사용, github로 다운로드 가능, python에서 사용된 BCM과 핀의 위치가 다르므로 주.. 2023. 10. 20.
[임베디드] 2장 라즈베리파이 소개 1. 라즈베리파이 개발: 2006년 영국 에반업튼 박사가 개발. 목적: 영국 라즈베리 파이 재단이 학교, 개발도상국에게 컴퓨터 보급하기 위해 만든 싱글보드 컴퓨터. 특징(3): 저렴한 가격, 신용카드 크기, 컴퓨터로 동작할 정도로 충분한 성능 2. 라즈베리파이 VS 아두이노 - 아두이노: 펌웨어를 구동하는 임베디드 보드 - 라즈베리파이: 운영체제(리눅스)를 구동하는 컴퓨터. (ARM CPU) 3. 라즈베리 파이 특징(10) - Model 4B 기준. 프로세서: .5GHz로 클록된 네 개의 ARM Cortex-A72 코어가 있는 프로세서를 사용. 메모리: DRAM은 2, 4, 8GB. Micro-SD카드는 클래스 4이상 권장. 전원: 5V DC 전원을 USB 플러그로 입력. 최대 2.5A 전류 입력 비디오.. 2023. 10. 20.
[임베디드] 1장 아두이노보드 실습 (2) 실습5. 모터 제어 - 모터 종류(6): AC모터, DC모터, BLDC모터, Servo모터, Stepping 모터, Geared 모터 - DC모터 사용. - 트랜지스터: 전류 흐름을 스위칭(디지털)하거나 증폭(아날로그) 스위칭 - off: 베이스(B)에 0V(low)가 주어지면 에미터(E)에서 콜렉터(C)로의 전류 흐름이 멈춤. 스위칭 - on: 베이스에 5V(high)가 주어지면 에미터에서 콜렉터로의 전류가 공급됨. 증폭: 베이스에서 나오는 작은 전압이 콜렉터로 갈 때 증폭되어 출력됨. Atmega 128 마이크로 컨트롤러와, NPN 트랜지스터를 사용. LED 4개 구동. PC0에 HIGH가 출력되면 Q1의 스위칭 동작은 ON -> LED 켜짐 PC0에 LOW가 출력되면 Q1의 스위칭 동작은 OFF->.. 2023. 10. 20.
[임베디드] 1장 아두이노보드 실습 (1) 실습1. Bread Board 사용 LED의 다리가 긴 쪽이 (+), 짧은 쪽이 (-) 실습2. LED 깜빡이기 - 함수 함수 pinMode(pin, Input or Output): 해당핀을 input으로 사용할 건지, ouput으로 사용할 건지. 함수 digitalRead(pin): 입력 핀의 현재 상태를 읽음.(High or Low) 함수 digitalWrite(pin, High or Low): 출력 핀의 상태를 설정함. 함수 delay(ms): 행동을 멈춤. 함수 analogWrite(pin, val): PWM기법 사용. val은 0~255사이. 출력 전압 = 5V * (val/255) (PWM: Pulse Width Modulation으로 밝기 변경 기법. 9번 핀에서 사용 가능.) - 전자 회로.. 2023. 10. 20.
[임베디드] 0장 임베디드 시스템과 아두이노 보드 0-1 임베디드 시스템 1. 임베디드 시스템이란? : 하드웨어, 운영체제, 응용 소프트웨어, 네트워킹 등을 특수 목적에 맞게 최적화한 시스템 2. 임베디드 시스템의 역사(3) - (초기): 제어용 시스템 -> 간단한 HD + 펌웨어 수준 실시간 운영체제 + 고정된 응용 프로그램 - (현재): 다양한 임베디드 시스템 -> 정보 가전 시스템, 이동 단말기 - (전망): 고 수준 제어 시스템 -> 일반화된 시스템에 소프트웨어를 교체하는 형태(고정 X) (펌웨어: 특정 하드웨어 장치에 포함된 소프트웨어) 3. 임베디드 시스템 구성요소(3) - 하드웨어: 주 프로세서, 제어를 위한 장치 인터페이스 - 소프트웨어: 임베디드 운영체제(실시간 운영체제, 임베디드 리눅스, 미들웨어 운영체제(안드로이드)) 시스템 제어를 .. 2023. 9. 20.