سلام،
آقا من میخوام یک صفحه کلید 4×4 رو به AtMega32 وصل کنم اما از من اصرار از میکرو انکار.
و اما میرسیم به توضیحات:
ببینید دوستان من میخوام یک صفحه کلید 4×4 رو به میکرو وصل کنم،
تو همین سایت و همینطور تو اینترنت هم زیاد دنبالش گشتم و جواب های متعددی هم گرفتم،
وقتی پروژه رو مینویسم و تو Proteus امتحان میکنم کاملا درست جواب میده اما همون سورس روی میکرو واقعی جواب نمیده :angry: ،
و جالبیه قضیه اینه که وقتی بجای پایه های خروجی صفحه کلید (پایه های 0 تا 3 پورت A که برای خروجی صفحه کلید در نظر گرفته شده) VCC مدار رو به ورودی صفحه کلید (پایه های 4 تا 7) وصل میکنم جواب میگیرم :cry:
کد مربوط به صفحه کلیدی که فعلا استفاده میکنم:
لطفا اگر امکانش هست منو راهنمایی کنید
-----
یا حق
آقا من میخوام یک صفحه کلید 4×4 رو به AtMega32 وصل کنم اما از من اصرار از میکرو انکار.
و اما میرسیم به توضیحات:
ببینید دوستان من میخوام یک صفحه کلید 4×4 رو به میکرو وصل کنم،
تو همین سایت و همینطور تو اینترنت هم زیاد دنبالش گشتم و جواب های متعددی هم گرفتم،
وقتی پروژه رو مینویسم و تو Proteus امتحان میکنم کاملا درست جواب میده اما همون سورس روی میکرو واقعی جواب نمیده :angry: ،
و جالبیه قضیه اینه که وقتی بجای پایه های خروجی صفحه کلید (پایه های 0 تا 3 پورت A که برای خروجی صفحه کلید در نظر گرفته شده) VCC مدار رو به ورودی صفحه کلید (پایه های 4 تا 7) وصل میکنم جواب میگیرم :cry:
کد مربوط به صفحه کلیدی که فعلا استفاده میکنم:
کد:
byte KeyC(void)
{
byte key=255;
int flag=1,j;
while(flag)
{
for(j=0;j<=12;j=j+4)
{
PORTA=1<<(j/4);
delay_ms(3);
if(PINA.4==1){ key=j+0; while(PINA.4==1); flag=0;}
if(PINA.5==1){ key=j+1; while(PINA.5==1); flag=0;}
if(PINA.6==1){ key=j+2; while(PINA.6==1); flag=0;}
if(PINA.7==1){ key=j+3; while(PINA.7==1); flag=0;}
}
}
return key;
}
لطفا اگر امکانش هست منو راهنمایی کنید
-----
یا حق






دیدگاه