회원가입 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
번호 분류 제목 글쓴이 조회 수 날짜
348 마이크로프로세서 HOT485 포트를 최대한 많이 사용하고 십습니다.1 간디 1893 2009.12.03
347 마이크로프로세서 HOTC언어적인 질문인 듯합니다.7 왕초보틱 1118 2009.12.02
346 마이크로프로세서 HOT[초보질문]AVR로 만들수 있는건 어떤것이 있나요?? 기꾸닝 1263 2009.12.02
345 마이크로프로세서 HOT마이컴 AVR 동영상 강좌는 없나요??3 기꾸닝 3283 2009.12.02
344 마이크로프로세서 HOT이제 시작한 초짜 인데요 도서좀 추천해주세요~1 기꾸닝 1020 2009.12.02
343 마이크로프로세서 HOTatmega88 내에있는 eeprom사용법 문의2 안개도시 1431 2009.12.01
342 마이크로프로세서 HOT포트 설정에 대해서...2 붸붸 1324 2009.12.01
341 마이크로프로세서 HOT영상을 실제로 볼수 없을까요?2 붸붸 939 2009.12.01
340 마이크로프로세서 HOTDRC에러 수정부탁드려요^^3 리더쉽 1827 2009.11.30
339 마이크로프로세서 HOT하이퍼 터미널 이용방법좀 알수 없나요?4 고래밥줘 3927 2009.11.30
338 마이크로프로세서 HOT통신 하는 방법(?)좀 알려주세요.3 고래밥줘 1130 2009.11.30
337 마이크로프로세서 HOT컴파일러와 사용보드에 관하여 여쭙고싶습니다.5 고래밥줘 1216 2009.11.27
336 마이크로프로세서 HOTAVR 책소개 부탁해유8 월하낙수 1861 2009.11.27
335 마이크로프로세서 HOT외부 메모리 사용 팁 쫌 주십시오~!1 나도PCB 1225 2009.11.26
334 마이크로프로세서 HOTkeil 컴파일러을 이용하여서....1 나도PCB 1340 2009.11.25
333 마이크로프로세서 HOTAT89S52 로 리모콘2 hongsik84 1757 2009.11.25
332 마이크로프로세서 HOTAVR질문이요; Avr초보. 1158 2009.11.24
331 마이크로프로세서 HOT고수님 도와주세요^^1 삼단변신 1095 2009.11.21
330 마이크로프로세서 HOT혹시 MCU와 통신하는 SPI 구동 원리에 대해서 아시는분?1 피곤한동이 1778 2009.11.19
329 마이크로프로세서 HOT8051..배우곤 있는데 무슨 말인질 모르겟습니다..1 오악초보 995 2009.11.17
Prev 1 ... 28 29 30 31 32 33 34 35 36 37 ... 50 Next
  • 산이 그곳에 있기에 오르는 것이다.
    - 맬로리
  • * 납포인트 정보 *
  • 글 작성 : 3
  • 댓글 작성 : 1
  • 내 글이 추천받음 : 1
저작권법에 위배되는 콘텐츠는 등록 불가하며, 저작물에 대한 권리는 저작자에게 있습니다.
Copyright 2006-2021 © hardwareis.com, All rights reserved.