ARM9 (S3C2443), ARM11(S3C6410) 테스트 보드를 통해 실제 개발에 활용할 수 있는 지침서로, EmbeddedSystem Firmware, RTOS (eCos)의 통합 가이드. 입문에서 전문가 수준까지를 담고 있으며, 펌웨어 및RTOS (eCos) 개발 실전 코드를 제공한다. RTOS (eCos) 포팅에 대한 실전적 설명과 단순 제어에서 RTOS디바이스 드라이버까지 광범위한 체험을 할 수 있도록 구성하였다.
저자 : 박선호
저자 박선호는 서울대학교 컴퓨터공학과 학사, 서울대학교 컴퓨터공학과 석사. 현대전자주식회사 중대형컴퓨터 개발, VK주식회사 GSM 핸드폰 개발, 코아로직 사업본부장. 현) 씨알지테크놀러지 대표이사.
저자 : 오영환
저자 오영환은 고려대학교 전산과학과 학사. 현대전자주식회사 CDMA 시스템 개발, 한테크 기지국 RF TEST장비 개발, 뉴젠텔레콤 GSM 핸드폰 개발, 코아로직 AP FAE 개발 팀장, 현) 씨알지테크놀러지 수석연구원. 주요 공저 저술 망고스토리1, S3C2443/S3C6410/JTAG EMBEDDED, BOARD를 통한 ARM9/ARM11EMBEDDED 환경 체험, 망고스토리2, 실전! ARM CORTEX-M3 시스템 프로그래밍 완전정복 1, 망고스토리3, 실전! ARM CORTEX-M3 시스템 프로그래밍 완전정복 2, 망고스토리4, 실전! WINDOWS CE 시스템 프로그래밍 완전정복, 망고스토리5, 실전! 안드로이드 (ANDROID) 시스템 프로그래밍 완전정복, 망고스토리6, 실전!ARM 임베디드시스템 FIRMWARE/RTOS 완전정복
서 언
1.Introduction
1.1.ARM9, ARM11 프로세서와 임베디드 보드
1.2.MANGO 보드 개발 철학
1.3.개발 환경 갖추기
2.VMware & 리눅스(Ubuntu) 환경 구축
2.1.VMware 및 우분투 설치
2.2.우분투 기초 활용
3.리눅스(Ubuntu) 에디터 gedit & vim
3.1.gedit
3.2.vim
4.Host PC와 파일 공유 - VMware Tools & 삼바(Samba)
4.1.VMware Tools
4.2.VMware Tools를 이용한 파일 공유
4.3.삼바 (Samba) 이용
5.Cross compiler (CodeSourcery G++) 설치하기
5.1.Cross-Compiler 선택
5.2.Code Sourcery G++ 설치
5.3.Hello Mango World를 Simulator로 실행해보기
6.DNW 수행과 망고24, 망고64 부팅 모드
6.1.DNW 실행 및 설정
6.2.망고24 - NOR Mode로 부팅하기
6.3.망고24 - NAND Mode로 부팅하기
6.4.망고64 - NOR Mode로 부팅하기
6.5.망고64 - NAND Mode로 부팅하기
7.Mango-24 하드웨어 매뉴얼
7.1.하드웨어 사양
7.2.보드 구성
7.3.Hardware Block Description
8.Mango-64 하드웨어 매뉴얼
8.1.하드웨어 사양
8.2.보드 구성
8.3.Hardware Block Description
9.망고보드 연결 및 U-Boot 구동
9.1.U-Boot 빌드를 위한 환경 변수 설정
9.2.Minicom 설정
9.3.Ethernet Downloading Server 설치
9.4.망고24 U-Boot 구동
9.5.망고64 U-Boot 구동
9.6.Cross-Cable을 이용한 직접 연결
9.7.망고24 소스를 이용해서 망고64 U-Boot 만들기
10.UART 및 화면 입출력 - 첫 번째 이야기
10.1.환경 구축에 대한 리뷰
10.2.RS-232C와 UART에 대한 상식
10.3.가장 간단한 화면 출력 프로그램
10.4.임베디드 개발 개요
10.5.UART GPIO 설정
11.UART 및 화면 입출력 - 두 번째 이야기
11.1.UART에 관한 사전 지식
11.2.S3C2443/S3C6410 UART
11.3.망고24 소스 코딩
11.4.망고24 테스트
12.UART 및 화면 입출력 - 세 번째 이야기
12.1.망고24, 망고64에 모두 적용하는 코드 만들기
12.2.망고24, 망고64에서 실행하기
12.3.printf를 사용하자
12.4.Makefile 하나로 망고24, 망고64 모두 빌드하기
13.GPIO와 Button (Polling 방식) - 첫 번째 이야기
13.1.GPIO에 관한 사전 지식
13.2.S3C2443 / S3C6410 GPIO Registers
13.3.GPIO driver
13.4.Button driver
13.5.기타 소스 코드 변경 사항
13.6.시험 결과
14.GPIO와 Button (Polling 방식) - 두 번째 이야기
14.1.GPIO 드라이버 헤더 파일 수정
14.2.버튼 드라이버 소스 파일 수정 ? mango_button.c
14.3.main 함수 수정
14.4.GPIO 드라이버 소스 파일 수정 ? s3c_gpio.c
14.5.결론
15.Timer와 정확한 1초 Delay 구현
15.1.Timer 관련 분석
15.2.S3C2443/S3C6410 Timer
15.3.Delay function 만들기
15.4.테스트 하기
16.PWM Timer와 LCD Backlight 조절
16.1.PWM function 만들기
16.2.LCD Backlight 회로 분석
16.3.Backlight 밝기 조절 구현
16.4.실행 결과
17.eCos 개요, 다운로드 및 설치
17.1.RTOS 실시간 운영체제
17.2.eCos 개요
17.3.eCos 다운로드 및 설치
18.망고24, 망고64 eCos 포팅 소스 빌드
18.1.망고24, 망고64 통합 eCos 포팅 소스 다운로드
18.2.작업 폴더 생성
18.3.환경 변수 설정
18.4.작업 폴더 빌드 ? configtool
18.5.Mango24 빌드하기
18.6.Mango64 빌드하기
18.7.빌드할 때의 주의점
19.망고24, 망고64에서 실행하기
19.1.망고24에서 실행하기 ? DNW 이용
19.2.망고64에서 실행하기 ? DNW 이용
19.3.망고 보드에 다운로드 하는 주소값
19.4.망고24에서 실행하기 ? U-Boot 이용
19.5.망고64에서 실행하기 ? U-Boot 이용
20.작업 폴더(ecos.wk)에서 불필요한 파일 삭제하기
20.1.전체 비교 및 툴 삭제
20.2.ecos-3.0 부분 비교 정리
20.3.packages/hal 부분 비교 정리
21.eCos 포팅 전 준비 및 확인
21.1.eCos 폴더 구조
21.2.eCos Configuration Tool
21.3.SMDK2410 Template 빌드 작업
22.망고24 포팅 과정 분석 ? 첫 번째 이야기
22.1.포팅 과정 개요
22.2.포팅 습작 제작을 위한 준비
22.3.포팅 과정 진행 ? 메모리 포팅
22.4.S3C2443 DRAM 초기화 과정 진행
23.망고24 포팅 과정 분석 ? 두 번째 이야기
23.1.Clock 설정 하기
23.2.Interrupt 설정 하기
24.망고24 포팅 과정 분석 ? 세 번째 이야기
24.1.Timer 설정 작업
24.2.UART
24.3.초기 빌드 작업
25.망고24 포팅하기
25.1.망고24에 맞도록 변?하기
25.2.망고-24 포팅 작업
26.망고64 포팅하기
26.1.ARM11 eCos 포팅 개요
26.2.ARM11 eCos 포팅 과정
26.3.Mango64 폴더 포팅 작업
26.4.망고64 구동
27.Ethernet Device Driver
27.1.디바이스 드라이버 개요
27.2.Ethernet driver 개요
27.3.eCos Ethernet driver 구조
27.4.Ethernet driver 개발 ? 망고 24
27.5.Ethernet driver 개발 ? 망고 64
28.NOR Flash Memory Device Driver
28.1.Introduction
28.2.망고24 플래시 디바이스 드라이버
28.3.망고24 보드에서 시험 수행
28.4.망고64 플래시 디바이스 드라이버
28.5.망고64 보드에서 시험 수행
29.Frame Buffer Device Driver
29.1.Introduction
29.2.eCos framebuffer 구현 하기
29.3.망고보드 Framebuffer Driver 작성
29.4.망고24 보드에서 시험 수행
29.5.망고64 Framebuffer Driver 작성
29.6.망고64 보드에서 시험 수행
30.JFFS2 File System Device Driver
30.1.망고24 보드에서 시험 수행
30.2.망고64 보드에서 시험 수행
맺음말
색 인
실전! Embedded Crazy Boys!
임베디드에 미친 녀석들!
실전! ARM 임베디드시스템 Firmware/RTOS 완전정복
ARM9 (S3C2443), ARM11(S3C6410) 테스트 보드를 통해
실제 개발에 활용할 수 있는 가장 완벽한 지침서
Embedded System Firmware, RTOS (eCos)의 통합 가이드
ARM9, ARM11 시스템 프로그램 개발 실전 가이드
입문에서 전문가 수준까지 친절한 안내서
펌웨어 및 RTOS (eCos) 개발 실전 코드 제공
진정한 RTOS (eCos) 포팅에 대한 실전적 설명
단순 제어에서 RTOS 디바이스 드라이버까지 광범위한 체험
ARM9, ARM11 시스템 개발자의 고민을 한번에 해결하는
완벽! ARM9, ARM11 펌웨어, RTOS (eCos) 실전 바이블
1부. Introduction & 환경 구성
ARM9, ARM11 프로세서와 임베디드 보드 개발 환경 갖추기
VMware & 리눅스(Ubuntu) 환경 구축, VMware Tools & 삼바(Samba)
Cross compiler (CodeSourcery G++) 설치, 망고24, 망고64 부팅 모드
2부. 하드웨어 매뉴얼
Mango-24 하드웨어 매뉴얼, 하드웨어 사양, Hardware Description
Mango-64 하드웨어 매뉴얼, 하드웨어 사양, Hardware Description
3부. Firmware 연구
망고보드 연결 및 U-Boot 구동, 환경 변수 설정
UART 및 화면 입출력, UART GPIO 설정, printf 사용
GPIO와 Button (Polling 방식), S3C2443 / S3C6410 GPIO Registers
GPIO driver, Button driver
Timer와 정확한 1초 Delay 구현, S3C2443/S3C6410 Timer
PWM Timer와 LCD Backlight 조절
4부. RTOS (eCos) 포팅
eCos 개요, 다운로드 및 설치
망고24, 망고64 eCos 포팅 소스 빌드 및 망고 보드에서 실행
eCos 포팅, eCos Configuration Tool, Template 빌드 작업
포팅 과정 진행 ? 메모리 포팅, Clock 설정, Interrupt 설정
포팅 과정 진행 ? Timer 설정 작업, UART, 초기 빌드 작업
망고24 포팅, 망고64 포팅
5부. RTOS (eCos) 기반 디바이스 드라이버 연구
Ethernet Device Driver, eCos Ethernet driver 구조, Ethernet driver 개발
NOR Flash Memory Device Driver, 플래시 디바이스 드라이버
Frame Buffer Device Driver, eCos framebuffer 구현
JFFS2 File System Device Driver
그간 망고스토리 시리즈를 통해 Windows CE, Android에 대해 폭넓게 다루어 왔습니다. 이들 운영체제는 많은 Embedded System의 기반이 되는 것으로 망고스토리에서는 기...(하략)
'(NAMGUNGEUN)' 카테고리의 다른 글
임베디드 안드로이드 안드로이드 포팅, 확장, 커스터마이징하기 (0) | 2017.12.11 |
---|---|
안드로이드 임베디드 프로그래밍 깊게 들어가기 (0) | 2017.12.11 |
임베디드 프로그래밍 C코드 최적화 (0) | 2017.12.11 |
NEW JAVA 언어 입문 기초편 (0) | 2017.12.11 |
JAVASCRIPT 홈페이지에 바로 활용하는 (0) | 2017.12.11 |