برنامه اسکن صفحه 4*4 با usart (فرستنده وگیرنده)
فوریه
فوریه
char keypad(void) { unsigned char code[4][4]={{'1','4','7','*'},{'2','5','8','0'},{'3','6','9','#'},{'A','B','C','D'}}; unsigned char i,data,num_key=' ',temp=0x0b; for (i=0;i<4;i++) { PORTD=(temp|0xf0); delay_us(100); data=PIND&0xf0; if (data==0xe0) num_key=code[i][0]; else if (data==0xd0) num_key=code[i][1]; else if (data==0xb0) num_key=code[i][2]; else if (data==0x70) num_key=code[i][3]; else if(data==0xf0); temp=((temp>>1)|0x08)&0x0f; } //PORTD=0xf1; return num_key; }
دیدگاه