PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : MCP4151 100k



Malec
11.05.2015, 09:47
Moin, kennt sich jmd mit den DigitalPoti MCP4151 in 100k aus ?
ich versuche den zu Programmieren in 8 Bit also nur Inc und Dec (In Inc und Dec sollen nur 8 Bit gesendet werden)

Sendbyte 0000100 //000Adr / 01Inc /00Data
Sendbyte 0001000 //000Adr / 10Dec /00Data

Hierbei verstehe ich die beiden letzten zwei Bits nicht. (Data)

Wenn ich damit sende sehe ich am Oszi das der Pegel von 0 bis 2,5 Volt ansteigt bei 128 steps, danach ist schluss,
erst wenn ich ca 254 steps Inc gemacht habe, springt der schleifer von 2,5Volt auf zack zack 5 Volt.???

bei diesen Chip kann man doch nicht 7bit oder 8bit auflösung einstellen oder ?

mfg

PICture
11.05.2015, 10:53
Moin,

man muss nur genauen Typ von Bauteil wissen (jedes Zeichen ist wichtig) und seine Beschreibung bzw. Datenblatt lesen und verstehen können: http://www.microchip.com/wwwproducts/Devices.aspx?product=MCP4151 . ;)

Malec
11.05.2015, 11:41
Hallo PICture,
Den habe ich bei reichelt gekauft.
MCP 4151-104E/SN :: Digital Potentiometer,256 steps,1-Kanal,SPI,SO-8
Und wenn die das hinschreiben, denke ich doch das der 256 steps hat.

Direkt auf dem Chip steht 4151104E

mfg

Peter(TOO)
11.05.2015, 14:44
Hallo,

Den habe ich bei reichelt gekauft.
MCP 4151-104E/SN :: Digital Potentiometer,256 steps,1-Kanal,SPI,SO-8
Und wenn die das hinschreiben, denke ich doch das der 256 steps hat.

Direkt auf dem Chip steht 4151104E

Was der Verkäufer schreibt ist egal, massgebend ist was der Hersteller schreibt ;-)

OK, das 4151 hat laut Datenblatt 257 Steps und 104 = 104 = 100kOhm

Du scheinst also das Richtige erwischt zu haben.

Zudem werden die Daten in einem RAM gespeichert, die aktuelle Einstellung geht also bei einem Spannungsverlust verloren.



Sendbyte 0000100 //000Adr / 01Inc /00Data
Sendbyte 0001000 //000Adr / 10Dec /00Data

Hierbei verstehe ich die beiden letzten zwei Bits nicht. (Data)
Sollte wohl
Sendbyte 00000100 //0000Adr / 01Inc /00Data
Sendbyte 00001000 //0000Adr / 10Dec /00Data
sein.

Data hat bei INC und DEC keine Bedeutung und sollte wohl auf 00 gesetzt werden.

Bei Read (00) und Write (11) enthält Data Bit 10 und Bit 9. Da aber bei den aktuellen Chips maximal 9 Bits verwendet werden ist Bit 10 immer 0.
Gültige Werte für Data sind also nur 00 und 01.
Dann musst du aber 16 Bit senden und nicht nur 8.

MfG Peter(TOO)

PICture
11.05.2015, 14:45
Ich habe das dicke Datenblatt (eher Datenbuch) von Reichelt runtergeladen und durchgeflogen aber keine Lösung deines Problems gefunden._.

Vermutlich werden zwei Widerstandnetzwerke softwaremässig konfiguriert wie auf dem Bild "Figure 5-1" auf der 37. Seite gezeigt. Vielleicht findest du etwas auf der 63. Seite des Datenblattes angegebener Literatur "Divelopment support", weil mich das schon nicht mehr interessiert ?

Malec
11.05.2015, 16:26
Peter(TOO)
ich Danke dir, habe den fehler gefunden, jetzt gehts 100%
war ein blöder fehler von mir :-)

mfg malec

021aet04
12.05.2015, 06:28
Und was war der Fehler? Vielleicht hilfreich für andere die mit diesem Probleme haben.

MfG Hannes

PICture
12.05.2015, 07:49
Ich denke, dass es das war, bin aber nicht sicher:


Dann musst du aber 16 Bit senden und nicht nur 8.

Malec
13.05.2015, 04:45
Moin, ne ne es war meine Hardware, hatte mit Software nichts zu tun.
das teil ist sehr einfach zu Programmieren.


mfg malec