اطلاعیه

Collapse
No announcement yet.

اتصال پتانسیو متر به ADC

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

    اتصال پتانسیو متر به ADC

    سلام
    یه پتانسیو متر 10K رو به ADC وصل کردم اما مقدارش درست نیست یا صفر رو نشون میده یا 22 ...
    اینم برنامه توی پروتوس درسته ؟
    $regfile = "M16def.dat "
    $crystal = 8000000
    Baud = 9600
    Config Adc = Single , Prescaler = Auto
    Dim Adc1 As Word
    Dim Adc2 As Word
    Dim Adc3 As Word
    Dim U1 As Byte
    Dim U2 As Byte
    Dim U3 As Byte
    Declare Sub Pwm.1
    Declare Sub Pwm.2
    Declare Sub Pwm.3
    '******************ADC*********************** **************************************
    Do
    Cls
    Adc1 = Getadc(0)
    U1 = Adc1 / 4
    Print "ERFAN"
    Print Adc1
    Loop


    #2
    پاسخ : اتصال پتانسیو متر به ADC

    فکر کنم به لوپت باید یک دیلی یه دو ثانیه ای بذاری.

    دیدگاه


      #3
      پاسخ : اتصال پتانسیو متر به ADC

      حدود 300 میلی ثانیه هم خوبه
      در ضمن یه سر پتانسیومتر هم به 2.5 ولت تغدیه
      بعدا یه جمله قشنگ مینویسم

      دیدگاه


        #4
        پاسخ : اتصال پتانسیو متر به ADC

        مشکل رفع شد پتا نسیومتره خراب بود :applause:

        دیدگاه


          #5
          پاسخ : اتصال پتانسیو متر به ADC

          وقتی تقسیم بر 4 می کنم توی متغیر از نوع Byte عدد رو درست نشون نمی ده توی ی نوع متغیر دیگه میریزم درست کار میکنه ؟

          دیدگاه


            #6
            پاسخ : اتصال پتانسیو متر به ADC

            الان من درستش کردم عدد رو به یه جای دیگه می فرسم عدد رو 10 نشون میده
            اینم برنامه فرستنده
            $regfile = "M16def.dat "
            $crystal = 8000000
            Baud = 9600
            Config Adc = Single , Prescaler = Auto
            Dim Adc1 As Word
            Dim Adc2 As Word
            Dim Adc3 As Word
            Dim U1 As Single
            Dim U2 As Word
            Dim U3 As Byte
            Declare Sub Pwm.1
            Declare Sub Pwm.2
            Declare Sub Pwm.3
            '******************ADC*********************** **************************************
            Do
            Cls
            Adc1 = Getadc(2)
            Adc1 = Adc1 / 4
            Print Adc1
            Waitms 100
            Loop

            برنامه گیرنده

            $regfile = "M16def.dat "
            $crystal = 8000000
            Config Timer1 = Pwm , Pwm = 8 , Compare A Pwm = Clear Up , Compare B Pwm = Disconnect , Prescale = 1
            Config Timer2 = Pwm , Prescale = 1 , Pwm = On , Compare Pwm = Disconnect
            Baud = 9600
            Dim Pw1 As Byte
            Dim Pw2 As Byte
            Dim Pw3 As Byte
            Declare Sub Pwm.1
            Declare Sub Pwm.2
            Declare Sub Pwm.3
            Enable Interrupts
            Enable Urxc
            On Urxc Uart
            Dim A As Byte
            Do
            Pwm1a = A
            Print A
            Waitms 10
            Loop

            Uart:
            A = Udr
            Return



            دیدگاه

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