일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 주식
- 피쉬아일랜드
- 달빛조각사
- 워리어
- 아가시온
- 한국대중음악박물관
- 리니지2레볼루션
- 반구대암각화
- 스피릿위시
- 걷기앱
- AIA Vitality
- 버그
- 족저근막염
- 후쿠오카
- 창세기전 모바일
- 치루
- 후기
- AT&T
- 샤오미
- 몬스터스트라이크
- 울산박물관
- 브이포
- VDI
- 2차전직
- 국립경주박물관
- 도미네이션즈
- 쿠폰
- 창세기전
- axe
- v4
- Today
- Total
목록IT/임베디드 리눅스 (6)
일상다반사 로그
#include #include #include #include #include #include //랜덤수를 구하기위한 헤더파일 #define ADDRESSOFLED 0x10600000 #define ADDRESSOFPUSHBUTTON 0x10500000 #define ADDRESSOFTEXTLCD 0x10700000//TextLCD를 사용하기 위한 함수들 선언 void setcommand(unsigned short command); void initialize_textlcd(); void setcommand(unsigned short command); void writebyte(char ch); void initialize_textlcd(); void write_string(char *str,int l..
실습13 텍스트 LCD 제어 프로그램 * 실습목표 mmap 함수를 이용하여 텍스트 LCD 디바이스를 제어한다. 텍스트 LCD 응용 프로그램으로는 자신의 학번과 이름을 텍스트 LCD에 디스플레이 하고, 좌우로 시프트되는 프로그램을 작성한다. * 기초지식 텍스트LCD는 DR(Data Register)과 IR(Instruction Register)을 이용하여 LCD에 글자를 표시하고 있다. 그러나 타겟보드의 메인 CPU는 DR/IR 레지스터를 직접 액세스하지 못하고, 텍스트 LCD모듈에서 인터페이스 나온11개 비트(D0~D7,RS,R/W,E)를 이용하여 제어해야한다. 텍스트LCD는 모듈의 물리번지는 0x1070 0000'이므로 mmap함수를 이용한 응용프로그램은 이 번지를 사용하여 TextLcd를 사용할 수 ..
* 실습10 mmap 함수를 통한 가상번지 접근 #include #include #include #define ADDRESSOFSRAM 0x0c000000 int main() { unsigned long *addr_sram; fd=open("/dev/mem",O_RDWR|O_SYNC) addr_sram = mmap(NULL,1,PROT_READ, MAP_SHARED,fd,ADDRESSOFSRAM); printf("sram_Val:[ %x]\n",*addr_sram); } 소스를 작성하고 arm-linux용으로 컴파일하여, 타겟보드에서 SRAM영역에 값을 넣은후 확인한다. EMPOS # write b32 0x0c000000 12345678 EMPOS # boot # ./readsram sram_val:12..
실습10 mmap 함수를 통한 가상번지 접근 - 실습목표 - * 리눅스 시스템에서 파일이나 장치 디바이스를 메모리에 대응시키는 여러방법 중 하나인 mmap() 함수를 사용하여 파일 기술자를 통하여 특정메모리 주소를 액세스해 본다. * 이 과정을 통해서 하드웨어 번지와 사용자가 사용할 수 있는 가상번지 간의 매핑을 이해하고 작성된 프로그램을 컴파일하기 위한 Makefile 작성법을 익힌다. - 준비물 - 리눅스 시스템호스트, EmposII, 크로스 UTP LAN 케이블, RS-232C 직렬 케이블 - 실습내용 - 임베디드 시스템이 적은 메모리와 일반컴퓨터처럼 완벽하게 구현된게 아니기 때문에 가상번지를 이용하여 메모리접근한다. 1. SRAM 하드웨어 번지를 정의한다. #define ADDRESSOFSRAM ..
실습13 텍스트 LCD 제어 프로그램 * 실습목표mmap 함수를 이용하여 텍스트 LCD 디바이스를 제어한다. 텍스트 LCD 응용 프로그램으로는 자신의 학번과 이름을 텍스트 LCD에 디스플레이 하고, 좌우로 시프트되는 프로그램을 작성한다. * 기초지식 텍스트LCD는 DR(Data Register)과 IR(Instruction Register)을 이용하여 LCD에 글자를 표시하고 있다. 그러나 타겟보드의 메인 CPU는 DR/IR 레지스터를 직접 액세스하지 못하고, 텍스트 LCD모듈에서 인터페이스 나온11개 비트(D0~D7,RS,R/W,E)를 이용하여 제어해야한다. 텍스트LCD는 모듈의 물리번지는 0x1070 0000'이므로 mmap함수를 이용한 응용프로그램은 이 번지를 사용하여 TextLcd를 사용할 수 있..
스톱워치 실습 12 7segment 제어프로그램 프로그램 작동순서를 보면 사용자가 키보드로 's‘ 입력하면 스톱워치가 시작된다 소스를 보면은 터미널환경설정을 하고 키보드 감지하는 함수 그리고 키보드입력값을 확인하는 함수를 구현해놓고, 스톱워치에 필요한 함수를 구현했다. 스톱워치에 필요한 함수에는 Showsegment(),Getsegcode(), itos() 함수가 있다. 메인함수에서 무한루프를 돌면서 스톱워치가 시작되면 data, strData의 값을 itos()함수로 보내서 ASCII코드로 받아오고 ASCII코드값을 Getsegcode()함수로 보내서 7segmentLED에 표시할수 있는 값으로 만든다. 그리고나서 Showsegment()함수로 보내서 7segmentLED로 출력한다. 이걸 무한루프를 ..