2018년 10월 6일 토요일

실험레포트 마이크로프로세서 실험 실습 레포트 1

실험레포트 마이크로프로세서 실험 실습 레포트 1
[실험레포트] 마이크로프로세서 실험 실습 레포트 1.hwp


본문
1. 실습의 목표
① 8bit micro processor AVR 용 cross compiler의 사용법을 습득한다.
② 간단한 C 언어의 프로그래밍을 실습한다.
2. 실습의 내용
① 보드와 PC의 연결(AVR-ISP Pro manual 참조)
② Codevision의 기본 설정
③ 프로그램의 편집
④ Compile(F9) & Make(Shift + F9)
⑤ Download(Program)
⑥ 실행
실험 1.
#include <mega128.h> // mega128.h를 포함하는 헤더파일
#include <delay.h> // delay.h를 포함하는 헤더파일
void main(void) // main 함수를 선언

DDRG=0xff; // PORTG를 출력으로 설정
while(1) // While문 실행 (무한 반복)

PORTG=0x01; // PORTG에 0x01 설정
delay_ms(500); // 500 ms 지연
PORTG=0x02; // PORTG에 0x02 설정
delay_ms(500); // 500 ms 지연


실험 2.
#include <mega128.h> // mega128.h를 포함하는 헤더파일
#include <delay.h> // delay.h를 포함하는 헤더파일
typedef unsigned char byte; // unsigned char형 대신에 byte도 사용가능하게 함
void main(void)

byte sw; //byte 형 변수 sw선언 (byte형 = unsigned char 형)
DDRD=0xff; //PORTD를 출력으로 설정
DDRG=0xff; //PORTG를 출력으로 설정
PORTD=0x00; //PORTD를 0x00 (초기값) 입력
PORTG=0x00; //PORTG를 0x00 (초기값) 입력
while(1) // while문 안의 조건을 만족할 때까지 반복

sw=PIND; // sw에 D포트에서 읽어 들인 값을 저장
if(sw 0x10) PORTG=0x01; // 스위치D4가 on 상태라면 첫 번째 LED에 불을 켬
else if(sw 0x20) PORTG=0x02; // 스위치D5가 on상태라면 2번 LED점등
else if(sw 0x30) PORTG=0x03; // 스위치 D4, D5가 on상태라면 두 LED 동시에 점등
else PORTG=0x00; // 스위치가 on 상태가 아니라면 LED에 불이 켜지지 않음


3. 결론 및 동작상태 기술
실험 1. 은 LED 두 개를 500 msec마다 교대로 점등시키는 실험입니다. mega128.h 헤더 파일에는 I/O 레지스터의 이름이 정의되어 있습니다. delay.h 헤더 파일은 시간 지연함수 delay_ms 사용하기 위하여 선언하였습니다. DDRG 레지스터에 0xff 값을 출력해서 포트 G 의 상위 8 비트를 출력으로 설정하였습니다. while(1) 문은 무한 반복을 만듭니다.

하고 싶은 말
좀 더 업그레이드하여 자료를 보완하여,
과제물을 꼼꼼하게 정성을 들어 작성했습니다.

위 자료 요약정리 잘되어 있으니 잘 참고하시어
학업에 나날이 발전이 있기를 기원합니다 ^^
구입자 분의 앞날에 항상 무궁한 발전과 행복과 행운이 깃들기를 홧팅

키워드
헤더, 실험, 설정, 스위치, 지연, 헤더파일

댓글 없음:

댓글 쓰기