회원가입 ID/PW 찾기
AA

#define F_CPU 16000000UL // 클럭값 설정

#include <avr/io.h> //avr 헤더 설정

#include <util/delay.h> //util/delay 헤더 설정

#include <avr/interrupt.h> // avr/interrupt 헤더 설정

unsigned char fnd[] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x27, 0x7f, 0x6f}; //fnd 0~9

#include <avr/io.h> //avr 헤더 설정

volatile int i = 0; //정수 i설정

ISR(INT0_vect){ //인터럽트 이벤트 발생

i++; // i1씩 증가

if(i==4) i=0; // 만약 i4와 같으면 i0이다,

 

}

 

int main(void) // 프로그램 작성 시작

{

/* Replace with your application code */     //??

DDRA=0xff; //PA0~7 전체 OUTPUT 선언

DDRC=0xff; //PC0~7 전체 OUTPUT 선언

DDRB=0xff;  //??

DDRD=0x00; //PA0~7 전체 INPUT 선언

EICRA=0x03; //인터럽트 INT0 사용 선언

EICRB=0x00; //인터럽트 INT4~7 미사용 선언

EIMSK=0x01; //인터럽트 INT0 사용 선언

PORTB=0xff; //high가 되야 콘단자 작동

sei(); // 인터럽트 발생을 전역적으로 허용

while (1)   //??

{

if(i==1){ //만약 i1일 경우

PORTA=fnd[1];   //?

PORTC=~0x01;   //?

}

else if(i==2){ //만약 i2 아닌 경우

PORTA=fnd[2];    //??

PORTC=~0x02;    //??

}

else if(i==3){ //만약 i3 아닌 경우

PORTA=fnd[3];    //??

PORTC=~0x03;    //??

}

else{

PORTA=fnd[0];    //??

PORTC=~0x00;    //??

}

 

 

 

}

}

 

AVR 프로그램으로 학교 과제를 받았었는데 제가 잘못된 부분이나 물음표 부분에 답좀 알려주시면 감사하겠습니다.

댓글 1
  • No Profile

    PORTA에는 FND 배열에 저장된 값을 출력합니다.

    예를 들어 PORTA = fnd[1] 이면 PORTA는 0x06값이 출력됩니다.

    회로 결선에 따라서 0x06이 FND의 각 세그먼트가 켜지게 됩니다.

     

    소스코드 참조 : fnd[] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x27, 0x7f, 0x6f}; //fnd 0~9

     

     

    PORTC = ~0x01은 PORTC에 0x01의 inverting(0은 1로 1은 0으로)된 값 0xFE를 출력하라는 것입니다.

     

    PORTC 또한 FND의 어느 회로와 연결되어 있겠지요..

     

하드웨어 설계 및 개발에 대하여 개발자들이 자유롭게 토론하는 공간입니다.
- Q&A, 자유주재 토론, 관련 정보 공유
- 분야 : 마이크로프로세서 응용, 전기/전자(아날로그/디지털) 회로 설계, C/C++ 프로그래밍, 펌웨어,
         PCB Artwork, 트러블슈팅 등 하드웨어 설계에 관한 전반인 내용
※ 게시글에 맞는 분류를 선택하여 글을 작성해 주시면 쾌적한 사이트 운영에 많은 도움이 됩니다.
※ 하드웨어 인사이트는 회원들간의 거래정보를 게재할 뿐이지, 그 어떤 책임과 의무도 가지지 않습니다.

search
번호 분류 제목 글쓴이 조회 수 날짜
106 펌웨어 & 코딩언어 객체지향프로그래밍4 끼르 323 2017.06.19
105 펌웨어 & 코딩언어 적외선 센서에 대한 질문입니다.3 jaemi2010 336 2016.02.25
104 펌웨어 & 코딩언어 구조체 포인터 캐스팅??1 기다려줄래 309 2015.07.10
103 펌웨어 & 코딩언어 matlab에서 작성된 m file을 c++로 변환하고 싶습니다.1 마린스토리 278 2014.04.28
102 펌웨어 & 코딩언어 HOTC언어로된 MPPT제어 프로그램 Code Vision 으로 변환하기 찰떡젤리 574 2014.04.21
101 펌웨어 & 코딩언어 C 명령어 좀 상세히 알고 싶습니다1 jsp 394 2014.04.03
100 펌웨어 & 코딩언어 HOT피보나치 수열..2 aNitMotD 538 2013.10.30
99 펌웨어 & 코딩언어 HOT1D FEM coding 문제 ..원하는 답이 안나와요 수치해석미쵸 495 2013.09.29
98 펌웨어 & 코딩언어 HOTPIC 16F628A와 CCSC 기반의 프로그래밍 질문입니다. 제발 도와주세요ㅠㅠ 신천동주민 467 2013.09.24
97 펌웨어 & 코딩언어 HOT비주얼베이직 연산 및 줄바꿈에 대한 질문입니다.1 원할머니보고쌈 672 2012.11.07
96 펌웨어 & 코딩언어 c언어 질문인데요..3 하하하하히 385 2012.09.10
95 펌웨어 & 코딩언어 HOTC언어제어3 tbwnaoslwj1 645 2012.08.09
94 펌웨어 & 코딩언어 HOTmatlab 질문입니다.. 소다수1 403 2012.06.06
93 펌웨어 & 코딩언어 HOT-(C언어(함수호출)로 만든 크리스*마스*트리*프로그램)-1 리종순2 1460 2011.12.14
92 펌웨어 & 코딩언어 HOT외부 SRAM 컨트롤하는 것좀 도와주세요.1 쩡무 1366 2011.11.15
91 펌웨어 & 코딩언어 HOTunikey program 수정 jjhuem 1107 2011.10.11
90 펌웨어 & 코딩언어 HOTAtmega128에서 Reset 하는 방법 중 궁금한 점이 있습니다!!!4 공돌이의꿈 3145 2011.06.21
89 펌웨어 & 코딩언어 HOTC언어랑 matlab의 차이?1 약곰탱이 3518 2011.06.02
88 펌웨어 & 코딩언어 HOTVHDL 전가산기 설계 질문입니다. 나트륨 2976 2011.03.26
87 펌웨어 & 코딩언어 HOTC 배열이용해서 엑셀 데이터 끌어오는 방법???2 꼬꼴리 2115 2011.03.24
  • 세상에서 가장 아름다운 것은 물론 세상 그 자체이다.
    - 스티븐슨
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.