Datenblatt: http://www.ti.com.cn/cn/lit/ds/symlink/tlc549.pdf
Aufbau
An den analogen Eingang des TLC549 wird ein Potentiometer angeschlossen, um eine Spannung einstellen zu können, die durch den ADC gemessen werden soll.
Über die Anschlüsse REF+ und REF- werden die Referenzspannungen des AD-Wandlers definiert. Schließt man 5 V und GND an diese Pins an, so wird des Messbereich des ADC auf 0 bis 5 V festgelegt.
Der Clock-Pin wird mit der SCK-Leitung des SPI-Bus verbunden. Der DOUT-Pin wird mit der MISO-Leitung des SPI-Bus verbunden. Der CS-Pin (Chip-Select) kann mit einem beliebigen Pin des Arduinos verbunden werden. Die MOSI-Leitung wird nicht benötigt bei diesem IC, da keine Daten vom Master an den Slave übertragen werden müssen.
Programmierung
Eine Hilfe stellt das folgenden Bild aus dem Datenblatt auf Seite 3 dar.
Das folgenden Programm gibt die Daten des AD-Wandlers über die serielle Schnittstelle aus.
Bei der Initialisierung ist zu beachten, dass die SPI-Clock durch 16 geteilt werden muss, da die im Datenblatt verzeichnete Maximalfrequenz 1.1 MHz beträgt.
Durch die Anweisung digitalWrite(CS, LOW);
wird der TLC549 eingeschaltet und während des Programmablaufes nicht mehr ausgeschaltet.
Die Abfrage der Daten erfolgt durch die Anweisung SPI.transfer(0x00)
. Indem Daten über den SPI-Bus gesendet werden, taktet die SPI-Clock und gleichzeitig werden die Daten vom Slave empfangen. Das empfangene Byte wird von der Methode SPI.transfer()
zurückgegeben und anschlißend über die serielle Schnittstelle an den PC übertragen.
const uint8_t CS = 10;voidvoid