سلام،
آقا من میخوام یک صفحه کلید 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; }
لطفا اگر امکانش هست منو راهنمایی کنید
-----
یا حق
دیدگاه