본문 바로가기
코스웨어/13년 스마트컨트롤러

5/22 수업내용

by 알 수 없는 사용자 2013. 5. 24.
728x90
반응형

5/22 수업

지금까지 우리는 Datasheet 를 보며 레지스터의 주소를 정의 해왔다.

그러나 ATmel 에서는 각 장치의 콘트롤 레지스터 주소가 정의 되어 있는 헤더파일을 제공하고 있다.

 

 

 I/O 핀 별 쉬프트 연산까지 정의되어 있다. 

 처음부터 이 헤더파일에 정의되어 있는 것들을 이용했다면 좀 더 편했을 지도 모른다.

 하지만 우리가 이런 헤더 파일을 만들 상황이 생길 수도 있기에 우리는 가장 기본적인 방법으로 코딩을 해왔다.

 그 연습이 끝나고 지금까지 우리가 정의 해온 것들을 ATmel 에서 제공하는 헤더파일에 정의된 내용으로 변경 해보자.

 우리가 쓰는 ARM은 32bit 이므로 헤더 파일에는 각 콘트롤 레지스터의 주소로 시작하는 구조체를 int 형으로 선언하여 참조 연산자를 사용하여 좀 더 쉽게 각 레지스터에 값들을 넣을 수 있는 환경을 제공하고 있다.

 

예약된 레지스터는 주소 만큼 건너 뛸 수 있도록 배열이 선언 되어 있다.

 

구조체 주소 참조 연산자로 해당 레지스터에 쉽게 접근이 가능하다.

728x90