프로세서에서 주변기기는 메모리다. - C프로그램에서 주변기기를 제어하기 위해서는 입출력 포트가 사용할 메모리를 지정함 - 주변기기로 데이터를 읽기/쓰기 위해서는 주변기기가 사용하는 포트에 할당된 메모리에 앍기/쓰기함 하드웨어 제어방법 1. 데이터시트 - 보드를 구성하는 하드웨어와 프로세서를 제어하기 위한 정보를 담고 있는 다큐먼트 파일 2. 입출력 장치 제어 - 메모리 할당 → 메모리 접근할때 ① 포인트 변수 사용 ② 메모리 직접 접근 - 모드설정 → 입력모드인지 출력모드인지 - 데이터 읽고 쓰기 입출력장치 신호처리방법 1. 폴링 - 입출력장치에서 신호가 발생했는가를 반복적으로 확인하는 방법 GPECON을 입력모드로 설정 스위치가 1인지 확인하기 위해 GPEDAT 1인지 확인 2. 인터럽트 - 프로세서 ..
1. 임베디드 시스템의 실행과정 리셋 → 하드웨어 초기화 → C프로그램 실행기반구축 → main으로 분기 2. 리셋 º 파워 On - 리셋 : 파워나 리셋버튼을 눌렀을때 발생하는 예외 ( Exception ) - 예외 ( Exception ) · 시스템 오류를 포함하여 프로세서에게 특정 이벤트가 발생했음을 알려주는 것으로 프로세서는 이에 대해 대처함 · 예외들은 프로세서마다 정의되어 있고 예외를 처리하는 코드를 예외처리루틴(핸들러)이라고 함 - 리셋은 시스템의 시작을 의미하는 이벤트이므로 시스템을 초기화하는 예외처리루틴이 필요하고, 리셋예외가 발생 하면 대부분 부트코드로 분기함 º 부트 코드 - 하드웨어 초기화 코드 - 하드웨어 초기화 과정 ① 인터럽트 불가 (disable) ② 시스템에서 필요한 클럭을..
○ 호스트 시스템 구성요소 - 툴체인 - 다운로드 유틸리티 - 터미널 유틸리티 - 디버깅 유틸리티 1단계 툴체인 ( Tool Chain ) 설치 - 크로스 컴파일러, 크로스 어셈블러, 크로스 링커, 로케이터 등으로 구성된 소프트웨어 개발도구 - 윈도우 환경에서 간단히 설치가능 - arm-linux-gcc나 arm-linux-ld등과 같은 GNU툴은 리눅스 환경에 도구모음을 직접 구성해야함 2단계 디버거 설치 - 대부분의 사용 통합개발환경에는 디버거를 함께 제공함으로 따로 설치할 필요는 없으나 GNU툴은 arm-linux-gdb를 설치해야함 3단계 다운로드 유틸리티 설치 - 호스트시스템에서 개발한 소프트웨어를 타겟시스템으로 다운시 필요한 프로그램을 호스트시스템에 설치 - 통합개발환경에서는 포함되어 있고, ..