NOTICE توجه: این یک موضوع قدیمی است که آخرین پست ارسالی آن مربوط به 3294 روز قبل است . لطفا فقط پاسخ ها ، سوالات و درخواست های 100 درصد مرتبط را به آن ارسال کنید و برای درخواست ها و سوالات جدید موضوع جدیدی را ایجاد کنید
نمایش نتایج: از 1 به 4 از 4

موضوع: كارنكردن برنامه / دستور gosub

  1. #1
    کاربر علاقه مند mehrannohtani آواتار ها
    تاریخ عضویت
    Sep 2014
    نوشته ها
    94
    تشکر
    0
    تشکر شده 11 بار در 10 پست

    Gadid كارنكردن برنامه / دستور gosub

    سلام به همه اي دوستان مهندس
    سال نو بر شما مهندسين گرامي مبارك.
    قبلا يكي مشكلي در برنامه اي داشتم يكي از كاربران سايت كمك كردن مشكلم حل شد.(مرسي از omidctrl)
    الان اين برنامه را مي خواهم به شكل زير برنامه با دستور gosub استفاده كنم يك جايي هرچي متغيير x تعريف
    ميكنم كه اگر صفر شد بياد مثلا فلان كار را بكند يا اگر يك منطقي شد بياد فلان كار ديگر را بكند اين عمل انجام نميشه
    $regfile = "m32def.dat"
    $crystal = 1000000
    Dim X As Byte
    Dim S As Byte
    Dim U As Word
    Dim A As Word
    Dim B As Word

    Config Portb = Output
    Config Portc = Output
    Config Portd = Input

    Config Adc = Single , Prescaler = Auto , Reference = Avcc
    Start Adc
    Config Timer0 = Timer , Prescale = 1024
    Enable Interrupts
    Enable Timer0
    On Timer0 Lable

    Do
    Gosub Mehran1
    If x= 1 Then
    Set Portc.0
    Else
    Reset Portc.0
    End If
    Loop


    Mehran1:

    Do
    S = 0
    Start Timer0
    Do
    A = Getadc(4)
    Waitus 100
    B = Getadc(4)
    If A <= B Then
    U = B - A
    Else
    U = A - B
    End If
    If U <> 0 Then
    Reset Portb.0
    X = 0
    Stop Timer0
    Exit Do
    Elseif U = 0 And S = 12 Then
    Set Portb.0
    X = 1
    Stop Timer0
    Exit Do
    End If
    Loop
    Loop

    Lable:
    S = S + 1
    Return

    Return

    در كل قسمت هاي قرمز رنگ را من به برنامه اضافه كردم
    البته جايي كه نوشته شده x=1 يا x=0 اگر مثلا خود portc.0 را قرار دهم كارميكنه
    ولي من ميخواهم زماني كه خروجي portb.0 يك و يا صفر منطقي شود متغيري
    نيز باشد كه محتواي آن همزمان صفر ويك شود.
    چون از اين برنامه مي خواهم به شكل زير برنامه با دستور gosub استفاده كنم
    دوستان يك برسي كنند ببينند مشكل كجاست كه دستوري كه به رنگ قرمزاست كار نميكنه؟
    واقعيتش چون تازه كار هستم حرفه اي نيستم.ممنون
    ممنون

  2. # ADS
    Circuit advertisement
    تاریخ عضویت
    Always
    نوشته ها
    Many
     

  3. #2
    مدیر انجمن sobhan537 آواتار ها
    تاریخ عضویت
    Aug 2012
    نام
    عبدالملکی
    نوشته ها
    1,084
    تشکر
    3,098
    تشکر شده 804 بار در 495 پست

    پیش فرض

    فکر میکنم برنامه داخل یکی از حلقه های do loop زیر برنامه گیر میکنه...

  4. #3
    کاربر علاقه مند
    تاریخ عضویت
    May 2011
    نام
    احسان باقری
    نوشته ها
    61
    تشکر
    47
    تشکر شده 35 بار در 29 پست

    پیش فرض

    دقیقا همینط.ر هست برنامه توی حلقه زیر برنامه گیر میکنه یه دور تریس کن برنامت رو میفهمی

  5. #4
    کاربر علاقه مند mehrannohtani آواتار ها
    تاریخ عضویت
    Sep 2014
    نوشته ها
    94
    تشکر
    0
    تشکر شده 11 بار در 10 پست

    پیش فرض

    ممنون متوجه شدم

موضوعات مشابه

  1. پاسخ: 0
    آخرين نوشته: 05-05-2014, 11:54
  2. درباره دستورات i2c
    توسط Deadman در انجمن AVR
    پاسخ: 0
    آخرين نوشته: 07-11-2013, 15:34
  3. [سوال] عمل کرد دستور شیفت د
    توسط arvin2009 در انجمن LPC series (NXP)
    پاسخ: 1
    آخرين نوشته: 04-11-2013, 23:03
  4. دستورات arm
    توسط imported_pmf در انجمن AT91 series (ATMEL)
    پاسخ: 0
    آخرين نوشته: 25-08-2012, 12:21
  5. پاسخ: 2
    آخرين نوشته: 29-04-2010, 21:23

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •