اطلاعیه

Collapse
No announcement yet.

مشکل در خواندن همزمان دو یا سه کلید 0/1

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    مشکل در خواندن همزمان دو یا سه کلید 0/1

    سلام
    من میخواستم وقتی دو کلید وصل شه دستواتم رو بخونه ولی نشد لطفا راهنمایی کنید

    کد:
    $regfile = "m8def.dat"
    $crystal = 1000000
    
    
    Config Portc = Output
    Config Portb = &B11111111
    
    
    '---------wait for active -------
    Main:
    Do
    Reset Portc.0
    
    
    
    If Pinb.&B00000011 = 1 Then Gosub Pv12start                 'p1&p2&v1&v2 chek
    If Pinb.&B00000001 = 1 Then Gosub Pv1start                  'p1&v1 chek
    If Pinb.&B00000010 = 1 Then Gosub Pv2start                  'p2&v2 chek
    If Pinb.&B00000100 = 1 Then Gosub Basket                    'basket chek
    
    
    Loop
    End
    '-------pump val 1------
    Pv1start:
    Do
    Set Portc.0
    Set Portc.1
    
    
    If Pinb.&B00000000 = 1 Then Gosub P1off
    
    
    Loop
    End
    '---------------pump off ----
    P1off:
    Do
    Reset Portc.0
    Waitms 1500
    Goto V1off
    Loop
    '----------------val1 off -----
    V1off:
    Do
    Reset Portc.1
    
    
    If Pinb.&B00000100 = 1 Then Gosub Basket                    'basket chek
    
    
    If Pinb.&B00000000 = 1 Then Gosub Main
    If Pinb.&B00000011 = 1 Then Gosub Pv12start
    Loop
     '-------pump val 2------
    Pv2start:
    Do
    Set Portc.2
    Set Portc.3
    If Pinb.&B00000000 = 1 Then Gosub P2off
    Loop
    End
    '---------------pump2 off ----
    P2off:
    Do
    Reset Portc.2
    Waitms 1500
    Goto V2off
    Loop
    '----------------val2 off -----
    V2off:
    Do
    Reset Portc.3
    If Pinb.&B00000100 = 1 Then Gosub Basket                    'basket chek
    If Pinb.&B00000000 = 1 Then Gosub Main
    If Pinb.&B00000011 = 1 Then Gosub Pv12start
    Loop
     '-------pump val 1 & pump val 2 ------
    Pv12start:
    Do
    Reset Portc.4
    
    
    Set Portc.0
    Set Portc.1
    Set Portc.2
    Set Portc.3
    
    
    If Pinb.&B00000000 = 1 Then Gosub P12off
    If Pinb.&B00000001 = 1 Then Gosub P12off
    Loop
    End
    '---------------pump2 off ----
    P12off:
    Do
    
    
    Reset Portc.0
    Reset Portc.2
    Waitms 1500
    
    
    
    
    Goto V12off
    Loop
    '----------------val2 off -----
    V12off:
    Do
    Reset Portc.1
    Reset Portc.3
    
    
    If Pinb.&B00000001 = 1 Then Gosub Pv1start
    
    
    Loop
     '-------basket ------
    '-------ON -BASKET------
    Basket:
    
    
    Set Portc.4
    Wait 5
    If Pinb.&B00000000 = 1 Then Gosub Offbasket
    Set Portc.0
    Set Portc.1
    Set Portc.2
    Set Portc.3
    
    
    Wait 5
    Do
    If Pinb.&B00000011 = 1 Then Gosub Pv12start
    If Pinb.&B00000000 = 1 Then Gosub Offbasket
    
    
    Loop
    End
    '---------------off -basket----
    Offbasket:
    Do
    Wait 10
    Reset Portc.4
    
    
    Goto Main
    Loop
    
     End
    جدیدترین ویرایش توسط tasadof; ۰۳:۲۷ ۱۳۹۷/۱۰/۱۸.

    #2
    پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

    نوشته اصلی توسط tasadof نمایش پست ها
    سلام
    من میخواستم وقتی دو کلید وصل شه دستواتم رو بخونه ولی نشد لطفا راهنمایی کنید

    کد:
    $regfile = "m8def.dat"
    $crystal = 1000000
    
    
    Config Portc = Output
    Config Portb = &B11111111
    
    
    '---------wait for active -------
    Main:
    Do
    Reset Portc.0
    
    
    
    If Pinb.&B00000011 = 1 Then Gosub Pv12start                 'p1&p2&v1&v2 chek
    If Pinb.&B00000001 = 1 Then Gosub Pv1start                  'p1&v1 chek
    If Pinb.&B00000010 = 1 Then Gosub Pv2start                  'p2&v2 chek
    If Pinb.&B00000100 = 1 Then Gosub Basket                    'basket chek
    
    
    Loop
    End
    '-------pump val 1------
    Pv1start:
    Do
    Set Portc.0
    Set Portc.1
    
    
    If Pinb.&B00000000 = 1 Then Gosub P1off
    
    
    Loop
    End
    '---------------pump off ----
    P1off:
    Do
    Reset Portc.0
    Waitms 1500
    Goto V1off
    Loop
    '----------------val1 off -----
    V1off:
    Do
    Reset Portc.1
    
    
    If Pinb.&B00000100 = 1 Then Gosub Basket                    'basket chek
    
    
    If Pinb.&B00000000 = 1 Then Gosub Main
    If Pinb.&B00000011 = 1 Then Gosub Pv12start
    Loop
     '-------pump val 2------
    Pv2start:
    Do
    Set Portc.2
    Set Portc.3
    If Pinb.&B00000000 = 1 Then Gosub P2off
    Loop
    End
    '---------------pump2 off ----
    P2off:
    Do
    Reset Portc.2
    Waitms 1500
    Goto V2off
    Loop
    '----------------val2 off -----
    V2off:
    Do
    Reset Portc.3
    If Pinb.&B00000100 = 1 Then Gosub Basket                    'basket chek
    If Pinb.&B00000000 = 1 Then Gosub Main
    If Pinb.&B00000011 = 1 Then Gosub Pv12start
    Loop
     '-------pump val 1 & pump val 2 ------
    Pv12start:
    Do
    Reset Portc.4
    
    
    Set Portc.0
    Set Portc.1
    Set Portc.2
    Set Portc.3
    
    
    If Pinb.&B00000000 = 1 Then Gosub P12off
    If Pinb.&B00000001 = 1 Then Gosub P12off
    Loop
    End
    '---------------pump2 off ----
    P12off:
    Do
    
    
    Reset Portc.0
    Reset Portc.2
    Waitms 1500
    
    
    
    
    Goto V12off
    Loop
    '----------------val2 off -----
    V12off:
    Do
    Reset Portc.1
    Reset Portc.3
    
    
    If Pinb.&B00000001 = 1 Then Gosub Pv1start
    
    
    Loop
     '-------basket ------
    '-------ON -BASKET------
    Basket:
    
    
    Set Portc.4
    Wait 5
    If Pinb.&B00000000 = 1 Then Gosub Offbasket
    Set Portc.0
    Set Portc.1
    Set Portc.2
    Set Portc.3
    
    
    Wait 5
    Do
    If Pinb.&B00000011 = 1 Then Gosub Pv12start
    If Pinb.&B00000000 = 1 Then Gosub Offbasket
    
    
    Loop
    End
    '---------------off -basket----
    Offbasket:
    Do
    Wait 10
    Reset Portc.4
    
    
    Goto Main
    Loop
    
     End
    با سلام در مورد اینکه می خواهید برنامه چه کاری انجام بده بیشتر
    توضیح بدید
    قصه زندگی همیشه با مدادی که ما دوست داریم نوشته نمی شه .....

    دیدگاه


      #3
      پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

      سلام
      من می خوام وقتی مثلان pinb.0 صفر شدرله یک و دو روشن شه و اگر pin b.0 یک شد رله یک خاموش شه 1.5 ثانه صبر کنه بعد رله دو رو خاموش کنه بعد بره به لیبل main
      وقتی pinb.1 صفر شد رله سه و چهار روشن شه و اگر pin b.1 یک شد رله سه خاموش شه 1.5 ثانه صبر کنه بعد رله چهار رو خاموش کنه بعد بره به لیبل main
      اما وقتی pinb.0 و pinb.1 صفر شد رله یک و دو وسه و چهار رو روشن کنه و وقتی
      pinb.0 و pinb.1 یک شد رله یک و سه خاموش کنه 1.5 تانیه صبر کنه بعد رله دو و چهار خاکوش کنه بعد بره به لیبل main

      دیدگاه


        #4
        پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

        نوشته اصلی توسط tasadof نمایش پست ها
        سلام
        من می خوام وقتی مثلان pinb.0 صفر شدرله یک و دو روشن شه و اگر pin b.0 یک شد رله یک خاموش شه 1.5 ثانه صبر کنه بعد رله دو رو خاموش کنه بعد بره به لیبل main
        وقتی pinb.1 صفر شد رله سه و چهار روشن شه و اگر pin b.1 یک شد رله سه خاموش شه 1.5 ثانه صبر کنه بعد رله چهار رو خاموش کنه بعد بره به لیبل main
        اما وقتی pinb.0 و pinb.1 صفر شد رله یک و دو وسه و چهار رو روشن کنه و وقتی
        pinb.0 و pinb.1 یک شد رله یک و سه خاموش کنه 1.5 تانیه صبر کنه بعد رله دو و چهار خاکوش کنه بعد بره به لیبل main

        شما دو حالت صفر و یک رو برای پین ها در نظر گرفتید فرض کنید
        در main هستید رله ها چه وضعیتی دارند پین ها چه وضعیتی
        قصه زندگی همیشه با مدادی که ما دوست داریم نوشته نمی شه .....

        دیدگاه


          #5
          پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

          نوشته اصلی توسط خلبان نمایش پست ها
          شما دو حالت صفر و یک رو برای پین ها در نظر گرفتید فرض کنید
          در main هستید رله ها چه وضعیتی دارند پین ها چه وضعیتی
          در لیبل main رله ها 0 هستن

          دیدگاه


            #6
            پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

            نوشته اصلی توسط tasadof نمایش پست ها
            در لیبل main رله ها 0 هستن
            خوب وضعیت رله ها معلوم شد حالا پین هارو هم صفر در نظر بگیر
            و از اینجا به بعد بگو ادامه برنامه چطور باشه
            قصه زندگی همیشه با مدادی که ما دوست داریم نوشته نمی شه .....

            دیدگاه


              #7
              پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

              نوشته اصلی توسط خلبان نمایش پست ها
              خوب وضعیت رله ها معلوم شد حالا پین هارو هم صفر در نظر بگیر
              و از اینجا به بعد بگو ادامه برنامه چطور باشه
              من توی این گیر کردم که وقتی دو ورودی من که pinb.0 و pinb.1 هم زمان 0 شد یه دستور رو برام بخونه
              مثلا اگر
              pinb.0وpinb1 مساوی با صفر شد portc.0 رو 1 کنه

              دیدگاه


                #8
                پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

                نوشته اصلی توسط tasadof نمایش پست ها
                من توی این گیر کردم که وقتی دو ورودی من که pinb.0 و pinb.1 هم زمان 0 شد یه دستور رو برام بخونه
                مثلا اگر
                pinb.0وpinb1 مساوی با صفر شد portc.0 رو 1 کنه
                سلام . توی C اینجوری مینویسیم :
                (if(!PINB.0 & !PINB.1
                PORTC.0=1;
                فک کنم تو بسکام هم بتونی بنویسی (0=IF( PINB.0=0 AND PINB.1
                الهم صل علی محمد و آل محمد و عجل فرجهم
                www.adaksell.com

                دیدگاه


                  #9
                  پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

                  در بیسکام این طوری میشه
                  if pinb.0 and pinb.1=0 then
                  set portc.0
                  endif
                  جدیدترین ویرایش توسط خلبان; ۱۴:۳۳ ۱۳۹۷/۱۰/۱۸.
                  قصه زندگی همیشه با مدادی که ما دوست داریم نوشته نمی شه .....

                  دیدگاه


                    #10
                    پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

                    [QUOTE=خلبان;690519]
                    نوشته اصلی توسط tasadof نمایش پست ها
                    من توی این گیر کردم که وقتی دو ورودی من که pinb.0 و pinb.1 هم زمان 0 شد یه دستور رو برام بخونه مثلا اگر pinb.0وpinb1 مساوی با صفر شد portc.0 رو 1 کنهf
                    در بیسکام این طوری میشه
                    if pinb.0 and pinb.1=0 then
                    set portc.0
                    endif
                    ممنون از پاسخ دوستان عزیز
                    ولی بازم ارور میده

                    کد PHP:
                    $regfile "m8def.dat"$crystal 1000000
                    Config Portc 
                    OutputConfig Portb Input
                    Reset PortcMain
                    :DoReset Portc
                    If Pinb.0 And Pinb.1 0 Then
                     Gosub D
                     End 
                    If
                     
                    Loop
                     D 
                    DoSet Portc.0Waitms 200Reset Portc.0Waitms 200 Loop

                    End 
                    این خط کد ارور داره If Pinb.0 And Pinb.1 = 0 Then
                    جدیدترین ویرایش توسط tasadof; ۱۳:۵۱ ۱۳۹۷/۱۰/۱۸.

                    دیدگاه


                      #11
                      پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

                      [QUOTE=tasadof;690520]
                      نوشته اصلی توسط خلبان نمایش پست ها
                      ممنون از پاسخ دوستان عزیز
                      ولی بازم ارور میده

                      کد PHP:
                      $regfile "m8def.dat"$crystal 1000000
                      Config Portc 
                      OutputConfig Portb Input
                      Reset PortcMain
                      :DoReset Portc
                      If Pinb.0 And Pinb.1 0 Then
                       Gosub D
                       End 
                      If
                       
                      Loop
                       D 
                      DoSet Portc.0Waitms 200Reset Portc.0Waitms 200 Loop

                      End 
                      این خط کد ارور داره If Pinb.0 And Pinb.1 = 0 Then
                      اینجوری بنویس
                      کد:
                      $regfile = "m8def.dat"$crystal = 1000000
                      Config Portc = Output
                      Config Portb = Input
                      Reset Portc
                      Main:
                      Do
                      Reset Portc
                      If Pinb.0 = 0 And Pinb.1 = 0 Then
                       Gosub D
                       End If
                       Loop
                       D:
                       Do
                         Set Portc.0
                         Waitms 200
                         Reset Portc.0
                         Waitms 200
                       Loop
                      
                      
                      End
                      الهم صل علی محمد و آل محمد و عجل فرجهم
                      www.adaksell.com

                      دیدگاه


                        #12
                        پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

                        [QUOTE=tasadof;690520]
                        نوشته اصلی توسط خلبان نمایش پست ها
                        ممنون از پاسخ دوستان عزیز
                        ولی بازم ارور میده

                        کد PHP:
                        $regfile "m8def.dat"$crystal 1000000
                        Config Portc 
                        OutputConfig Portb Input
                        Reset PortcMain
                        :DoReset Portc
                        If Pinb.0 And Pinb.1 0 Then
                         Gosub D
                         End 
                        If
                         
                        Loop
                         D 
                        DoSet Portc.0Waitms 200Reset Portc.0Waitms 200 Loop

                        End 
                        "regfile = "m8def.dat$
                        8000000=crystal$
                        config portc.0=output
                        config pinb.0=input
                        confg pinb.1=input
                        portc.0=0
                        do
                        if pinb.0 and pinb.1=0 then
                        set portc.0
                        endif
                        loop


                        قصه زندگی همیشه با مدادی که ما دوست داریم نوشته نمی شه .....

                        دیدگاه


                          #13
                          پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

                          [QUOTE=خلبان;690522]
                          نوشته اصلی توسط tasadof نمایش پست ها
                          "regfile = "m8def.dat$
                          8000000=crystal$
                          config portc.0=output
                          config pinb.0=input
                          confg pinb.1=input
                          portc.0=0
                          do
                          if pinb.0 and pinb.1=0 then
                          set portc.0
                          endif
                          loop


                          ممنون از راهنمایی شما دوست عزیز مشکلم حل شد

                          دیدگاه


                            #14
                            پاسخ : مشکل در خواندن همزمان دو یا سه کلید 0/1

                            [QUOTE=tasadof;690523]
                            نوشته اصلی توسط خلبان نمایش پست ها
                            ممنون از راهنمایی شما دوست عزیز مشکلم حل شد
                            موفق و پیروز باشید
                            قصه زندگی همیشه با مدادی که ما دوست داریم نوشته نمی شه .....

                            دیدگاه

                            لطفا صبر کنید...
                            X