2018년 10월 6일 토요일

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

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


본문
1. 실습의 목표
① ATmega128의 포트에 대해 이해한다.
② ISP(In System Programming)에 대해 이해한다.
③ 각 포트를 구성하는 레지스터(DDRx, PROTx, PINx) 사용법을 습득한다.
④ LED, S/W, FND를 이용하여 포트의 사용법을 실습한다.
2. 실습의 내용
① 보드와 PC의 연결
② Codevision의 기본 설정
③ 프로그램의 편집(스위치 입력에 따른 LED 점등)
④ 프로그램 작성
실험 1.
#include <mega128.h> //mega128라는 헤더파일을 포함하는 전처리문
#include <delay.h> //mega128라는 헤더파일을 포함하는 전처리문
typedef unsigned char byte; //unsigned char형 대신에 byte도 사용가능하게 함
byte sw; //sw라는 변수를 선언
void main(void) //main문 선언

byte sw; //sw라는 변수를 선언
DDRD=0xff; //D포트를 출력상태로 만듬
DDRA=0xff; //A포트를 출력상태로 만듬
PORTD=0x00; //D포트의 초기상태를 0으로 만듬
PORTA=0x00; //A포트의 초기상태를 0으로 만듬
while(1) //while 문안의 조건을 만족하지 않으면 무한반복

sw=PIND; //sw에 D포트에서 읽어 들인 값을 저장
else if(sw 0x01) PORTA=0x01; //스위치1번이 on 상태라면 첫 번째 LED에 불을 켬
else if(sw 0x02) PORTA=0x02; //스위치2번이 on 상태라면 두 번째 LED에 불을 켬
else if(sw 0x04) PORTA=0x04; //스위치3번이 on 상태라면 세 번째 LED에 불을 켬
else if(sw 0x08) PORTA=0x08; //스위치4번이 on 상태라면 네 번째 LED에 불을 켬
else if(sw 0x10) PORTA=0x10; //스위치5번이 on 상태라면 다섯 번째 LED에 불을 켬
else if(sw 0x20) PORTA=0x20; //스위치6번이 on 상태라면 여섯 번째 LED에 불을 켬
else if(sw 0x40) PORTA=0x40; //스위치7번이 on 상태라면 일곱 번째 LED에 불을 켬
else if(sw 0x80) PORTA=0x80; //스위치8번이 on 상태라면 여덟 번째 LED에 불을 켬
else PORTA=0x00; //스위치가 on 상태가 아니라면 7-SEG LED에 불이 켜지지 않음


실험 2.
#include <mega128.h> //mega128라는 헤더파일을 포함하는 전처리문
#include <delay.h> //delay.h를 포함하는 헤더파일
typedef unsigned char byte; //unsigned char형 대신에 byte도 사용가능하게 함
byte i; //i라는 변수를 선언
byte snd_num 10 = 0x3f,0x06,0x5b,0x4f,0x66,0x7d,0x27,0x7f,0x6f ; //snd_num 이란 10칸 짜리 배열 변수를 생성하여 그안에 안의 데이터를 저장
byte snd_loc 4 = 0x01,0x02,0x04,0x08 ; // 안의 숫자를 Snd_loc라는 변수에 저장
void main(void) //main문 선언

DDRA=0xff; //A포트를 출력상태로 만듬
DDRC=0x0f; //C포트를 입력상태로 만듬
while(1) //while 문안의 조건을 만족하지 않으면 무한반복


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

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

키워드
번째, 스위치, 포트, 실험, 헤더파일, 만듬

댓글 없음:

댓글 쓰기