PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : مشکل در برنامه ميکرو (ال سي دي کارکتري)



sadeqebrahimi
02-03-2013, 22:44
سلام
ميخام با زدن هر بار شستي يک خونه از رديف اول پر بشه يه جورايي مثل لودينگ (ميله اي که پر بشه)اما زياد و کم شدنش قابل کنترل باشه.راه هاي زيادي رو امتحان کردم ولي نشد که نشد.:wink:

You can see links before reply



#include <mega8.h>
#include <delay.h>
#include <alcd.h>
void main(void)
{
int x=1;
DDRD=0;
PORTD=0;
lcd_init(16);
while (1)
{
while(PIND.0==1 )
{
for(x=0;x<=15;x++)
{
lcd_gotoxy(x,0);
lcd_putsf("\xFF");
delay_ms(50);
}
}

}
}

Ma3ood
02-03-2013, 23:16
دوست عزیز برنامه را برات اصلاح کردم و همچنین فایل شبیه سازی را یه نکته رعایت نکرده بودی خودت پیدا کن:mrgreen:
برنامه به این صورت هست با هر بار زدن دکمه یه دونه فقط پر میشه همین تغییرات دلخواتو خودت اضافه کن
موفق باشی:0013:

sadeqebrahimi
02-03-2013, 23:41
دوست عزیز برنامه را برات اصلاح کردم و همچنین فایل شبیه سازی را یه نکته رعایت نکرده بودی خودت پیدا کن:mrgreen:
برنامه به این صورت هست با هر بار زدن دکمه یه دونه فقط پر میشه همین تغییرات دلخواتو خودت اضافه کن
موفق باشی:0013:

یک دنیا ممنون
فقط دوتاسوال
1-اون while که داخل حلقه بی نهایت هست کارش چیه؟ :
while(PIND.0);
2-اون مقاومت بخاطر چیه ؟
بازم خیلی ممنون که اینقد سریع پاسخ منو دادین:wink:

Ma3ood
02-03-2013, 23:57
خواهش میکنم :hi:
1-کار اون حلقه این هست تا زمانی که کلید فشار داده شده همونجا بمونه (تا زمانی که کلید را نگه داشتیم فقط یه بار عمل کنه )
2- هیچ گاه پایه میکرو که در حالت ورودی هست را شناور نگذارید با یه مقاومت (پول دون یا پول اپ ) پایه یا منطق صفر داره یا یک از شما در حالت پول دون هست :wink: