MCP6S21 / 2/6/8 sind programmierbare Verstärkungsverstärker, die eine Eingangsspannung um einen Faktor von 1, 2, 4, 5, 8, 10, 16 und 32 multiplizieren . Der MCP6S22 / 6/8 hat auch wählbare Eingangskanäle zum Arbeiten mit unterschiedlichen Signalquellen. Der Multiplikationsfaktor und der Eingangskanal sind über eine SPI-Schnittstelle konfiguriert. Dieser Chip ist nützlich, um ein kleines Eingangssignal zu multiplizieren und zwischen mehreren analogen Eingangsquellen auszuwählen. Wir zeigen den sechskanaligen MCP6S26 unten.
MCP6S26 Programmierbare Verstärker (Mouser-Suche, OCTOPART SEARCH, $ 2.56) Datasheet (PDF).
Wir haben den Chip in der oben gezeigten Schaltung mit einer 3,3Volt-Stromversorgung getestet. Ein Widerstandsspannungsteiler (R1-4) gibt einen Bruchteil der Zufuhr an den Kanälen 0, 2 und 4 aus. Wir haben 5K-Widerstände verwendet, aber der Wert ist nicht kritisch. Die Teilerausgänge 2.4volts auf Kanal 0, 1.6volts auf Kanal 2 und 0,8 Vielen an Kanal 4.
Bus-Pirat
DS1801 (Pin #)
ADC.
Vout (1)
Gnd
Vref (8)
Gnd
Vss (9)
Cs.
Cs (10)
Mossi
Si (11)
Miso.
So (12)
UHR
SCK (13)
+ 3.3v.
VDD (13)
Wir haben unsere serielle Bus-Pirat-Universal-Schnittstelle verwendet, um diesen Chip zu demonstrieren, aber die Transaktionssequenz ist jedoch für jede Mikrocontroller-Implementierung gleich. Wir haben den Bus-Pirat auf den MCP6S26 verbunden, wie in der obigen Tabelle gezeigt. Wir richten den Bus-Pirat für den RAW3WIRE-Modus (M, 8) mit normalen Ausgängen ein und ermöglicht das Bordstromversorgung (Kapital ‘W’).
Raw3Wire> [0B01000001 0] D
CS-fähige <-begin-SPI-Transaktion
Schreiben: 0x41 <-Change Input Channel-Befehl
Schreiben: 0x00 <-Change To Kanal 0
CS Deaktiviert <-END SPI Transaktion
Spannungssonde: 2.4volt <-Vout-Spannungsmessung
Raw3wire>
Das Schreiben von 0B01000001 (0x41), gefolgt von einer Kanalnummer, ändert den Active MCP6S26-Eingang. ‘[‘ Senkt die Chip-Select-Leitung, um eine SPI-Transaktion zu starten. Wir senden den Änderungskanalbefehl (0x41), gefolgt von 0, gefolgt von 0, um den Eingang 0 auszuwählen 0. ‘]’ erhebt die Chip-Select-Leitung, um die SPI-Transaktion zu beenden. ‘D’ nimmt eine Spannungsmessung an und zeigt an, dass die Eingabe 0 mit 0 Gewinn 2,4 VOLTS beträgt.
Wir können die Eingangsspannung nicht über die Stromversorgung hinaus verstärken (2.4volts * 2 = 4.8, 4.8volts> 3.3volts), sodass wir in einen niedrigeren Kanal wechseln müssen, um mit den Verstärkungsfunktionen zu spielen.
Raw3Wire> [0B01000001 4] D
Cs aktiviert
Schreiben: 0x41 <-Change Input Channel-Befehl
Schreiben Sie: 0x04 <-Change an Kanal 4
Cs deaktiviert
Spannungssonde: 0.8volt <-Vout-Spannungsmessung
Raw3wire>
Eine Messung auf Kanal 4 zeigt einen Ausgang von nur 0,8 Vielen, viel Raum, um die Verstärkungsmerkmale des Chips zu testen.
Raw3Wire> [0B01000000 0B00000001] D
Cs aktiviert
Schreiben: 0x40 <-Change Gain-Befehl
Schreiben: 0x01 <-Gain-Einstellung (x2)
Cs deaktiviert
Spannungssonde: 1.6Volts <-Vout ist jetzt 0,8 volts * 2
Raw3wire>
Eine Zwei-Byte-Sequenz legt den Verstärkungsbetrag fest. Der Befehl 0b01000000 (0x40) adressiert das Verstärkungsregister, das zweite Byte stellt den Multiplikationsfaktor (0x01 = Verstärkung von 2) ein. Die Einstellung der Verstärkung auf 2 multipliziert die Ausgangsspannung um 2, 0,8 VOLTS * 2 = 1,6volts.
Raw3wire> [0B01000000 0B00000010] D
Cs aktiviert
Schreiben: 0x40 <-Change Gain-Befehl
Schreiben: 0x02 <-Gain-Einstellung (x4)
Cs deaktiviert
Spannungssonde: 3.2Volts <-Vout ist jetzt 0,8 volts * 4
Raw3wire>
Diesmal haben wir einen Gewinn von 4, 0.8VOLTS * 4 = 3,2Volts eingestellt.
Raw3Wire> [0B01000000 0B00000011] D
Cs aktiviert
Schreiben: 0x40 <-Change Gain-Befehl
Schreiben: 0x03 <-Gain-Einstellung (x5)
Cs deaktiviert
Spannungssonde: 3.3Volts <-nicht genug, um 0,8 Vielen
Raw3wire>
Die maximale Ausgangsspannung ist die Stromversorgungsspannung des Chips. Wenn wir den Verstärket auf 5 einstellen, kann die Ausgangsspannung die Stromversorgung von 3,3VOLTS (0,8 VOLTS * 5 = 4VOLTS, 4VOLTS> 3,3VOLTS) nicht überschreiten.
Raw3Wire> [0B00100000 0] D
Cs aktiviert
Schreiben: 0x20 <-Sleep-Befehl
Write: 0x00 <-don't Care Byte
Cs deaktiviert
Spannungssonde: 0.0Volts <-Output ist deaktiviert
Raw3wire>
Der MCP6S26 verfügt über einen stromsparenden Schlafmodus. Herunterfahren des Chips mit dem Befehl 0x20, gefolgt von einem beliebigen Byte-Wert. Lassen Sie den Schlaf, indem Sie einen gültigen Befehl senden.
Wie dieser Beitrag? Schauen Sie sich die Teilepfosten an, die Sie möglicherweise vermisst haben. Möchten Sie einen Teilpfosten anfordern? Bitte hinterlassen Sie Ihre Vorschläge in den Kommentaren.