اطلاعیه

Collapse
No announcement yet.

مبدل آنالوگ به دیجیتال ADS1115

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

    مبدل آنالوگ به دیجیتال ADS1115

    سلام و خسته نباشید
    لطفا برای راه اندازی ماژول ADS1115 با میکرو Atmega32 که از طریق I2C تنظیم و مرتبط میشه منو راهنمایی کنید. اگه نمونه برنامه بهم معرفی کنید که خیلی عالی میشه.
    دیتاشیت این ماژول یا همون آی سی تو اینترنت هست, یه آی سی مبدل 16 بیته.

    #2
    پاسخ : مبدل آنالوگ به دیجیتال ADS1115

    نوشته اصلی توسط m_habibi
    سلام و خسته نباشید
    لطفا برای راه اندازی ماژول ADS1115 با میکرو Atmega32 که از طریق I2C تنظیم و مرتبط میشه منو راهنمایی کنید. اگه نمونه برنامه بهم معرفی کنید که خیلی عالی میشه.
    دیتاشیت این ماژول یا همون آی سی تو اینترنت هست, یه آی سی مبدل 16 بیته.

    دیدگاه


      #3
      پاسخ : مبدل آنالوگ به دیجیتال ADS1115

      با سلام
      کد زیر نمونه تغییر یافته استفاده از این ماژول در یک وبسایت آلمانی هست که برای تبدیل سنسور Pt100 نوشته شده بود. اکنون بصورت دیفرانسیلی از ولتاژ -2.048 تا +2.048 ولت را از ain0 و ain1 گرفته و از طریق پورت سریال به کامپیوتر ارسال می کند.

      کد:
      $regfile = "m32def.dat"
      $crystal = 8000000
      $baud = 9600
      Config Scl = Portc.0
      Config Sda = Portc.1
      Config I2cdelay = 6
      I2cinit
      Dim V As Single
      Dim Msb As Byte
      Dim Lsb As Byte
      Dim Stat As Byte
      Dim T As Single
      
      Const Ads1115w = &B10010000                 ' Endereço de escrita do ADC ADS1115
      Const Ads1115r = &B10010001
                     ' Endereço de leitura do ADC ADS1115
        Do
        I2cstart                         ' Generate start code
        I2cwbyte Ads1115w                    ' Enviando endereço de escrita do ADS1115
        I2cwbyte &B00000001                   ' Registrador de configuração
        I2cwbyte &B00000100                   ' MSB do registrador
        ' 0 : No effect
        ' 100 : AINP = AIN0 and AINN = GND
        ' (================ fora ============ 101 : AINP = AIN1 and AINN = GND =================)
        ' 101 : FS = ±0.256V
        ' 0 : Continuous conversion mode
        I2cwbyte &B00100011                   ' LSB do registrador
        ' 111 : 860SPS
        ' 0 : Traditional comparator with hysteresis (default)
        ' 0 : Active low (default)
        ' 0 : Non-latching comparator (default)
        ' 11 : Disable comparator (default)
        I2cstop
        Waitms 10
        I2cstart
             ' Espera 2 ms
        'I2cstop
        'I2cstart
                              ' Generate start code
        I2cwbyte Ads1115w                    ' Enviando endereço de escrita do ADS1115
        I2cwbyte &B00000000                   ' Registrador de conversão
        I2cstop
        Waitms 10
        I2cstart
        I2cwbyte Ads1115r
      
        I2crbyte Msb , Ack
        I2crbyte Lsb , Nack
                                '
        I2cstop
        Waitms 10
        V = 256 * Msb
        V = V + Lsb
        T = V
        If V > 32767 Then
          V = V - 65536
          V = V / 32767
          V = V * 2.048
         Else
      
          V = V / 32767
          V = V * 2.048
        End If
      
        Print Msb ; "     " ; Lsb ; "     " ; "     " ; T ; "    " ; V
      
      
      Loop
      
      
      End
      «اگر واقعیات با نظریات هماهنگی ندارند، واقعیتآ‌ها را تغییر بده.»
      آلبرت انشتین

      دیدگاه

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