어디선가 보고, 가져온 소스입니다.
이걸 바탕으로 공부하는데...모르는게 좀 많아서요....
일단 저는 AVR을 사용하여, IAR프로그램으로 하고 있는데....
음....;;;;;;
이 소스는 코드비전으로 한 거라고 하더군요...그래서...고민입니다....
저는 Atmega128을 사용하고, GPS 모듈은 UIGGUB01 - R004 이거를 쓰는데용
먼저 여쭈고 싶은건
1. #include <mega128.h> 이건 헤더파일을 나타내는 것인데, atmega128을 사용할 경우
#include<iom128.h>
#include<ina90.h> <<<< 이런 것을 쓰던데..........아.....이것은 코드비전과 AVR의 차이 때문인가요?
문법이 달라서 그런건가용??;;
2.
Error[e46]: Undefined external "main" referred in ?C_STARTUP ( C:\Program Files\IAR Systems\Embedded Workbench 5.0\avr\LIB\CLIB\ cl3s-ec_mul.r90 )
구하신 코드는 아마도 님이 사용하시는 컴파일 환경과 다른 라이브러리를 사용하는 코드인것 같습니다. 즉 컴파일 환경이 서로 다르다는 것이지요.그래서 컴파일/링크시 에러가 난것 같구요.
3번 질문은 UCSR0A(USART Control & Status Register 0A)의 MSB(RXC비트)가 Set(1)이 될때까지 , 즉 USART0수신완료가 될때까지 무한루프를 수행하다 조건이 만족되면 UDR0 버퍼에서 수신데이타를 가로채가는 동작입니다.
외람된 말씀이지만 사용하는 컴파일러와 사용하는 MCU의 매뉴얼을 숙지하신후, MCU의 구조와 각각의 레지스터의 기능을 파악하신후 코딩을 하거나 참조 코드를 이해하시는것이 시행착오를 줄일 수 있을것 같습니다. 언급한 과정은 반드시 거쳐야만 다음단계로 들어갈 수 있습니다.
음...그렇군요..아....처음부터 하자니 이거 막막하네요...
AVR에 관한 책들이 있긴 하지만...완전 생초보를 위한 책은 좀처럼 찾기가 힘들어서리..아..
열악한 환경 ㅠ.ㅠ;
무튼 감사합니다 ㅠ.ㅠ; 다시 해봐야겠어요 :)