회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
74 PADS HOTCopper Cut out 할때요..3 아픈이별 3872 2010.02.24
73 PADS HOTpads2007 file 메뉴가 안뜨는데 왜이런건가요??3 xnfldks 2342 2010.01.25
72 PADS HOTusb패턴에 대해서 알려주세요..4 돼지토끼 2792 2010.01.08
71 Allegro & OrCAD HOTCadence Allegro PCB Editor 파일을 Altium Designer 으로 변환1 아크마 4112 2010.01.04
70 Allegro & OrCAD HOTLayout 을 Allegro로 변환 아크마 2516 2010.01.02
69 ECAD Simulation HOT이전버전9.x, 10.x를 Vista나 XP에서 사용하기3 아크마 5583 2009.12.29
68 ECAD Simulation HOTOrCAD Layout 단종 안내 아크마 9247 2009.12.29
67 Allegro & OrCAD HOTCadence Allegro PCB Editor Software 아크마 2799 2009.12.27
66 Allegro & OrCAD HOTORCAD 회로를 PCAD 에서 PCB레이아웃 하려는데요1 하얀나비9 2628 2009.12.17
65 Allegro & OrCAD HOTallegro 초보 입니다!3 준~* 1870 2009.12.15
64 Allegro & OrCAD HOTOrCad 학습방법13 단공 2040 2009.11.24
63 ECAD 아무거나 HOT고수님들 좀 도와주세요 ㅠㅠ cooper&cooper cut out1 폭주 2494 2009.11.04
62 PADS HOTpads로 설계 시 배선 간격9 ken 3382 2009.11.02
61 PADS HOTpads 와 orcad 중 어떤게 더 쓰기에 편하고 쉽나요?17 한틀 4019 2009.11.02
60 Allegro & OrCAD HOTORCAD로 PCB 설계 동영상 강의5 한틀 7572 2009.10.30
59 Allegro & OrCAD HOTORCAD V.16에서 디자이너와 레이아웃의 차이점4 soo 1968 2009.10.08
58 ECAD 아무거나 HOTMS-DOS에서 만든 파일변환하는방법???1 두건이 2798 2009.09.24
57 Allegro & OrCAD HOTORCAD로 회로를 그렸는데...1 로이lee 1432 2009.09.23
56 Allegro & OrCAD HOT실제로 많이 쓰이는 orcad 버전은 어떤것이 좋나요5 passion 3016 2009.09.10
55 PADS HOTpads로 그리고 orcad와 연동할수 있나요??3 화니이 2986 2009.08.19
  • 사랑하며 가난한 것이 애정 없는 부유함보다 훨씬 낫다.
    - L.모리스
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.