본문 바로가기

임베디드(embedded)

PC1602A (text lcd) 디바이스 드라이버 (device driver) #include #include #include #include #include #define GPIO_BASE 0xE0200000 // GPIO의 기본 물리주소#define DB_CONF (0xC00/4) // DB로 사용할 핀을 설정하기위한 레지스터 주소#define DB_DAT (0xC04/4) // DB로 사용할 핀에 데이터를 넣기위한 레지스터 주소#define CTRL_CONF (0xC20/4) // LCD 제어를 위한 핀을 설정하기위한 레지스터 주소#define CTRL_DAT (0xC24/4) // LCD 제어를 위한 핀에 데이터를 넣기위한 레지스터 주소 #define RS 0 // RS로 사용할 핀의 인덱스#define RW 1 // RW로사용할 핀의 인덱스#define EN 3 // EN.. 더보기
HC-SR04(ultrasonic) 초음파 센서 디바이스 드라이버 (device driver) #include #include #include #include #include #include #include #include #define GPIO_BASE 0xE0200000 // GPIO 기본주소#define GPH0CON (0xC00/4) // 사용할PIN의CONFIG 레지스터주소#define GPH0DAT (0xC04/4) // 사용할PIN의DATA 레지스터주소 #define TRIG 0 // TIR 핀의인덱스#define ECHO 1 // ECHO 핀의인덱스 static volatile u32 *gpio_base = 0x0; // 주소를저장하는변수struct timeval after, before; // 시간을계산하기위한변수u32 irq; // 인터럽트등록을위한변수 static void gp.. 더보기
라즈베리파이에서 무선랜(wlan) 설정하기 더보기
라즈베리 파이(raspberry PI) - 라즈비안 SSH 설정 더보기
라즈베리 파이(raspberry PI) - 라즈비안 삼바(samba) 설치 및 설정 더보기
라즈베리 파이(raspberry PI) - 라즈비안에서 유선랜(eth0) 설정하기 더보기
툴체인(Toolchain)이란? 툴체인(Toolchain)의 설명에 앞서 툴체인의 필요 목적에 대해서 알아보자. [ 그림 1 ] Host and Target System 임베디드 시스템을 개발을 위해서는 대부분 [ 그림 1 ]처럼 호스트 시스템(Host System)과 타겟 시스템(Target System)으로 구성된다. 호스트 시스템은 실질적인 임베디드 시스템을 개발하는 환경으로, 이는 임베디드 시스템의 하드웨어의 제한적인 성능 때문에 큰 용량의 저장장치를 가지고 있지 않기 때문이다. 그래서 상대적으로 성능이 좋은 호스트 시스템을 구축하여 타겟 시스템에서 동작 가능한 프로그램을 만드는데 이것을 교차 컴파일(Cross compile)이라고 한다. 여기서 타겟 시스템이란 실질적인 임베디드 시스템이 동작되는 환경을 말한다. 툴체인(Tool.. 더보기
라즈베리 파이(Raspberry Pi) 보드 라즈베리 파이(Raspberry Pi) 보드의 스펙은 [ 표 1 ]과 같다. 코어 아키텍쳐 ARM11 메모리 512MB SDRAM 운영체제 리눅스 OS 버전을 수행한다. 규격 85 x 56 x 17mm 파워 Micro USB 5V, 2A 컨넥터 이더넷(Ethernet), 비디오 출력, 오디오 출력, GPIO 컨넥터 카메라 컨넥터, JTAG, 디스플레이 컨넥터, 메모리 카드 슬롯 [ 표 1 ] 라즈베리 파이 스펙 [ 그림 1 ]은 Raspberry Pi의 핀과 컨넥터들의 위치를 나타냈다. [ 그림 1 ] 라즈베리 파이 핀과 컨넥터 위치 더보기
라즈비안(Raspbian) 라즈비안(Raspbian)이란 리눅스 계열의 운영체제인 데비안을 라즈베리에 최적화한 운영체제입니다. 라즈비안의 특징은 아래와 같습니다. 1. 각종 기능을 지원하는 TUI 프로그램인 raspi-config 제공2. 라즈베리에 최적화함3. 기본적으로 많은 패키지가 설치되어 있다.4. 설치 후 용량 대략 2GB 라즈비안 말고도 라즈베리 용으로 배포되고 있는 운영체제로 Pidora, Openelec, Raspabmc, Risc 등이 있습니다. Openelec이나 Raspbmc 같은 경우는 Raspberry XBMC(Xbox Media Center) 전용 운영체제입니다. - XBMC(Xboc Media Center) : 원어 그대로 초기에 Xbox 콘솔의 미디어 센터 프로그램으로 사용되었다. 현재는 별도의 공식 .. 더보기
컴파일러(Compiler)와 인터프리터(Interperter) 컴파일러(Compiler)란 고급 언어로 작성된 프로그램을 컴퓨터에서 즉시 실행될 수 있는 형태의 목적 프로그램으로 바꾸어주는 번역 프로그램입니다. 목적 프로그램이란 프로세서(Processor)가 한 번에 한 명령씩 처리하거나 또는 실행 시킬 수 있는 기계 코드입니다. 컴파일(Compile) 과정 내에도 컴파일(Compile)과 컴파일러(Compiler)가 존재합니다. 이는 하드웨어에 종속적인 코드인 어셈블리어로 변환해주는 역할을 하는데, 전처리(Preprocessor), 컴파일(Compile), 어셈블러(Assembler), 링크(Link) 과정을 묶어서 ‘컴파일(Compile)’ 이라고 통칭하고, 이러한 번역을 해주는 프로그램을 ‘컴파일러(Complier)’ 라고 통칭할 수 있습니다. 컴파일러(Com.. 더보기