# 1교시 ARM
저번시간에 makeclean과 make를 했었다
&회사에가서 보드를 사면 제일처음 해야할일
1.ARM보드의 제어권확보
-제일중요한것은 자료확보이다
-홈페이지가서 최신자료(드라이버등)를 다운받으면된다
2.개발환경
-컴파일러설치
&원본은 여기 있고 수업은 가공한걸로쓴다
(저번시간홈페이지에서 받은4개파일)
&CM이 준 소스를 분석해보자
bootcode: 보드를 초기화 시키는 코드
-확장자가 S는 ARM용 어셈블리파일
-boot 는 노가다가 일을 하기위해 안전화끊을 매는것에서 유래했다는 말인가
-c로 레지스터를 100%건드리기는 불가능하기때문에 기계어나 어셈블리로 만드는데
어셈블리가 쉽기때문에 주로 어셈블리로 만든다
-아트메가는 winavr 빌드되서 오브젝트형태로 숨어있다
부트코드의 멘마지막에 call main 이있다
&cstartup.s코드
-c코드와 닮아 있다
-main을 호출하는 부분이다
나머지는 메인을 호출하는 동작을 서술
&링커스크립터 파일
-링크할때사용하는 파일
-저장방식 프로토콜
* pe format은 해킹관련책에 보면 잘나와있다
&다시 elf코드로
-boodcode를 실행하기전에 lowlevel.c를 호출한다
-main이 마지막이라는 것을 알수있다
-실행파일의 크기에 영향을 미치는 영역 code data BSS 이지만 BSS는 미미하기때문에
실제로 code data가 영향을 준다고 할수있다
-문자열만출력할경우 포인터로 주소만넘겨주는것이 제일 좋다 ->상수를 줄여줌
-스택이 많이 크면 실행이 안된다 Flash 메모리를 한계 ->재귀함수사용을 줄임
&Makefile
&datasheet를 보자
#2교시 중간프로젝트
간단한걸로 해야겠다
avr과 연동한 lcd제어 정도... 이거도 내가할수있을지 모르겠다 ....
오늘하루도 수고하셨습니다. ~
'코스웨어 > 15년 스마트컨트롤러' 카테고리의 다른 글
20150729-6번-김성현-ARM7 (6) | 2015.07.30 |
---|---|
20150728-3번-권오민 - 멀티 프로세스 프로그래밍 (17) | 2015.07.28 |
20150727-출석번호 5번 - 김성주 - 업무일지 (5) | 2015.07.27 |
2015-07-21 32번 천정호 AT91ARM7S256 Chip 분석 및 ARM을 이용한 LED 제어 (7) | 2015.07.22 |
2015.07.17(금) 주재민 -스테핑 모터,ARM Compiler 설치,Cygwin 설치 (2) | 2015.07.17 |
20150716 - 26번 임현수 ADConverter, ADCompare 서보모터제어, ARM(AT91SAM7S256), TCP헤더 캡처용 패킷애널라이저 (6) | 2015.07.17 |
20150714 - 23번 이량경 소켓 1:1 채팅 {server, client} / GoalPosition (7) | 2015.07.15 |
20150710/22번/윤재희 AX-12+ 기본 모터 제어 함수, Server socket 프로그램 (7) | 2015.07.13 |