질문게시판 > 답변3 : 안녕하세요 4*3 키매트릭스와 Fnd array를 이용한 회로 질문드립니다.

TODAY1,004 TOTAL2,271,408
사이트 이용안내
Login▼/회원가입
최신글보기 질문게시판 기술자료 동영상강좌

아두이노 센서 ATMEGA128 PWM LED 초음파 AVR 블루투스 LCD UART 모터 적외선


BASIC4MCU | 질문게시판 | 답변3 : 안녕하세요 4*3 키매트릭스와 Fnd array를 이용한 회로 질문드립니다.

페이지 정보

작성자 master 작성일2018-04-27 00:15 조회6,852회 댓글2건

본문

	

 

// DateTime : 2018-04-27 오전 12:16:15
// by Ok-Hyun Park
//=====================================================================//
#include <mega128.h>
#include <delay.h>
//=====================================================================//
char fnd[]={0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0x88,0x83,0xC6,0xA1,0x86,0x8E}; //애노드
char buf[4]={0};
//
void disp(){
  PORTA=fnd[buf[0]];      PORTB=1delay_ms(1); PORTB=0;
  PORTA=fnd[buf[1]];      PORTB=2delay_ms(1); PORTB=0;
  PORTA=fnd[buf[2]]&0x7FPORTB=4delay_ms(1); PORTB=0;
  PORTA=fnd[buf[3]];      PORTB=8delay_ms(1); PORTB=0;
}
//
char KeyScan(void){
  char KeyBuf=0xFF;
  DDRC=0PORTC=~0;
  DDRC=0x08PORTC.3=0delay_us(1); if(!PINC.0)KeyBuf1if(!PINC.1)KeyBuf=2if(!PINC.2)KeyBuf3DDRC=0PORTC=~0;
  DDRC=0x10PORTC.4=0delay_us(1); if(!PINC.0)KeyBuf4if(!PINC.1)KeyBuf=5if(!PINC.2)KeyBuf6DDRC=0PORTC=~0;
  DDRC=0x20PORTC.5=0delay_us(1); if(!PINC.0)KeyBuf7if(!PINC.1)KeyBuf=8if(!PINC.2)KeyBuf9DDRC=0PORTC=~0;
  DDRC=0x40PORTC.6=0delay_us(1); if(!PINC.0)KeyBuf=10if(!PINC.1)KeyBuf=0if(!PINC.2)KeyBuf=11DDRC=0PORTC=~0;
  return KeyBuf// Key 없으면 0xFF 리턴
}
//=====================================================================//
void main(void){
    char i,key,old;
    DDRA=0xFFDDRB=0x0F;
    old=KeyScan();                                // 무한루프 들어가기 전에 키값을 저장해 두고
    while(1){
        key=KeyScan();                            // 키를 입력받아서
        if(old!=key){                             // 저장된 값과 다르면 (새로운 키가 눌렸으면)
            if((key>=0)&&(key<=11)){              // 키값의 범위를 체크하고
                for(i=2;i>=0;i--)buf[i+1]=buf[i]; // 버퍼를 시프트 시킨 후
                buf[0]=key;                       // 버퍼0에 키값을 저장
            }
            old=key// 현재 키값을 저장
        }
        disp();
    }
}

 

FND 4x3 키 매트릭스 & FND(4자리) 프로테우스 ( 코드비전 & AVRstudio)  

https://www.basic4mcu.com/bbs/board.php?bo_table=gesiyo10&wr_id=191 

이 소스를 수정해서 인터럽트 대신 폴링 방식으로 수정했습니다.

 

  • BASIC4MCU 작성글 SNS에 공유하기
  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기

댓글 2

조회수 6,852

27315co님의 댓글

27315co 작성일

정말 감사드립니다. 어떻게 감사의 말씀을 표현드려야할지 모르겠습니다. 열심히 배우고 노력해서 저도 지식을 나눌수있는 단계까지 오르도록 노력하겠습니다.

27315co님의 댓글

27315co 작성일

제가 코드를 보면서 궁금한사항이 생겼는데요 disp 함수에서왜 fnd[buf[2]] 에만  &0x7f 를 해주고
Keyscan 함수에서는 DDRC 를 왜 PORT.C 에 맞춰서 선언해주신거죠??

질문게시판HOME > 질문게시판 목록

MCU, AVR, 아두이노 등 전자공학에 관련된 질문을 무료회원가입 후 작성해주시면 전문가가 답변해드립니다.
ATMEGA128PWMLED초음파
아두이노AVR블루투스LCD
UART모터적외선ATMEGA
전체 스위치 센서
질문게시판 목록
제목 작성자 작성일 조회
답변 답변글 답변 4: 조도센서 히스테리시스 master 18-05-07 5403
답변 답변글 답변 5: 조도센서 칼라변경 RGBR->GBRG->BRGB-> master 18-05-07 5285
질문 안녕하세요,댓글[5] Songyoun 18-05-07 12541
질문 초음파센서 2개로 거리측정 이미지첨부파일 hdki 18-05-07 11400
답변 답변글 답변 : 초음파센서 2개로 거리측정 master 18-05-07 5877
질문 적외선 센서2개로 상호간격측정 문의드립니다.댓글[3] hdki 18-05-07 9923
질문 출력이 이와같이 나옵니다.댓글[3] 이미지첨부파일 키츠네유즈 18-05-07 9232
답변 답변글 답변 : RSSI 히스테리시스 master 18-05-07 5340
질문 무게센서 추가질문 슈돌 18-05-07 5565
답변 답변글 답변 : 무게센서 추가질문댓글[2] master 18-05-07 8487
질문 블루투스 신호 서보모터제어관련 키츠네유즈 18-05-07 6221
답변 답변글 답변 : 블루투스 신호 서보모터제어관련댓글[3] master 18-05-07 10333
질문 FND를 활용해서 덧셈결과를 출력하는 코드에대해서 질문드립니다. 이미지첨부파일 27315co 18-05-06 5938
답변 답변글 답변 : FND를 활용해서 덧셈결과를 출력하는 코드에대해서 질문드립니다.댓글[5] master 18-05-07 15143
답변 답변글 답변 2: FND를 활용해서 덧셈결과를 출력하는 코드에대해서 질문드립니다.댓글[2] master 18-05-07 6946
답변 답변글 답변 : 답변 2: FND를 활용해서 덧셈결과를 출력하는 코드에대해서 질문드립니다. 첨부파일 27315co 18-05-07 5189
질문 오렌지 보드 BLE 앱인벤터2 블루투스 질문입니다.댓글[1] 이미지 문화시민 18-05-06 10431
질문 PID 제어 코드 관련3댓글[5] 첨부파일 서씨 18-05-05 18077
질문 PID제어 코드 관련 2댓글[4] 서씨 18-05-05 11986
질문 세개의 아두이노 코딩을 하나로 통합하는법 비공개 18-05-05 5843
답변 답변글 답변 : 세개의 아두이노 코딩을 하나로 통합하는법댓글[6] master 18-05-05 18232
질문 아두이노 버튼 인식 질문 드립니다 ㅠ댓글[2] hdki 18-05-04 7468
질문 PID제어 코드 관련 서씨 18-05-04 5625
답변 답변글 답변 : PID제어 코드 관련댓글[2] master 18-05-04 8284
질문 아두이노 버튼 인식 질문 드립니다 ㅠ댓글[1] hdki 18-05-04 7929
답변 답변글 답변 : 아두이노 버튼 인식 질문 드립니다 ㅠ댓글[2] 이미지 master 18-05-04 9428
답변 답변글 답변 2: AVRstudio 스타일의 아두이노 키 매트릭스 예제댓글[1] 이미지 master 18-05-04 7239
답변 답변글 답변 3: 아두이노 8채널 쉬프트 레지스터 74HC165 이미지 master 18-05-04 6769
질문 도움좀 받고 싶습니다.. 일단 1단계부터..댓글[10] 이미지첨부파일 이호 18-05-04 37467
답변 답변글 답변 : 도움좀 받고 싶습니다.. 일단 1단계부터..댓글[2] master 18-05-04 7288
게시물 검색

2022년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2021년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2020년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2019년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
2018년 1월 2월 3월 4월 5월 6월 7월 8월 9월 10월 11월 12월
Privacy Policy
MCU BASIC ⓒ 2020
모바일버전으로보기