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

موضوع: خواندن 0 یا 1 بودن پورت ها

  1. #1
    تازه وارد
    تاریخ عضویت
    Apr 2010
    نوشته ها
    4
    تشکر
    0
    تشکر شده 1 بار در 1 پست

    پیش فرض خواندن 0 یا 1 بودن پورت ها

    سلام

    من میخوام دوتا میکرو سویچ بزارم به عنوان ورودی که اگر هرگدوم رو زدم با میکرو بخونم که عددش صفر هست یا 1
    اینها وصل هستن به پورت های d.3 , d.4

    بعد با توجه بو روشن بودن این 2 تا یا خاموش بودنشون این 4 حالت پیش میاد برای پورتهام
    d.3=1 , d.4 =1
    d.3=1 , d.4=0
    d.3=0 , d.4=1
    d.3=0 , d.4=0

    توی هر کدوم از این حالت ها میخوام 1 led برام روشن بشه یعنی 4 تا led دارم

    این برنامه رو نوشتم بخونید بعد میگم کجای کارم میلنگه:

    $regfile = "M8def.dat"
    $crystal = 1000000
    Config Portd = Input
    Config Portb = Output
    Config Portc = Output
    'Dim Us As Bit
    'Dim Sec As Bit
    'Dim Off1 As Bit
    'Dim Off2 As Bit
    A1 Alias Pind.3
    A2 Alias Pind.4
    Do
    If A1 = 1 And A2 = 1 Then
    Set Portb.1
    Elseif A1 = 1 And A2 = 0 Then
    Set Portb.2
    Elseif A1 = 0 And A2 = 0 Then
    Set Portb.3
    Elseif A1 = 0 And A2 = 1 Then
    Set Portb.0
    Loop
    End If
    End

    حالا که مدار رو میبندم فقط led ای که به به پورت b.1 متصل شده روشن میشه
    هرچی کلید ها رو میزنم شرایط رو تغییر نمیده!!!!

    1 آیا اشکال توی تعریف A1,A2 هست؟ یا alias فرمان درستیه بری بازگردوندن 0 یا 1 بودن پورت d ??
    2 آیا برای همچین کاری که 2 تا ورودی بگیره باید فرمان دیگه ای بنویسم؟ debounced یا همچین چیزی؟
    3 اگر هیچکدوم پس چی؟

    پیشاپیش ممنون

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

  3. #2
    تازه وارد
    تاریخ عضویت
    Apr 2010
    نوشته ها
    4
    تشکر
    0
    تشکر شده 1 بار در 1 پست

    پیش فرض

    با این برنامه تعویضش کردم و درست شد
    تشویق نکنید ممنون

    $regfile = "M8def.dat"
    $crystal = 1000000
    Config Portd = Input
    Config Portb = Output
    Config Portc = Output
    Dim A As Byte
    Dim B As Byte
    Ddrd.3 = 1 : Portd.3 = 0
    Ddrd.4 = 1 : Portd.4 = 0
    Do
    Reset Portb.0
    Reset Portb.1
    Reset Portb.2
    Reset Portb.3
    If Pind.3 = 1 And Pind.4 = 1 Then
    Set Portb.0
    Elseif Pind.3 = 1 And Pind.4 = 0 Then
    Set Portb.1
    Elseif Pind.3 = 0 And Pind.4 = 1 Then
    Set Portb.2
    Elseif Pind.3 = 0 And Pind.4 = 0 Then
    Set Portb.3
    End If
    Waitms 1
    Loop
    End

  4. تشکرها از این نوشته :


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

  1. مشکل پورت شبکه مارس بورد
    توسط m0h3n در انجمن Cortex-a8-a9 arm9-11
    پاسخ: 8
    آخرين نوشته: 20-05-2013, 15:25
  2. ارتباط با پورت usb
    توسط mostafay در انجمن AT91 series (ATMEL)
    پاسخ: 2
    آخرين نوشته: 24-04-2013, 17:15
  3. خواندن پورت
    توسط rayan2 در انجمن LPC series (NXP)
    پاسخ: 5
    آخرين نوشته: 24-02-2012, 13:26
  4. یه مشکل عجیب با پورت ها
    توسط amiraliforoozandeh در انجمن AT91 series (ATMEL)
    پاسخ: 5
    آخرين نوشته: 29-03-2011, 15:17
  5. خواندن از پورتهای ورودی
    توسط naruto در انجمن میکرو کنترلر های 32 بیتی(arm)
    پاسخ: 4
    آخرين نوشته: 02-03-2011, 22:50

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

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