Der ADC des dsPIC33 Mikrocontrollers hat eine Auflösung von 10 Bit oder alternativ 12 Bit. Berechne die Anzahl der notwendigen Schritte zur Digitalisierung für folgende Werte:
Zur Verwendung des ADC wird eine Bibliothek zur Verfügung gestellt. Binde dafür die Datei ADCconfig.h und ADCconfig.c in das Projekt ein.
L1
und zwischen 292 und 437 LED L1
und L2
leuchten u.s.w. Achte auf eine gleichmäßige Einteilung.Programmiere (08-ADC-3.c) die Spannungsanzeige am LCD mit 3 Nachkommastellen für das Poti 1.
Der Abstandssendsor OCP162H0180 von Wenglor arbeitet mit hochauflösenden CMOS-Zeile und DSP-Technologie und ermittelt den Abstand über eine Winkelmessung.
LIME 1: Schließe an dem externen Eingang EXT1
einen Sensor mit einer analogen Ausgangsspannung
zwischen 0 und 10 V an. Die Anzeige des Abstandes am LCD ist zu programmieren.
Hinweis: braunes Kabel: 24 V, grünes Kabel: Masse 0 V, rosa Kabel: Analogwert 0 bis 10 V an EXT1
LIME 2:Die Eingänge sind für maximal 3,3 V ausgelegt. Aus diesem Grund musst du hier einen Spannungsteiler realisieren. Wenn du mit einer höheren Spannung als 3,3 V auf einen Eingang gehst, zerstörst du den Mikrocontroller!
Gegeben ist der Temperatursensor der Firma Wenglor FFXT009 mit einem Arbeitsbereich von 20 bis 140 °C und einer analogen Ausgangsspannung von 0 bis 10 V
Widerstand: $R_2=R_1\frac{U_2}{U_1-U_2}=6,25~k\Omega$
1 Arbeitsbereich Sensor: 20 - 140 °C
2 Spannungsbereich Sensor: 0 - 10 V
3 Spannungsbereich MC: $U_2=U_1\frac{R_2}{R_1+R_2}=3300~mV$
4 Digitalbereich MC: $\text{digitalwert}=3300~mV\frac{1023}{3300~mV}=1023$
5 Temperaturberechnung: Meßbereich: 140 - 20 = 120 °C
$temperatur=digitalwert\cdot \frac{120~^\circ C}{1023}+20~^\circ C$
Anzeige am LCD
digitalwert=ADCread(EX1);
temperatur=(digitalwert*120)/1023+20;
T1[5]=temperatur%10+48;
T1[4]=(temperatur/10)%10+48;
T1[3]=(temperatur/100)%10+48;
Temperaturberechnung
0 - 140 °C: $temperatur=digitalwert\cdot \frac{140~^\circ C}{1023}$
-20 - 140 °C: $temperatur=digitalwert\cdot \frac{160~^\circ C}{1023}-20~^\circ C$