واضح آرشیو وب فارسی:سایت ریسک: fokoli_qaz23-11-2007, 10:59 PMاقا کی میتونه مشکل این برنامه که تو bascom نوشته شده رو حل کنه این برنامه برای میکروکنترلر atmeg16 AVR نوشته شده این برنامه چشمکزن با 8 تا led است که با انتخاب هر کلید یکی از سه مدل رقص نور رو اجرا می کنه مشکل اینه که فقط برنامه اولش کار میکنه و با انتخاب کلید برنامه بعدی اجرا نمی شه regfile = "m16def.dat"$ $crystal = 12000000 Config Portd = Output , Portb = Input Dim A As Byte Dim B As Byte Loop1: A = &HFE Do Portd = A Rotate A , Left , 1 Waitms 1000 B = Pinb If B = &HFD Then Goto Loop2 If B = &HFB Then Goto Loop3 Loop Loop2: A = &HAA Do Portd = A Waitms 1000 toggle portD B = Pinb If B = &HFE Then Goto Loop1 If B = &HFB Then Goto Loop3 Loop Loop3: A = &HFE Do Portd = A Rotate A , Right , 1 Waitms 1000 B = Pinb If B = &HFE Then Goto Loop1 If B = &HFD Then Goto Loop2 Loop End برنامه پیوست شد این هم لینک دانلود !!!! برای مشاهده محتوا ، لطفا ثبت نام کنید / وارد شوید !!!! fokoli_qaz24-11-2007, 08:26 AMآقا کسی نیست به ما جواب بده محمد مهندس24-11-2007, 04:36 PMبه جای برنامه بالا از این برنامه استفاده کن صد در صد جواب می ده regfile = "m16def.dat"$ $crystal = 12000000 dim a as byte config portd=output ddrb.0=0:portb.0=1 نوع اول ddrb.1=0:portb.1=1 نوع دوم ddrb.2=0:portb.2=1 نوع سوم Loop1: A = &HFE Do Portd = A Rotate A , Left , 1 Waitms 1000 debounce pinb.1,0,loop2 debounce pinb.2,0,loop3 loop Loop2: A = &HAA Do Portd = A Waitms 1000 toggle portD debounce pinb.0,0,loop1 debounce pinb.2,0,loop3 loop Loop3: A = &HFE Do Portd = A Rotate A , Right , 1 Waitms 1000 debounce pinb.0,0,loop1 debounce pinb.1,0,loop2 loop end فقط برای عمل کردن صحیح کلید ها باید آنها را تند تند فشار دهید اگر هم بخواهی بفهمی که چرا مدارت جواب نمی ده باید بگم که فکر می کنم برای وصل کلید باید مقاومتهای بالا کننده AVR را فعال کنی برای این کار از دستورات خط پنجم ششم و هفتم استفاده کن و برای استفاده از دستور ایف می توانی بنویسی مثلا if pinb.0=0 then goto loop1 و بعد از این دستور باید end if بنویسی و بعد دستور ایف بعدی را بدی و این را هم به تو بگم که بهترین دستور برای اتصال کلید در بسکام debounce می باشد که در مثال صحیح آوردم fokoli_qaz03-12-2007, 02:09 PMدست شما درد نکنه خیلی حال دادی ولی دیر گفتی بعد از کلی کلنجار خودم همین که گفته بودی رو فهمیدم سایت ما را در گوگل محبوب کنید با کلیک روی دکمه ای که در سمت چپ این منو با عنوان +1 قرار داده شده شما به این سایت مهر تأیید میزنید و به دوستانتان در صفحه جستجوی گوگل دیدن این سایت را پیشنهاد میکنید که این امر خود باعث افزایش رتبه سایت در گوگل میشود
این صفحه را در گوگل محبوب کنید
[ارسال شده از: سایت ریسک]
[مشاهده در: www.ri3k.eu]
[تعداد بازديد از اين مطلب: 294]