회원가입 ID/PW 찾기
AA

#include <AT89x51.h>
unsigned char KEY;
unsigned char KEY2;
unsigned char FLAG;

code unsigned char SEGMENT[16] = {0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0x88,0x83,0xc6,0xa1,0x86,0x8e}; //세그먼트 숫자지정
code unsigned char KCODE[16] = {0x00,0x04,0x08,0x0c,0x01,0x05,0x09,0x0d,0x02,0x06,0x0a,0x0e,0x03,0x07,0x0b,0x0f}; //0-F키 내부 코드

void delay(unsigned int i)
{
 while(i--);
}

void SCAN1(void)
{
 unsigned char i,temp,key1;
 KEY=key1=0;
 FLAG=1;
 P0=0xf0;
 temp=P0;
 temp=(temp>>4)|0xf0;
 for(i=0;i<4;i++){
  if(!(temp&0x0f)){
   key1=KEY;
   FLAG=0;
  }
  temp>>=1;
  KEY++;
 }
 KEY=key1&0x0f;
}

void SCAN(void)
{
 unsigned char i;
 for(i=0;i<4;i++){
  do{
   SCAN1();
  }while(FLAG==0);
 }
 do{
  SCAN1();
 }while(!(FLAG==0));
 KEY2=KCODE[KEY];
}


void main(void)
{
 //변수선언

 P2=P1=0xff;
 do{
  SCAN();
  P1=SEGMENT[KEY2];
  P2=0xef;
 }while(1);
}

원문소스입니다만 이렇게 하니까 c 8 4 0 밖에 출력이 되지 않네요
0~f까지 있지만 다른키가 출력이 안됩니다

c d e f
8 9 a b
4 5 6 7
0 1 2 3   이런 현식의 키매트릭스입니다.
밑에 비슷한 글의 질문이 있었는데 답변이 없더라구요. 답변부탁드립니다.

댓글 0

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

search
번호 분류 제목 글쓴이 조회 수 날짜
133 전기전자 아무거나 HOT어셈블리어...작품1 아기사자 759 2009.12.16
132 전기전자 아무거나 HOTATmega 128키트에 대해서... 궁금한게 있습니다.1 아기사자 1075 2009.12.15
131 전기전자 아무거나 HOT제가 요즘 공부의 방향을 잡으려는데...1 사막의삭풍 827 2009.12.15
130 전기전자 아무거나 HOT간단한 방전회로 구할수 있을까요??10 pilsu-ni 2458 2009.12.15
129 전기전자 아무거나 HOT여쭤 볼게있어요.1 추현민 845 2009.12.05
128 전기전자 아무거나 HOT전공기초에 대한 질문 입니다!5 다시시작 928 2009.12.05
127 전기전자 아무거나 HOTPSPICE에 TDA2009랑 레귤레이터 어떻게 해야하는거죠?1 티제이 1852 2009.12.03
126 전기전자 아무거나 HOTAVR 블루투스 관련입니다.2 샤방아아아 1904 2009.12.03
125 전기전자 아무거나 HOT마이컴 AVR MCU질문이요1 기꾸닝 1003 2009.12.02
124 전기전자 아무거나 HOTAVR에 대해.... 붸붸 816 2009.12.01
123 전기전자 아무거나 HOTAVR 포트 설정이 전혀 감이 잡히지를 않네요^^4 욱** 1482 2009.12.01
122 전기전자 아무거나 HOT현재 8051을 많이 쓰나요? 아님 ATMEGA128을 많이 쓰나요?9 월간낚시 1127 2009.11.30
121 전기전자 아무거나 HOT다중출력 SMPS 설계 조언바랍니다2 기술자 1247 2009.11.26
120 전기전자 아무거나 HOT리튬이온 핸드폰 배터리 충전기 설계4 단공 2478 2009.11.23
전기전자 아무거나 HOT키보드매트릭에서 대해서 질문합니다. 시즈마루 877 2009.11.21
118 전기전자 아무거나 HOTSMPS 회로 설계쪽으로 공부하고 있는데 도움을 청합니다.2 피곤한동이 2136 2009.11.19
117 전기전자 아무거나 HOT혹시 LED Driver IC에 대해서 잘 아시는분ㅠ_ㅠ6 피곤한동이 3045 2009.11.19
116 전기전자 아무거나 HOT8051로 작품을 만들려는데...2 faust101 860 2009.11.13
115 전기전자 아무거나 HOT아래 [서보제어관련 공부중인대요 질문드립니다] 글에 대한 답변입니다 ^^ 빈스리 805 2009.11.11
114 전기전자 아무거나 HOT8051을 사용하고자 하는데.1 초보자님 911 2009.11.11
Prev 1 ... 14 15 16 17 18 19 20 21 22 23 ... 25 Next
  • 친구는 제2의 재산이다.
    - 아리스토텔레스
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.