BASIC4MCU | 질문게시판 | 4fnd 7세그먼트 질문
페이지 정보
작성자 가가갈까 작성일2020-04-27 19:01 조회7,105회 댓글1건본문
#include <reg51.h>
unsigned char seg_idx=3, seg_data=0;
code unsigned char table[]={0x79, 0x24, 0x30, 0x19, 0x12, 0x02, 0x78, 0x00, 0x10, 0xbf, 0x40, 0xbf};
void display(unsigned char key_scan)
{
seg_data = table[key_scan];
P3=seg_idx<<3; P1=seg_data;
}
void main(void)
{
unsigned char i, row_sel, row_offset, row_data;
display(11);
do{
row_sel=0xf7;
row_offset=0;
for(i=0; i<4; i++){
P0=row_sel;
row_data = P0;
row_data= row_data & 0x70;
if (row_data == 0x30){display(row_offset+0); break;}
else if (row_data == 0x50){display(row_offset+1); break;}
else if (row_data == 0x60){display(row_offset+2); break;}
row_offset += 3;
}
} while(1);
}
키패드로 입력해서 입력받은 정보(0~9)를 출력하는데 4fnd에서 위치지정을 안해서 그런지 1째자리에만 출력을 합니다
숫자가 아닌 다른 특정 키를입력하면 출력하는 led 위치를 옮기고 싶은데
a를 누르면 ←쪽 이동 b를 누르면 →쪽 이동이 되게 하고싶은데
할려면 최초위치지정부터 옮기면 옮기기전위치에 있던 정보는 마스킹을 하는건지 모르겠네요
제가 복잡하게 생각하고있는건지ㅠㅠ
댓글 1
조회수 7,105master님의 댓글
master 작성일회로도가 어떻게 구성되어 있는지 모르므로 답변을 드리지 못합니다.