سلام دوستان
مشکل من به نظر سادست اما من نتوستم حلش کنم
چطور میشه یه عدد چهار رقمی رو از کی پد خوند؟؟؟ یعنی در واقع یوزر این عدد چهار رقمی رو تو کی پد وارد کنه و من بتونم اونو بخونم...
کدی که استفاده کردم به صورت زیر هست:
کد:
int Get4digit(){
int num = 0;
int key = Read_Keypad();
int counter = 0;
while (counter < 4){
switch (key){
case 1: case 2: case 3: case 4: case 5:
case 6: case 7: case 8: case 9:
num = num * 10 + (int)key;
break;
case 10:
num = num * 10;
break;
}
delay(150);
key=Read_Keypad();
counter++;
}
return num;
}
کی پدی که دارم شماره صفر نداره (۱تا ۱۶ داره)، بخاطره همین از شماره ۱۰ به عنوان صفر استفاده کردم.
ادامه ی کد به صورت زیر هست که قراره یه AT کامند به فرمت AT+ADD=xxxx برام تولید کنه که xxxx اوون عدد چهار رقمی هست که از کی پد گرفته شده...
کد:
String GenerateCommand() {
String command;
String temp;
int num=Get4digit();
if (num < 10000) {
temp=String(num, DEC);
temp=String("0"+temp);
} else {
temp=String(num, DEC);
}
command=String("AT+ADD="+temp);
Serial.print(command);
}
اما متاسفانه فقط AT+ADD=00 بهم میده... و اصلا کی پد کار نمیکنه... ممنوون میشم راهنماییم کنید و بگین چطور میتونم یه عدد چهار رقمی رو بخونم... اگه بگین بعد از خوندن چهار رقم هم چطور میتونم AT+ADD= رو بهش بچسبونم که دیگه عالی میشه )))))))