اطلاعیه

Collapse
No announcement yet.

ایراد در برنامه فاصله سنج با ماژول SR04

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

    ایراد در برنامه فاصله سنج با ماژول SR04

    یه برنامه نوشتم برای این ماژول خیلی ساده ولی روی LCD همش صفر می بینم
    به نظر شما ایرادی وجود داره ؟
    کد:
    $regfile = "m8def.dat"
    $crystal = 1000000
    Config Lcd = 16 * 2
    Config Lcdpin = Pin , Db4 = Pinb.4 , Db5 = Pinb.5 , Db6 = Pinb.6 , Db7 = Pinb.7 , Rs = Pinb.2 , E = Pinb.3
    Config Portd.7 = Output
    Config Portd.3 = Input
    Dim B As Word
    Dim D As Double
    Cursor Off
    Cls
    Lcd "ashuri"
    Wait 2
    Cls
    
    Do
    Pulseout Portd , 7 , 15
    Pulsein B , Pind , 3 , 0
    Waitms 10
    D = B / 62
    Cls
    Lcd D
    Lowerline
    Lcd B
    Loop
    End
    مردود شدن بهتر از با تقلب قبول شدن است

    #2
    پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

    چرا از این دستورات استفاده میکنین پایه ای بنویسین خب

    ابتدا پایه تریگر رو به مدت 15 میکروثانیه یک کنید و سپس تا تا صفر شدن ( تا جایی که خاطرم هست پایه اکو وقتی یک میشد موج دتکت شده بود ) پایه اکو صبر کنید بعد تایمر رو فعال کنید تا پایه اکو یک بشه و بعد تایمر رو غیرفعال و زمان رفتو برگشت رو تقسیم بر 2 کرده و با x = vt فاصله را محاسبه کنید
    اشک هایی که پس از هر شکست ریخته میشوند همان عرق هاییست که برای پیروزی ریخته نشده است

    دیدگاه


      #3
      پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

      نوشته اصلی توسط mehran901
      چرا از این دستورات استفاده میکنین پایه ای بنویسین خب

      ابتدا پایه تریگر رو به مدت 15 میکروثانیه یک کنید و سپس تا تا صفر شدن ( تا جایی که خاطرم هست پایه اکو وقتی یک میشد موج دتکت شده بود ) پایه اکو صبر کنید بعد تایمر رو فعال کنید تا پایه اکو یک بشه و بعد تایمر رو غیرفعال و زمان رفتو برگشت رو تقسیم بر 2 کرده و با x = vt فاصله را محاسبه کنید
      با تشکر از راهنمایی شما
      به هر حال به دنبال ایراد در برنامه خودم می گشتم
      مردود شدن بهتر از با تقلب قبول شدن است

      دیدگاه


        #4
        پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04


        سلام

        فکر کنم کدتون رو اینجوری بنویسید درست بشه:


        کد:
        $regfile = "m8def.dat"
        $crystal = 4000000
        Config Lcd = 16 * 2
        Config Lcdpin = Pin , Db4 = Pinb.4 , Db5 = Pinb.5 , Db6 = Pinb.6 , Db7 = Pinb.7 , Rs = Pinb.2 , E = Pinb.3
        Config Portd.7 = Output
        Config Portd.3 = Input
        Dim B As Word
        Dim D As Double
        Cursor Off
        Cls
        Lcd "ashuri"
        Wait 2
        Cls
        
        Do
        Pulseout Portd , 7 , 15
        Pulsein B , Pind , 3 , 1
        Waitms 10
        D=B*0.1725
        Cls
        Lcd D
        Lowerline
        Lcd B
        Loop
        End

        دیدگاه


          #5
          پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

          نوشته اصلی توسط tamjid
          سلام

          فکر کنم کدتون رو اینجوری بنویسید درست بشه:


          کد:
          $regfile = "m8def.dat"
          $crystal = 4000000
          Config Lcd = 16 * 2
          Config Lcdpin = Pin , Db4 = Pinb.4 , Db5 = Pinb.5 , Db6 = Pinb.6 , Db7 = Pinb.7 , Rs = Pinb.2 , E = Pinb.3
          Config Portd.7 = Output
          Config Portd.3 = Input
          Dim B As Word
          Dim D As Double
          Cursor Off
          Cls
          Lcd "ashuri"
          Wait 2
          Cls
          
          Do
          Pulseout Portd , 7 , 15
          Pulsein B , Pind , 3 , 1
          Waitms 10
          D=B*0.1725
          Cls
          Lcd D
          Lowerline
          Lcd B
          Loop
          End
          با تشکر از راهنمایی شما
          الان B یک عددی نشان می دهد اما D همچنان صفر است
          به نظرتان ایراد دیگری وجود دارد؟
          مردود شدن بهتر از با تقلب قبول شدن است

          دیدگاه


            #6
            پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

            من خودم این ماژول رو راه انداختم اما تفاوتی که با برنامه شما داشته این بوده :
            1-dim D as Single
            2- از دستور pulseout هم استفاده نکردم و پایه تریگر رو 15میکرو ثانیه 1 کردم
            *******************
            فیوز بیتها رو درست تنظیم کردید؟

            دیدگاه


              #7
              پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

              نوشته اصلی توسط tamjid
              من خودم این ماژول رو راه انداختم اما تفاوتی که با برنامه شما داشته این بوده :
              1-dim D as Single
              2- از دستور pulseout هم استفاده نکردم و پایه تریگر رو 15میکرو ثانیه 1 کردم
              *******************
              فیوز بیتها رو درست تنظیم کردید؟
              به جای pulseout از تایمر استفاده کردید؟
              فقط بایستی فیوز بیت کلاک رو تنظیم می کردم دیگه
              مردود شدن بهتر از با تقلب قبول شدن است

              دیدگاه


                #8
                پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

                نوشته اصلی توسط masoud58
                به جای pulseout از تایمر استفاده کردید؟
                فقط بایستی فیوز بیت کلاک رو تنظیم می کردم دیگه
                اره کلاک روی 4مگ باید تنظیم میکردید.
                نه از تایمر هم استفاده نکردم برنامه زیر رو هم دوباره امتحان کنید با همون کلاک 8مگ.

                کد:
                $regfile = "m8def.dat"
                $crystal = 8000000
                Config Lcd = 16 * 2
                Config Lcdpin = Pin , Db4 = Pinb.4 , Db5 = Pinb.5 , Db6 = Pinb.6 , Db7 = Pinb.7 , Rs = Pinb.2 , E = Pinb.3
                Config Portd.7 = Output
                Config Portd.3 = Input
                Dim B As Word
                Dim D As single
                Cursor Off
                Cls
                Lcd "ashuri"
                Wait 2
                Cls
                
                Do
                set portd.7
                waitus 15
                reset portd.7
                Pulsein B , Pind , 3 , 1
                
                D=B*0.1725
                Cls
                Lcd D
                Lowerline
                Lcd B
                Loop
                End

                دیدگاه


                  #9
                  پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

                  دوستان مگه نباید از adc میکرو استفاده کرد

                  دیدگاه


                    #10
                    پاسخ : ایراد در برنامه فاصله سنج با ماژول SR04

                    نوشته اصلی توسط s.h.h
                    دوستان مگه نباید از adc میکرو استفاده کرد
                    چرا ADC ؟
                    مگه سنسور آنالوگه؟
                    فکر کنم اشتباه می کنید
                    مردود شدن بهتر از با تقلب قبول شدن است

                    دیدگاه

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