BASIC4MCU | 질문게시판 | 4x4 키패드 스캔에 관련해서 질문드립니다.
페이지 정보
작성자 27315co 작성일2018-06-06 12:56 조회9,047회 댓글0건본문
기존의 4x4 키패드와는다르게 첨부한 사진과같이 슈미트트리거 HEX INVERTER 가 COL 단에 연결되어있는 키패드입니다.
소스코드는 키트님께서 올려주신 4x4 키패드 스캔함수를 참고하였습니다.
그래서 생각을 해보았을때 COL 단으로 INVERT가 된값이 들어가므로 스캔함수의 IF 부분에서 ! 만 빼준다면 스캔된값을 인식할수있을거라고 생각했는데요 테스트를해보니 작동이 되지않습니다. 혹시 어느부분이 잘못된것일까요??
int key_scan()
{
int return_num = 0xff;
DDRE = 0x00; PORTE = 0xff;
DDRE = 0x01; PORTE.0 = 0; delay_us(1); if(PINE.4) return_num=1; if(PINE.5) return_num=2; if(PINE.6) return_num=3; DDRE=0x00; PORTE=0xff;
DDRE = 0x02; PORTE.1 = 0; delay_us(1); if(PINE.4) return_num=4; if(PINE.5) return_num=5; if(PINE.6) return_num=6; DDRE=0x00; PORTE=0xff;
DDRE = 0x04; PORTE.2 = 0; delay_us(1); if(PINE.4) return_num=7; if(PINE.5) return_num=8; if(PINE.6) return_num=9; DDRE=0x00; PORTE=0xff;
DDRE = 0x08; PORTE.3 = 0; delay_us(1); if(PINE.5) return_num=0;
DDRE = 0x00; PORTE=0xff;
return return_num;
}
댓글 0
조회수 9,047등록된 댓글이 없습니다.