회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
634 PADS HOTpads 9.5 크랙버전 다운 어디서 받을까요...?2 팥빙 697 2024.05.06
633 PADS pads layout 다운로드 방법 아시는 분 있나요 이윤찬 221 2024.01.22
632 PADS 패턴안테나설계 하드웨어개발의호랑이 153 2022.11.10
631 PADS PCB artworks 에서1 강동하하 180 2022.03.05
630 Allegro & OrCAD 거버파일 각 레이어 역할!! 도와주세요!!1 제니 166 2021.12.12
629 PADS PADS9.5 설치 오류 ㅜㅠㅠ2 킹현또 302 2021.02.15
628 ECAD Simulation HOTPSpice로 이 회로를 만드는 방법1 -2420 633 2020.10.21
627 ECAD Simulation Pspice 소자문 질문입니다1 sfde 215 2020.09.08
626 PADS pads 9.3 라이센스... 아니즈기여 365 2020.01.28
625 PADS copper pour 씌우기에 대해 문의드립니다. 패턴그릴때처럼 pervent error 기능이 있는지요?2 또지 301 2019.09.08
624 ECAD 아무거나 HOT알티움 부품라이브러리에서 부품 수정 후 pcb, 회로도에 적용 관련 질문 드립니다 프리왁 613 2019.07.17
623 PADS 라이브러리 생성 건 반도체타파 211 2019.07.03
622 PADS 초보 질문드려요1 INSIK 287 2018.01.18
621 PADS HOTPADS 라이센스 에러3 포이어 590 2017.10.25
620 ECAD 아무거나 HOTvia hole 개수와 전류 상관 관계1 one 569 2017.10.10
619 PADS HOT기존 회로도에서 전원심볼 라이브러리 저장2 이팔청춘 540 2017.08.28
618 ECAD 아무거나 HOT임피던스 PCB 제작에 대해 질문 드립니다.4 당근1 421 2017.08.22
617 PADS 패턴이 노출되어있는지 어떻게 확인 할 수 있나요?1 힘들땐박카스 215 2017.07.10
616 PADS 부품 질문 입니다2 초구의마술사 182 2017.06.15
615 ECAD 아무거나 스루홀 설계에 대한 질문입니다1 황소61 134 2017.06.15
Prev 1 2 3 4 5 6 7 8 9 10 ... 32 Next
  • 인생을 해롭게 하는 비애를 버리고 명랑한 기질을 간직하라.
    - 세익스피어
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.