سلام دوستان.من این پروژه را باید تحویل بدم هرچی زودتر...اگر ممکنه راهنماییم کنید.میخوام از صفحه کلید عددی بگیرم که تبدیل به عدد صحیح بشه..اما نمیتونم.لطفا راهنماییم کنید چ کار کنم
اینم برنامه:
اینم برنامه:
کد:
void main(void)
{
unsigned char key;
lcd_init(16);
lcd_clear();
while (1)
{
key=keypad_read();
if(key!=255)
{
if(key!=11)
{
number *= 10;
number += key;
}
else
lcd_clear();
}
else
lcd_gotoxy(0,1);
itoa(number,st2);
lcd_puts(st2);
delay_ms(20);
}
}
unsigned char keypad_read()
{
unsigned char scanCode, butNum;
KEYPAD_DDR = 0x0f;
KEYPAD_PORT = 0xf0;
delay_us(5);
scanCode= KEYPAD_PIN;
KEYPAD_DDR = 0xf0;
KEYPAD_PORT = 0x0f;
delay_us(5);
scanCode= scanCode| KEYPAD_PIN;
if(scanCode==0xff) return 255;
switch (scanCode)
{
case 0xee: butNum=1; break;
case 0xed: butNum=2; break;
case 0xeb: butNum=3;break;
case 0xe7: butNum=10; break;
case 0xde: butNum=4; break;
case 0xdd: butNum=5; break;
case 0xdb: butNum=6;break;
case 0xd7: butNum=11; break;
case 0xbe: butNum=7; break;
case 0xbd: butNum=8; break;
case 0xbb: butNum=9; break;
case 0xb7: butNum=12; break;
case 0x7e: butNum=13; break;
case 0x7d: butNum=0;break;
case 0x7b: butNum=14; break;
case 0x77: butNum=15; break;
default: butNum=255;
};
return butNum;
}
منتظر کمکاتون هستم :read: :read: :read: :read:




دیدگاه