امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
كمك در برنامه
نویسنده پیام
mehrdadgh آفلاین
کاربر با تجربه
****

ارسال‌ها: 830
موضوع‌ها: 58
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 654
( 1904 تشکر در 596 ارسال )
ارسال: #1
كمك در برنامه
سلام
اگه تو يه برنامه خاستيم كه با زدن يه كليد براي اولين بار بره به يه زير برنامه بعد واسه دومين بار بره به يه زير برنامه ديگه و همين طور تا د مرحله بعد از اول دوباره شروع كنه وبه ترتيب با زدن كليد به زيربرنامه ها بپره چه بنويسيم؟؟
ConfusedClap
۱۳-شهریور-۱۳۸۷, ۱۸:۳۶:۲۶
ارسال‌ها
پاسخ
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #2
RE: كمك در برنامه
خوب شما بايد در برنامتون از كليد اطلاعات رو بخونيد و در صورت تغيير وضيت بره برنامه بعدي .

کد:
Ant1:
    DO
        Debounce Pinb.0 , 1 , Ant2

    LOOP

Ant2:
    DO
        Debounce Pinb.0 , 1 , Ant3

    LOOP
Ant3:

.
.
.


Ant10:
    DO
        Debounce Pinb.0 , 1 , Ant1

    LOOP
البته فكر مي كنم بدترين روش موجود باشه .

البته مي توني مثل اين پروژه در ابتداي برنامه كاربر كار مورد نظرش رو انتخاب كنه و بعد از انجام كارش يا فشردن كليد برگشت دوباره به منوي اصلي برگشته و كار بعدي رو انتخاب كنه .

--------------------------------------------
راستش من هنوز منطورتون رو نفهميدم .
۱۳-شهریور-۱۳۸۷, ۲۲:۲۹:۲۵
ارسال‌ها
پاسخ
تشکر شده توسط : 1nafar, mehrdadgh
ilgar آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 843
موضوع‌ها: 17
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 383
( 2597 تشکر در 855 ارسال )
ارسال: #3
RE: كمك در برنامه
میتونید یک متغییر معرفی کرده و بصورت شمارنده بکار بگیریدش. بدون اینکه در جاهای دیگر برنامه مقدار متغییر رو پاک کنید(فقط در اول برنامه ارزش آن را صفر بگیرید) , با هر بار خواندن ارزش متغییر به زیربرنامه مورد نظر jump کنید
۰۵-مهر-۱۳۸۷, ۲۰:۳۵:۵۱
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
abbas68 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 56
موضوع‌ها: 6
تاریخ عضویت: خرداد ۱۳۸۸

تشکرها : 51
( 65 تشکر در 23 ارسال )
ارسال: #4
RE: كمك در برنامه
با سلام


من یه مشکلی تو در یافتی ورودی ها از avr دارم
وقتی من مینویسم pinX.X خودش میره سراغ اولین loop
واگر بنویسم portX.X این بار توی پروتوس کار نمی کنه؟
و یه سوال دیگه دستور ddrX و... اگه ننویسم دیگه ورودی نمی شه؟
اگه خواستن سورس رو هم up می کنم.

با تشکر از نظرتون
۱۴-مرداد-۱۳۸۸, ۰۹:۳۷:۲۵
ارسال‌ها
پاسخ
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #5
RE: كمك در برنامه
مهندس سورس بذاري بهتره !

من كه نفهميدم چي گفتي !
۱۴-مرداد-۱۳۸۸, ۱۲:۲۶:۱۳
ارسال‌ها
پاسخ
ilgar آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 843
موضوع‌ها: 17
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 383
( 2597 تشکر در 855 ارسال )
ارسال: #6
RE: كمك در برنامه
منم خوب متوجه نشدم اما:
اگه از پورت به عنوان ورودی استفاده میکنید باید تو دستور بنویسید pinX.X و اگه خروجیه portX.X بر عکس بگیرین عمل نمیکنه
۱۴-مرداد-۱۳۸۸, ۱۲:۴۴:۵۵
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #7
RE: كمك در برنامه
اگه پايه اي رو ورودي تعريف كرده باشين :

کد php:
DDRB=

حال با port اونو يك كنيد :

کد php:
PORTB=255 

با اين كار مقاومت پول آپ داخلي ميكرو رو فعال مي كنين !
۱۴-مرداد-۱۳۸۸, ۱۲:۵۸:۰۲
ارسال‌ها
پاسخ
abbas68 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 56
موضوع‌ها: 6
تاریخ عضویت: خرداد ۱۳۸۸

تشکرها : 51
( 65 تشکر در 23 ارسال )
ارسال: #8
RE: كمك در برنامه
با سلام

ببخشید که نتونستم منظورمو به خوبی برسونم

این برناه منه(یه تایمر 5 زمانه از 1 minتا 5min
که بعد از اتمام شمارش میتونه یه رله به کار بندازه)

لطفا نگاه کنید و نظر بدید ؟ اگر مشکلی داره بگید؟

(این برنامه در باسکام نوشته شده
و اگه خوب چارت بندی و خوب نوشته نشده به استادی خودتون ببخشید آخه کار اولمه)
تا بعد اگه لیاقت داشت اسم یه پروژه بهش بدیمو و برای دانلود عموم بذاریم

متشکرم


فایل‌(های) پیوست شده
.txt   TAIMMER.txt (اندازه: 1.65 KB / تعداد دفعات دریافت: 31)
(آخرین ویرایش در این ارسال: ۱۵-مرداد-۱۳۸۸, ۰۶:۱۴:۵۵، توسط abbas68.)
۱۵-مرداد-۱۳۸۸, ۰۴:۵۸:۰۳
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #9
RE: كمك در برنامه
مهندس برنامه رو اینطوری نمشه فهمید !

بهتر بود نقشه رو تو پروتئوس می کشیدی و اونحا تستش می کردیم !

روال برنامه رو هم یه توضیح مختصری می دادی !
۱۷-مرداد-۱۳۸۸, ۱۴:۵۹:۱۲
ارسال‌ها
پاسخ
تشکر شده توسط : abbas68
abbas68 آفلاین
كاربر تک ستاره
*

ارسال‌ها: 56
موضوع‌ها: 6
تاریخ عضویت: خرداد ۱۳۸۸

تشکرها : 51
( 65 تشکر در 23 ارسال )
ارسال: #10
RE: كمك در برنامه
با سلام
گفتم که یه تایمر 5 زمانه از 1تا 5 دقیقه است
اما برای پروتوس در اولین فرصت انو آپ میکنمش
روی چشم


متشکرم
(آخرین ویرایش در این ارسال: ۱۷-مرداد-۱۳۸۸, ۱۵:۲۵:۲۰، توسط abbas68.)
۱۷-مرداد-۱۳۸۸, ۱۵:۱۱:۱۰
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
1nafar غایب
مدیر بازنشسته
*****

ارسال‌ها: 1,195
موضوع‌ها: 91
تاریخ عضویت: فروردین ۱۳۸۷

تشکرها : 1577
( 4273 تشکر در 953 ارسال )
ارسال: #11
RE: كمك در برنامه
سلام:
کد:
$regfile = "M32def.dat"
$crystal = 1000000
Dim A As Integer
Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Porta.1 , Db5 = Porta.2 , Db6 = Porta.3 , Db7 = Porta.4 , E = Porta.5 , Rs = Porta.6
Config Portc = Input
Config Portb = Output
Ddrc = 0 : Portc = 255

Ali:
Portb = 0
Cls
Lcd "Select Buton"
Do
If Pinc.1 = 0 Then Goto Abbas
If Pinc.2 = 0 Then Goto Abbas2
If Pinc.3 = 0 Then Goto Abbas3
If Pinc.4 = 0 Then Goto Abbas4
If Pinc.5 = 0 Then Goto Abbas5
Loop

Reza:
Set Portb.0
Goto Ali

Abbas:
A = 60
Do
If Pinc.6 = 1 Then Goto Ali
Lcd A ; "   "
Wait 1
Decr A
Print A
Loop Until A = 0
Goto Reza


Abbas2:
A = 120
Do
If Pinc.6 = 1 Then Goto Ali
Cls
Lcd A ; "   "
Wait 1
Decr A
Print A
Loop Until A = 0
Goto Reza

Abbas2:
A = 180
Do
If Pinc.6 = 1 Then Goto Ali
Cls
Lcd A ; "   "
Wait 1
Decr A
Print A
Loop Until A = 0
Goto Reza

Abbas2:
A = 240
Do
If Pinc.6 = 1 Then Goto Ali
Cls
Lcd A ; "   "
Wait 1
Decr A
Print A
Loop Until A = 0
Goto Reza

Abbas2:
A = 300
Do
If Pinc.6 = 1 Then Goto Ali
Cls
Lcd A ; "   "
Wait 1
Decr A
Print A
Loop Until A = 0
Goto Reza
1- برای ادرس دهی نباید متغیر تعریف کنیم .
2- استفاده از دستور wait دقیق نیست ، عاقلانه ترین کار استفاده از تایمر هست .
3- برای فشردن کلید باید به مدت 1 ثانیه اون رو نگه دارید ، میتونید یک متغیر دیگه تعریف کنید و این زمان رو به 100 یا x میلی ثانیه برسونید .
۱۷-مرداد-۱۳۸۸, ۱۶:۰۰:۲۹
وب سایت ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000, abbas68


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS