Ta strona wykorzystuje pliki cookies. Korzystając ze strony, zgadzasz się na ich użycie. OK Polityka Prywatności Zaakceptuj i zamknij X

ADS1110 - Przetwornik 16-Bit Analog-to-Digital I2C

14-07-2015, 12:23
Aukcja w czasie sprawdzania była zakończona.
Cena kup teraz: 8.33 zł     
Użytkownik Mirtek
numer aukcji: 5513507293
Miejscowość Gołdap
Wyświetleń: 13   
Koniec: 14-07-2015 12:15:45

Dodatkowe informacje:
SMD: Tak
Stan: Nowy
info Niektóre dane mogą być zasłonięte. Żeby je odsłonić przepisz token po prawej stronie. captcha

Przetwornik A/D ADS1110 16-bit I2C 

 

 

 

Jeden z najlepszych przetworników analogowo-cyfrowych w układzie delta-sigma. Posiada wewnętrzne źródło referencyjne o niespotykanej jak na tę klasę przyrządów dokładności. Już oddzielny zakup samego źródła odniesienia o takiej precyzji byłby porównywalny z ceną samego przetwornika. Idealna stabilność, dokładność i stabilność temperaturowa daje bezpośredni pomiar bez żadnych obwodów ani bez obróbki matematycznej z rozdzielczością 0,01mV i dokładnością 1mV !

 

ADS1110 to kompletny system akwizycji danych, zamknięty w miniaturowej obudowie SOT23-6. Obejmuje on 16-bitowy przetwornik A/C typu delta-sigma, źródło napięcia referencyjnego, wzmacniacz programowalny (PGA), oscylator i interfejs szeregowy I2C. Zakres zastosowań to przede wszystkim różnego typu aplikacje pomiarowe wymagające małego poboru mocy i miniaturowych podzespołów, między innymi przenośne urządzenia medyczne. Wewnętrzny przetwornik A/C oferuje w pełni różnicową architekturę, mechanizm autokalibracji i 16-bitową charakterystykę bez tzw. gubienia kodów. Konwersje są przeprowadzane w oparciu o wewnętrzne źródło referencyjne 2,048V o dokładności 0,05% i dryfcie temperaturowym 5ppm/° C z szybkością 15, 30, 60 lub 240 próbek na sekundę. Maksymalne wzmocnienie bloku PGA wynosi 8V/V. ADS1110 pracuje z pojedynczym napięciem zasilania z zakresu od 2,7V do 5,5V. W stanie aktywnym pobiera około 240uA prądu zasilania, przy czym istnieje możliwość automatycznego przechodzenia w tryb power-down po każdej konwersji.

 

 

Zdjęcie pokazuje równoczesny pomiar dokładnego miernika i naszego przetwornika ADS1110 i jak widać wyniki nie różnią się. Doskonała stabilność i powtarzalność czyni ten przetwornik idealny dla profesjonalnych zastosowań jak i dla hobbystów dzięki cenie, zintegrowaniu i łatwości oprogramowania (nie jest potrzebna żadna procedura uśredniająca wyniki).

 

 

 

Przykładowy kod w BASCOMie:

 

 

 

Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = P1., Db5 = P1., Db6 = P1., Db7 = P1., E =
P1., Rs = P1.2
Config Scl = P3.5
Config Sda = P3.4
Dim Napiecie As Single , Pga As Integer
Dim Addressw As Byte , Addressr As Byte , Pomiarh As Byte , Pomiarl As Byte
Dim Napiecies As String * 10
Dim Sig As String * 1                                       'Deklaracja dodatkowej zmiennej - znak
Addressw = &B10[zasłonięte]000                                       'adresy do zapisu dla ukladów A0 i E0
Addressr = &B10[zasłonięte]001                                       'adresy do odczytu dla ukladów A0 i E0
Pga = 1                                                     'stopien wewnetrznego podzialu
Cls

'------- Petla glowna ---------------

Do
Sig = "+"                                                   'Wstepne ustawienie znaku wartosci
Gosub Odczyt                                                'Odczyt Pomiaru
Cursor Off
Gosub Wyswietl                                              'Wyświetlenie Na Lcd
Waitms 250
Waitms 250
Loop
End

Odczyt:
I2cstart
I2cwbyte Addressr                                           'Adres Do Odczytu
I2crbyte Pomiarh , Ack                                      'Odczyt Pomiaru
I2crbyte Pomiarl , Nack
I2cstop                                                     'Bit Stopu
Napiecie = Pomiarh * 256                                    'Przekształcenie
Napiecie = Napiecie + Pomiarl
'------------------------------------------------
'konieczna modyfikacja procedury
If Napiecie >= 32767 Then                                   'jesli Napiecie(word) >= 32767
Napiecie = 65535 - Napiecie                                 'oblicz wartosc dopelnienia do 65535
Sig = "-"                                                   'i ustaw zmienna Sig na znak minus
End If
'koniec glownej modyfikacji
'------------------------------------------------
        'Dla ADS1100 wpisujemy zamiast 2.048 wartość napięcia zasilania, im dokladniej tym lepiej, od tego zalezy dokladność pomiarów

Napiecie = Napiecie * 2.048
Napiecie = Napiecie / 32768
Napiecie = Napiecie / Pga
Napiecie = Napiecie * 1                                     'w tej linii zamiast 1 w przypadku
Zastosowania Dzielnika Napiecia W Celu Rozszerzenia Zakresu , Wpisujemy
Wspólczynnik Podzialu.
Return

Wyswietl:                                                   'Wyświetlenie Pomiaru Na Lcd
Upperline
Napiecies = Fusing(napiecie , 0.&&&)                        'Zaokrąglenie Wart. Napięcia
Lcd " Nap: " ; Sig ; Napiecie ; " V"                        '... Oraz Jego Wyświetlenie - tu tez
Zmiana - Wyswietlenie Znaku Zmierzonej Wartosci
Return                                                      'Powrót Z Podprocedury

 

 

----------------------------------------------------------------------

 

 

'Procedura obslugujaca przetwornik ADS1100/ADS1110, wynik pomiaru wyswietlany jest na LCD
'Nalezy zwrocic uwage na adresy przetwornikow, jesli sa inne niz A0/E0 nalezy je zmienic wg. wzoru zapis-1001xxx0, odczyt 1001xxx1


Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = P1., Db5 = P1., Db6 = P1., Db7 = P1., E = P1., Rs = P1.2
Config Scl = P3.5
Config Sda = P3.4
Dim Napiecie As Single , Pga As Integer
Dim Addressw As Byte , Addressr As Byte , Pomiarh As Byte , Pomiarl As Byte
Dim Napiecies As String * 10






Addressw = &B10[zasłonięte]000                                       'adresy do zapisu,  adres dla ukladów A0 i E0
Addressr = &B10[zasłonięte]001
Pga = 1                                                     'Odczytu

Cls
Do
Gosub Odczyt                                                'Odczyt Pomiaru
Cursor Off
Gosub Wyswietl                                              'Wyświetlenie Na Lcd
Waitms 250
Waitms 250
Loop
End

Odczyt:
I2cstart
I2cwbyte Addressr                                           'Adres Do Odczytu
I2crbyte Pomiarh , Ack                                      'Odczyt Pomiaru
I2crbyte Pomiarl , Nack
I2cstop                                                     'Bit Stopu
Napiecie = Pomiarh * 256                                    'Przekształcenie
Napiecie = Napiecie + Pomiarl                               'Dla ADS1100 wpisujemy zamiast 2.048 wartość napięcia zasilania, im dokladniej tym lepiej, od tego zalezy dokladność pomiarów
Napiecie = Napiecie * 2.048
Napiecie = Napiecie / 32768
Napiecie = Napiecie / Pga
Napiecie = Napiecie * 1                                     'w tej linii zamiast 1 w przypadku zastosowania dzielnika napiecia w celu rozszerzenia zakresu, wpisujemy wspólczynnik podzialu.
Return

Wyswietl:                                                   'Wyświetlenie Pomiaru Na Lcd
  Upperline
 Napiecies = Fusing(napiecie , 0.&&&)                       'Zaokrąglenie Wart. Napięcia
 Lcd "  Nap: " ; Napiecies ; " V"                           '... Oraz Jego Wyświetlenie
Return                                                      'Powrót Z Podprocedury