Forum: Mikrocontroller und Digitale Elektronik Hat schonmal einer ein Opel TID ->erfolgreich<-angesteuert ?


von Dennis Brücke (Gast)


Lesenswert?

Hi @all,

ich versuche jetzt schon seit Tagen ein Opel Display von einem
bekannten anzusteuern... laut www.carlucio.de wird das ganze mit I2C
Specs gemacht... nur leider komme ich über die Initialisierung des
Display einfach nicht Hinaus :(

Hat schonmal jemand dieses Display angesteuert und könnte mir evtl.
auszüge vom Source geben in ASM

Ich will nicht abkupfern sondern einfach den Unterschied zu meinen
Routinen finden, da ich mit meinen I2C Routinen bereits EEPROM
ansteuer, gehe ich einfach davon aus das diese auch für das Display
gehen... aber irgendwo da muss der fehler liegen... da timings und
reihenfolge alle eingehalten werden... :( Es kann nur noch am I2C
liegen

Gruß & Danke Dennis

von Christian (Gast)


Lesenswert?

Ich hab das mal vor einiger Zeit versucht. Bin kläglich gescheitert.
Soweit ich das noch weiß war das kein direkter I2C-Bus sondern
irgendeine Abart. War da nicht noch ne dritte Ader im Spiel ?

von Dennis Brücke (Gast)


Lesenswert?

Ja genau ->MRQ<- Master Request ... irgendwas...

Master              -> MRQ Low
Slave antwortet mit -> SDA Low
Master              -> sofort MRQ High

I2C Start

Master schreibt adresse

dann MRQ wieder LOW für die dauer der Datensendung
dann MRQ wieder High

I2C Stop

Fertig...

war mal so die kurzfassung...

aber es will einfach nicht... :(

von Stefan Heindel (Gast)


Lesenswert?

Hallo,

ich habe das schon erfolgreich gemacht und kenne wirklich alle Infos.
Ich habe daraus einen Bordcomputer gebastelt.
Wenn ich dazu komme, werde ich die ganzen Informationen und Baupläne
dazu online stellen.

Weitere nützliche Tipps: www.eelkevisser.nl

Grüße

Stefan

von Oliver (Gast)


Lesenswert?

Moin Stefan,

habe auch schon damit getestet, aber auch wie Dennis zu keinem
Ergebnis gekommen. Habe hier das TID in einem Corsa B, extra
ein zweites TID zum testen gekauft (5,- &#8364;).

Wenn Du Deine Infos hier oder auf einer HP bekannt geben würdest, wäre
das echt super ..

Ich will damit die Bordspannung und Innen-Temp anzeigen.

mfg
Oliver

von Dennis Brücke (Gast)


Lesenswert?

Hi Oliver,

wie weit bist Du gekommen mit deinem Display ?
Hast Du direkt mit I2C gearbeitet ?
Welche Adresse hast Du genommen um das Display anzusprechen ?
In welcher Programmiersprache hast Du gearbeitet ? Vieleicht können wir
mal Sourcen austauschen...

Was mir leider fehlt ist ein I2C Logger... sonst hätte ich mir das
ganze mal mit dem Radio zusammen angeschaut....

Gruß Dennis

@Stefan,

es würde auch schon völlig reichen wenn Du mal den Source Online
stellst der nur für das Ansprechen des Display ist... den rest kann man
sich selber machen ;)

Ansonsten würde mir erstmal das Detail reichen ob es wirklich I2C Bus
mit der zusätzlichen Ansprechung von MRQ ist, oder ob auch am I2C
direkt was geändert ist...

von Stefan Heindel (Gast)


Angehängte Dateien:

Lesenswert?

I2C kannste knicken. Das Protokoll sieht zwar vielleicht ein bischen
so aus wie I2C, aber reagiert sehr kritisch auf timings.

Anbei ist der Sourcecode. Du musst lediglich nur noch eine
Delay-Funktion bauen, die genau 100µs verzögert.

Der Rest ist recht selbsterklärend, denke ich.

Viel Spaß, und berichte mal, ob es geklappt hat.

Grüße

Stefan

von Dennis Brücke (Gast)


Lesenswert?

Hi Stefan,

danke für deine Antwort. Mir ist aufgefallen (oder hab ich es
übersehen)
das Du das Display gar nicht Initialisierst (ausser kurz MRQ Low) Ist
die Init Sequenz ganz am Anfang etwa nur für das Radio (eine leitung
nach der anderen geht kurz auf Low)

Gruß Dennis

von Stefan Heindel (Gast)


Lesenswert?

Durch diese Testsequenz kann das TID afaik feststellen, ob Leitungen im
Kabelbaum kurzgeschlossen wurden, welche miteinander verbunden sind
(für jede mögliche Kombination aus den Drähten SDA, MRQ, SCL, GND, und
"+" gibt es einen Fehlercode).

Lange Rede kurzer Sinn: Das ganze ist nicht notwendig, um das Display
anzusteuern.

von Dennis Brücke (Gast)


Lesenswert?

Hi Stefan,

ich danke Dir auf jedenfall... also wenn ich das Richtig verstanden
habe ist es vom Prinzip her I2C mit zugesetzten Warteschleifen von
100us oder ?

Hätte ich es mal gleich selbst geschrieben und mich nicht zu sehr auf
die I2C Routinen beschränkt(verlassen)...

Gruß Dennis

von Dennis Brücke (Gast)


Lesenswert?

@Stefan,

kann es sein, das das Display immer wieder "Refreshed" werden muss
(anzeige ist nach einer weile wieder Blanked) oder hab ich evtl.
Datenmüll noch zu liegen?

Gruß Dennis

von Stefan Heindel (Gast)


Lesenswert?

Jupsen, das TID sendet einen "Slaverequest", und zieht MRQ für ~100µs
kurz auf low - wenn dann keine Daten kommen, dann wird das Display
geleert. Ich achte darauf aber nicht, sondern refreshe es so alle
1/10s. - Klappt wunderbar, und es gab noch nie Probleme.

von Oliver (Gast)


Lesenswert?

@Dennis

Ich habe mit Bascom gearbeitet und M16. Wenn ich hier aber lese, dass
das Standard I2C Verfahren eh nix taugt, muss ich das eh noch mal
überdenken.
Ich muss auch noch 2 SMD Transis tauschen, die waren abgeraucht vom
Vorgänger, dies hatte ich aber erst später bemerkt.

Ein Autoradio hätte ich noch liegen, um den Bus zu belauschen, dafür
aber keine Messmittel.
Vorallem die Info vom Stefan (30.01./21:11) war mir neu !!

mfg
Oliver

von Dennis Brücke (Gast)


Lesenswert?

Hi Oliver,

also mit den Routinen von Stefan geht es (besten dank nochmal) ich setz
mich heute oder morgen nochmal hin und suche die unterschiede zum I2C
Bus raus. Möchte das ganze noch Informativ zusammen packen.

Kannst dich ja mal direkt melden, mit Bascom hab ich zwar nicht so viel
erfahrungen (Nur ASM) aber ich denke mal zusammen sollten wir auch das
hinbekommen.

Gruß Dennis

von Dennis Brücke (Gast)


Lesenswert?

Hi Oliver,
Hi Stefan

habe mich wie versprochen an die Routinen rangesetzt und verglichen,
das Display reagiert auch auf I2C allerdings viel langsamer (habe nen
Delay von 200µS) I2C Start sollte sauber sein und nicht erst von einem
vorherigen I2C Stop gestört sein. (War bei meinen I2C Routinen so, was
ja grundlegend nicht verkehrt ist...)

Meine Clock Impulse arbeitet derzeit mit CLK High 200µS CLK Low 400µS
wunderbar.

Gruß Dennis

von michael (Gast)


Lesenswert?

was ist opel? kann man das essen?

von Dennis Brücke (Gast)


Lesenswert?

@Michael,

[SAKASMUSSON)
wenn Du später mal deinen Führerschein machst und dich das erstemal mit
den Großen Autos beschäftigst, wirst auch begriffe wie: Audi, Ford, VW,
Opel etc... kennenlernen... ;)
[SAKASMUSSOFF]

Gruß Dennis

von Martin S. (Gast)


Lesenswert?

schon mal auf deser Seite geschaut?

http://www.carluccio.de/index.php?page=pro-tid

von Dennis Brücke (Gast)


Lesenswert?

@Michael S.

schau mal auf den ersten eintrag in diesem Thread ;)

Gruß Dennis

von TIDLER (Gast)


Lesenswert?

@dennis  Hast du das Projekt schon gertig? Würde mich sehr dafür
interesieren. Kannst du mal die Hard und Saftware ins Forum stellen?

von Brücke, Dennis (Gast)


Lesenswert?

ts..ts..ts... wo bleibt den da der Lerneffekt ;)

Spaß bei Seite ja die Ausgabe auf dem Opel Display tut ohne Probleme.
Wie gesagt es ist I2C Protokoll mit geändertem Timing + Zusatzleitung.
Zur verfügung stellen kann ich leider das ganze noch nicht, da es wohl
kaum für jemanden lesbar ist... ;) Muss noch alles kommentiert
werden... aber Hilfestellung gebe ich dir gerne.

Gruß Dennis

von TIDLER (Gast)


Lesenswert?

Was für einen Controller hast du verwendet?
Ich möchte auf mein TID die Drehzahl anzeigen (Corsa B hat keinen
Drehzahlmesser).
Wie sieht die Schaltung aus??
In welcher Sprache hast du ihn geprogt (ASM, Bascom, C )?

von seek1 (Gast)


Lesenswert?

Würde mich auch interesieren. Wo bekommt man so ein TID billig?
Schrotthändler???
Ebay haben sie nur diese Umbaukits.

von Brücke, Dennis (Gast)


Lesenswert?

Meld mich wenn ich at home bin. Gegen 22.00 Uhr

von Dennis Brücke (Gast)


Angehängte Dateien:

Lesenswert?

@Tidler,

Als Controler hab ich einen AtMega8 genommen, ist so mittlerweile
mein lieblings µC geworden. Das Protokoll für den OpelTID ist ziemlich
genau I²C nur das die Timings wie gesagt verändert sind das
Pausenverhältnis ist ein anderes. Bisher hab ich es nur mit Software
I²C hinbekommen und nicht mit dem Hardware I²C vom AVR. Programmiert
hab ich das ganze in ASM. Im Anhang mal ein Bild vom Drezahlmesser.

@Seek1,

schau mal bei Ebay bzw. bei nem Schrotti die Verkaufen die Dinger auch
recht günstig.


Gruß Dennis

von sakas (Gast)


Lesenswert?

Hast du auch nur Dioden benutzt, um das Display seitens I2c anzuzapfen,
wie Eelke Visser? Oder hast du noch Bustreiber eingesetzt?

Das Geschwindigkeitssignal ist ja schon am TID vorhanden (corsa B 95),
oder? Muss mann ja nur noch den Impulsegeber der Nockenwelle drauf
führen. Wie hast du den Impulsgeber auf den Atmel angeschlossen?

Eine Schematic der Schaltung wäre sehr interresant, und hilfreich.

von seek1 (Gast)


Lesenswert?

Hat der impulsgeber nicht 12V ?

von Dennis Brücke (Gast)


Lesenswert?

@seek1,

Ich hab es einfach an der Zündspule Primärseitig abgegriffen (12V) aber
man darf nicht vergessen, das im Abschaltmoment bis zu >100V
Spannungsrückschläge entstehen können.

von Nethacks (Gast)


Lesenswert?

Könnte hier irgendwer eine Schaltung oder ein Layout posten, den ich bin
in solchen Sachen nicht so geschickt

von tideler (Gast)


Lesenswert?

Auf http://www.eelkevisser.nl/tacho.htm gibt es eine PCB und schematic.
mit einem PIC .

Ist die schaltung mit der Zündspulen methode kompatibel??

von Mark Müller (Gast)


Lesenswert?

Richtig. Das Tachosignal liegt am TID selbst an. Das kann geprüft werden
indem man die beiden Tasten am Rande gleichzeitig für ein paar Sekunden
festhält. Bei Fahrt bis 50 km/h zeigt das TID von selbst die
Geschwindigkeit an. Notwendig ist dieser Wert zur Ermittlung der
tatsächlichen Außen-Temperatur, Geschwindigkeitsveränderungen würden
eine Art Wind-Chill und zu einer Abkühlung des Temperatur Sensors
führen. Kompensiert wird das ganze von einem µC.

von Brücke, Dennis (Gast)


Lesenswert?

@tideler,

ja die schaltung kann so übernommen werden es funktioniert.
Allerdings ist es nicht die eleganteste methode da es keinerlei
galvanische trennung zum AVR gibt, sollte doch mal irgendwas nicht
stimmen, können wie gesagt bis zu >100V zurückschlagen...

Ich habe das ganze mit nem Transistor und nen Optokoppler erweitert um
einfach auf nummer sicher zu gehen.

Gruß Dennis

von Seek1 (Gast)


Angehängte Dateien:

Lesenswert?

Habe mal eine Eagle schematic vom Visser PCB erstellt.
Habe es so gebaut, das man es ohne Mühe zwischen Autostecker und TID
Stecker reinstöpseln kann.
Braucht nur noch die Primärseite von der Zündspule nachverdrahtet
werden.

Würde mich gerne über Verbesserungen freuen.

von Seek1 (Gast)


Angehängte Dateien:

Lesenswert?

So und noch ein Board dazu, für die Denkfaulen. Das von Visser war mir
einfach zu gross.

von Nethacks (Gast)


Lesenswert?

Wie sieht die Schaltung mit dem Optokoppler aus??

von Seek1 (Gast)


Lesenswert?

Wäre bitte jemand so freundlich und könnte meinen Stromlaufplan
kontrollieren. Im Dankeschön voraus


X Augen sehen mehr als zwei, ausserdem habe ich kein TID an dem ich es
testen könnte. Muss die erste Schaltung dann gleich "scharf" ans TID
hängen

von Seek1 (Gast)


Angehängte Dateien:

Lesenswert?

Da sieht man wieder, das das kontrollieren die Leute interesiert.
Einfach nur blind nachbauen. Jetzt kann ich verstehen das Dennis und Co
die Schaltung nicht veröffentlicht haben.

Anbei die korrekte Schaltung. Bei der vorigen wären schlechtestensfalls
der PIC und der Spannungsregler abgehoben.

Bitte trotzdem nochmals kontrollieren. Vor allem ob die
durchverbundenen Pfostenleisten richtig zusammen geschlossen sind.

von tideler (Gast)


Angehängte Dateien:

Lesenswert?

Ich traue seek1 nicht über den Weg. Ich nehme die originale schaltung

von Dario Carluccio (Gast)


Lesenswert?

Also ich habe das zwar nicht nachgebaut, sondern selber gebaut, aber bei
Fragen kann man sich trotzdem gerne an mich wenden. Nun zur Schaltung
von Seekl:

Also da Du die Stecker ja nicht beschriftet hast und ich auch nicht
weiss was für ein Auto Du hast, kann ich natürlich keine verbindliche
Aussage darüber treffen, ob das so geht oder nicht.

Aber im Prinzip sieht es gut aus:

      Radio        TID    Deine Schaltung
SCL     O           O-----------O
SDA     O           O-----------O
MRQ     O           O-----------O
GND     O-----------O-----------O
+12V    O-----------O-----------O
Rest    O-----------O

Aber ich habe für die drei Leitungen MRQ, SDA und SCL jeweils zwei
Pins beim Controller verbraten, einen für Input und einen für Output.

Das sieht dann ungefähr so aus:

SDA O---------+-------RRRRRRR-------O Pin 1 (SDA In)
              |
              |
               \|
                |-----RRRRRRR-------O Pin 2 (SDA Out)
               /|
              |
              |
GND O---------


Ansonsten sehe ich keinen Fehler.


Bye, Dario.

--
Erwerbsregel #33
Es ist nie verkehrt, sich bei seinem Boss einzuschmeicheln.

von Seek1 (Gast)


Lesenswert?

Der Stecker IN kommt vom Auto. Der Stecker OUT geht zum TID.
Laut meinem Recherchen ist beim 8stelligen TID mit 10 Pins bei ein paar
Modellen nur das Tachosignal und/oder die Temperatur nicht ausgeführt.
Darum habe ich mal das Temperatur/tachosignal durchgeschleift.

von Dario Carluccio (Gast)


Lesenswert?

Hallo Seekl,

In dem Schaltplan steht nirgends, dass Du ein 8-Stelliges TID hast.
Und ich habe weder Sandelen an, noch wächst mir Gras aus den Taschen.
Mit anderen Worten ich bin nicht Jesus und kann nicht hellsehen.

In dem Fall der Steckerbelegung kann ich Dir leider nicht helfen, denn
alle 8-Stelligen TIDs die ich bisher gesehen habe haben eine andere
geometrische Anordnung der Kontakte als auf Deinem Schaltplan.

Auf meiner Seite, oder http://carluccio.de/images/pro-tid-pic2.png
siehst Du wie die Kontakte bei mir angeordnet sind nämlich:

 1  2  3  4  5  6
 7  8  9 10 11 12

Und Deinem Schaltplan entnehme ich:

 2  4  6  8 10 12
 1  3  5  7  9 11

Das stimmt nicht überein und daher kann es gut sein, dass Die
Pinbelegung nicht stimmt. Da hilft es nur messen oder die Kabelfarben
mit denen auf meiner Seite zu vergleichen.

Was anderes: Hast Du das mit dem In/Out auf zwei unterschiedlichen
             Pins des µC verstanden?

Bye Dario


--
Computer setzen alles logische Denken mechanisch fort.
Unlogisches auch.

von Brücke, Dennis (Gast)


Lesenswert?

@seek1,

hi du, das hat nicht viel mit "Nicht Veröffentlichen wollen" zu tun,
sondern viel mehr mit der Tatsache das die Daten für mich zur zeit
einfach nicht zugänglich sind. Ich werde am Wochenende mal das gesamte
Layout und die Ansteuerroutine in ASM Posten.

@Dario,
Steht das Angebot eigendlich noch, das wir die Sourcen und ne Erklärung
bei dir noch mit auf die Seite machen ?

Gruß Dennis

von seek1 (Gast)


Lesenswert?

Das mit den zwei Pins habe ich verstanden.

Die Belegung ist 1 2 3 4  5  6
                 7 8 9 10 11 12

Habe mich in Eagle verdan und einen Jumperblock statt einer doppelten
Stiftleiste benützt. Das liegt daran das ich kein Lib nicht finde, das
eine doppelte Stiftleiste enthält.

von Brücke, Dennis (Gast)


Lesenswert?

@seek1,

schau doch mal in der LIB "pinhead" 2x6

von seek1 (Gast)


Lesenswert?

Könntet ihr mir mal ein Photo vom TID stecker + Sockel machen.
Oder Past eine normale 2 * 6 Stiftleiste (+ Buchse)

von seek1 (Gast)


Lesenswert?

Nochwas: Ist beim TID hinten drauf eine Buchse, oder eine Stiftleiste
raus.

von Brücke, Dennis (Gast)


Lesenswert?

@seek1,

stiftleiste ;)

von MAX (Gast)


Lesenswert?

Dennis: Und was ist ASM?

von seek1 (Gast)


Angehängte Dateien:

Lesenswert?

Ich denke mal Assembler Code, oder?

Habe das Board nach Visser noch mal überarbeitet. Jetzt (hoffentlich)
ohne Fehler. PIC basierend. Die Belegung der Lötpads kommt noch
nachgereicht

von seek1 (Gast)


Angehängte Dateien:

Lesenswert?

Und die Schematik. Plus und Minus kann mann sich jetzt schon mal denken,
was für Pads sie sind

von Dario Carluccio (Gast)


Lesenswert?

@Dennis
Klar steht das Angebot.
Wir können Sourcen, eine Erklärung und gerne auch Eure Kontaktadressen
(letzters nur wenn Ihr das wollt) auf meine Seite packen.

Ich habe leider nicht viel Zeit, aber wenn Ihr mir die Doku und den
Kram alles schickt, werde ich mich bemühen das zeitnah einzubauen.

@seek1
Ein Tip: Wenn Du das TID nicht mal ausbaust und selber dran rum
bastelst, oder Dir eines vom Schrott kaufst wird das nix. Du wirst
es nicht schaffen, den Controller zu programmieren und alles
funtioniert auf Anhieb beim ersten Versuch.

Und nur dann kannst Du Dich darauf verlassen, was für ein Stecker
an Deinem TID dran ist. Es gibt viel zu viel unterschiedliche Modelle
und zu beschreiben, wie der Stecker genau aussieht ist nicht leicht.

Bye Dario.

--
Erwerbsregel #8
Kleingedrucktes führt zu grossem Risiko.

von eSBeO (Gast)


Angehängte Dateien:

Lesenswert?

Im Anhang stelle ich den Steckverbinder des DID/TID/MID als
Eagle-Library zur Verfügung.

eSBeO

von eSBeO (Gast)


Lesenswert?

Nachtrag:
Nutzung der "OpelXID.lbr" natürlich auf eigene Gefahr.
Fehler bitte hier posten.

eSBeO

von Dario (Gast)


Lesenswert?

Ach so ein bild von dem Stecker am 10-Stelligen TID und meiner selbst
gebastelten Lösung findet Ihr hier:

http://splashblog.com/treocrypt/default.aspx?preview=72838

Schöne Grüsse,

Dario

--
Es gibt drei Arten von Frauen:
die schönen, die intelligenten und die Mehrheit.
Rainer Werner Fassbinder

von VW_GOLF_GTI_RULES (Gast)


Lesenswert?

Wer scheissen frist und Popel kaut, vertraut auf das was Opel baut

von Dennis Brücke (Gast)


Lesenswert?

@VW_GOLF_GTI_RULES,

ich fahr zwar nen Audi, schaffe es aber dennoch mich mit solchen
unqualifizierten 9. Klassen Sprüchen zurückzuhalten...

von seek1 (Gast)


Lesenswert?

Wo soll ich das Signal für die Drehzahl abgreiffen?
Habe Corsa B Bj95 1,4i X14XE

Hinterm Tacho liegt angeblich schon ein Draht, der für die
Drehzahlanzeige vorgesehen. Möchte mir aber ersparen den Tacho
auszubauen.

1. Möglichkeit : der Impulsgeber der Nockenwelle
Er hat drei Anschlüsse laut Plan. A B und C. Welchen benützen???


2. Möglichkeit : die Primärseite der Zündspule, laut Plan hat die aber
3 Primärseitige Anschlüsse . Sie heisen BKYE1 (Pin4) und BKRD1(Pin3) .
Pin 1 hat keine Bezeichnung

Habe das originale Programm von Eelke Visser, und auch die originale
Schaltung. Habe nur einen Optokoppler und eine Zehnerdiode zur
Sicherheit rangebastelt.

von Tim (Gast)


Lesenswert?

Das Drehzahlsignal liegt bei den älteren Opels an Klemme 1 der Zündspule
an. Falls an Klemme 1 deiner Zündspule ein grünes Kabel ist, dann kannst
du dort das Signal abgreifen. Oder eben doch hinter dem Tacho oder am
Steuergerät (jeweils immer grünes Kabel).

von Brücke, Dennis (Gast)


Lesenswert?

@seek1,

also wenn mein KFZ-Mensch sich nicht geiirt hat, würde ich das Signal
auch an der Zündspule (Primärseitig) abgreifen, bzw. über das Zündkabel
ein paar umwicklungen mit Draht machen, und das ganze Induktiv
abgreifen.

Der Impulsgeber an der Nockenwelle liefer laut meinen KFZ-Menschen ein
Rechtecksignal (Treppenstufig???)

Gruß Dennis

von master.andre (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute,
bin grad durch zufall auf hierauf gestossen. Habe das vor ca. einem
Jahr schonmal in zusammenarbeit mit Eelke auf AVR umgesetzt. Habe
damals Bascom dafür benutzt, wobei ich im Endeffekt sagen muss das es
wirklich nicht die beste Wahl dafür wahr. Wirklich ne verdammt
kniffelige sache gewesen. Wenn ich mich richtig erinnern kann musste
ich mir damals dafür auch noch nen überarbeitet I2C Library für Bascom
runterladen. Da ich die Postings nur überflogen habe bin ich lieber
still. :) Im anhang befindet sich der Teil meiner Arbeit der noch
aufzufinden war, da mir leider die folienleitung zum display gerissen
ist und ich das projekt danach auf einem anderen Display weitergeführt
habe.
Naja viel erfolg damit (wenn es jemand braucht).
mfg Andy

von Combi-Fan (Gast)


Lesenswert?

Obwohl ja Opel nicht meine Wellenlänge ist, wäre es toll wenn ma jemand
hier postet wenn ihr die Sourcen auf Darios Seite gepackt habt.

von Holtenpilsener (Gast)


Lesenswert?

Habe Seek1's board nachgebaut, funktioniert super.
Könnte mir bitte irgendwer das Programm von elke viser so umschreiben,
das es auf einem PIC16F628 läuft?? Bitte.
Habe soviele herumliegen, die ich dafür einsetzen könnte. Ausserdem
haben die Brown out detect.



Wen mir bitte jemand das Programm umschreiben könnte wäre ich sehr
dankbar.

von seek1 (Gast)


Lesenswert?

Wist ihr, wie mann statt Welcome einen anderen Text reinschreibt ??

movlw H'40'  ist eine leere Stelle.

AE 8A 98 86 9E 9B 8A  heist Welcome


Was heist zb. Servus???   Was für ein Format ist das? Hex auf jedemfall
nicht. Wo gibt es eine Zeichentabelle?????

von Bob (Gast)


Lesenswert?

Schreib doch mal die zeichen in eine tabelle und füll den rest sinnvoll
aus, also e=8A f=8b usw

von Marco Geisler (Gast)


Lesenswert?

die Bits 1-7 sind die ASCII-Tabelle, Bit 0 ist das Parity-Bit.

so hab ich das zumindest in Erinnerung.

von seek1 (Gast)


Lesenswert?

Das ergibt keinen Sinn. Hab ich schon probiert. Ausserdem kann ich Hex
werte nicht 100% astrein.

von Marco Geisler (Gast)


Lesenswert?

'W' -> ASCII 0x57 -> 101.0111
Parity ist 0 ->
1010.1110 (letzte Bit ist Parity) -> 0xAE

von Bob (Gast)


Lesenswert?

na was passiert denn wenn du die beiden 8A gegen 8B tauschst?

von eSBeO (Gast)


Lesenswert?

@seekl
Also das sieht schon komisch aus.

Bei mir ist "E": 0x45
            "S": 0x53
            "B": 0x42
            "E": 0x45  (logisch)
            "O": 0x4f
    Leerzeichen: 0x20

Und angezeigt wird auch "ESBEO"

Du hast jeweils den doppelten Wert (Bedenke: Hexadezimal)

eSBeO

von eSBeO (Gast)


Lesenswert?

Mist, zulange gebraucht.
Das Parity-Bit ist es.

eSBeO

von seek1 (Gast)


Lesenswert?

Habe jetzt folgendes probiert:

  movlw H'01'    ; WELCOME
  call Sendi2c
  movlw H'01'
  call Sendi2c
  movlw H'53'           ;S
  call Sendi2c
  movlw H'8A'           ;E
  call Sendi2c
  movlw H'52'           ;R
  call Sendi2c
  movlw H'86'           ;C
  call Sendi2c
  movlw H'9E'           ;O
  call Sendi2c
  movlw H'53'           ;S
  call Sendi2c
  movlw H'40'           ;leer
  call Sendi2c
  movlw H'40'           ;leer
  call Sendi2c


Und siehe dar :  Statt Welcome steht !gar nichts! mehr
                 Die Anzeige wechselt gleich auf XXXX RPM

Bitte gebt mir den fertigen Code, für "Servus". Könnte von mir aus
auch gerne 4 Sekunden lang drauf stehen, statt 1er.

von Holtenpilsener (Gast)


Lesenswert?

Oder bitte überhaupt auf PIC16f628 umschreiben

von Seek1 (Gast)


Lesenswert?

So einfach brauchst du dirs auch nicht machen Holtenpilsener.
Ich bin auch nicht umbedingt in dieser Materie aufgewachsen, aber ich
probiere wenigstens so lange herum, bis ichs hab.

von eSBeO (Gast)


Lesenswert?

Hallo Seekl,
 Probieren bringt hier nicht viel.

 Mache Dir zunächst den Begriff Parität klar. Helfen kann da:
http://www.google.de/search?hl=de&q=define%3A+parit%C3%A4t&meta=
define: parität - Google-Suche

Dann musst Du Dir Deine Zeichen aus einer Ascii-Tabelle suchen und das
Paritätsbit ermitteln.

Ich mache das mal für die Buchstaben "F" und "G":
"F" hat den ASCII-Code 46, "G" hat den ASCII-Code 0x47.
Mit dem Windows- Taschenrechner (Ansicht auf "Wissenschaftlich")
kannst Du das jetzt in Binärcode umrechnen und erhältst für "F"
01000110 und für "G" 01000111. Jetzt zählst Du die Einsen. Ist die
Anzahl ungerade, wird das Paritätsbit gesetzt, und wenn nicht,
gelöscht.
Das Paritätsbit ist das Bit 7, welches für darstellbare Zeichen immer
gelöscht ist. Für "F" wird das Bit jetzt gesetzt, und für "G"
bleibt es gelöscht.
Für "F" musst Du also 0b11000110 und für "G" 0b01000110 an das
Display schicken. (Die Umrechnung in Hexadezimale Schreibweise kann
wieder mit dem Windows- Taschenrechner erfolgen). Dieses Spiel machst
Du am besten in Form einer Tabelle für alle Deine Buchstaben (Das TID
kann nur Grossbuchstaben).

Also dann viel Erfolg
eSBeO

von Marco Geisler (Gast)


Lesenswert?

@eSBe0:
schön erklärt :)

Aber mein TID im Vectra kann auch Kleinbuchstaben.
zu sehen unter http://www.lrz-muenchen.de/~geislerm

von eSBeO (Gast)


Lesenswert?

@Marco Geissler
Ich meinte eigentlich das 8-stellige TID.
Schöne Seite übrigens. Wo am Motor willst Du den Temperatursensor
einschrauben?

@seekl
Hast Du schon Deinen Text ausgegeben?

eSBeO

von Seek1 (Gast)


Lesenswert?

Nein bin nicht weiter gekommen.

S   ist hex 53   ist binär 01010011     -> 4 Einser
E   ist Hex 45   ist binär 01000101  -> 3 Einser
R   ist Hex 52   ist binär 01010010   -> 3 Einser
V   ist hex 56   ist binär 01010110  -> 4 Einser
U   ist hex 55   ist binär 01010101  -> 4 Einser
S   ist hex 53   ist binär 01010011  -> 4 Einser

Also gehört bei E und R das Paritätsbit gesetzt.

welches bit ist das zb. bei E

01000101 -> 01000111 ???

von Brücke, Dennis (Gast)


Lesenswert?

@Seek1,

hi das Paritätsbit ist immer das 7. Bit (ganz Links)
wenn du binär 00000111 hast, dann muss das Parity gesetzt werden,
also von 00000111 -> 10000111

Also bei einem "E" währe das
01000101 -> 11000101

Gruß Dennis

von Seek1 (Gast)


Lesenswert?

Aso , ich glaube ich habe es verstanden

R   ist Hex 52   ist binär 01010010   -> 3 Einser -> 11010010 -> d2

von eSBeO (Gast)


Lesenswert?

So ist es.

eSBeO

von Seek1 (Gast)


Lesenswert?

Habe es jetzt probiert, und siehe da: Es funktioniert

von Marco Geisler (Gast)


Lesenswert?

@eSBe:
der Sensor steckt statt der Ölablassschraube drin.

Aber ich glaub trotzdem dass das Parity-Bit das LSB ist, oder täusch
ich mich da???

von Holtenpilsener (Gast)


Lesenswert?

Habe mich jetzt selbst bemüht das Programm auf einem 16f628 zu
portieren. Aber es gibt Probleme . Bitte helft mir. Source und
Fehlerbeschreibung (Programmm ist 100% fehlerfrei übersetzt worden,
Display bleibt leer) unter:


http://www.mikrocontroller.net/forum/read-1-220642.html#new

von remo (Gast)


Lesenswert?

Im Zafira gibt es unter dem TID noch ein weiteres Display, das aber nur
in Betrieb ist, wenn man den Boardcomputer hat. Wenn nicht, ist dann da
überhaupt ein Display eingebaut? Und wenn ja, kann man das auch wie das
TID ansteuern?

Danke und ciao
Remo

von seek1 (Gast)


Lesenswert?

Habe für einen Bekannten auch eine PCB gefertigt. Wo kann ich bei einen
!Diesel! das Drehzahlsignal abgreifen?

von Tim (Gast)


Lesenswert?

An der Lichtmaschine gibt es beim Diesel eine extra Klemme für das
Drehzahlsignal.

von seek1 (Gast)


Lesenswert?

Welche Farbe hat der Draht??

von Tim (Gast)


Lesenswert?

Wenn noch kein Drehzahlmesser vorhanden ist, ist es gut möglich, dass
kein Kabel an der Klemme ist.
Die Klemme "W" gibt ein Drehzahlsignal aus.

von eSBeO (Gast)


Lesenswert?

@Marco Geisler
Dario schreibt in seiner Protokollbeschreibung auch, dass erst das MSB
und dann das LSB übertragen wird.
Allerdings bin ich mir sicher, dass das Paritybit zum Schluss
übertragen wird.

eSBeO

PS.:Die Ölablassschraube ist natürlich eine gute Idee.

von Marco Geisler (Gast)


Lesenswert?

@eSBe0:
ja genau so mein ich das auch :D
Bei Conrad gibt es passende PT1000 und 100 Sensoren, siehe meine
Homepage...

@remo:
Das einzige ansteuerbare Display ist das, in dem der Radiosender
angezeigt werden kann, und das gibt es immer.
TID ist eben nur "Radio, Uhr, Außentemp" (triple info)
MID ist multi info mit Bordcomputer...

von Dario (Gast)


Lesenswert?

@eSBe0
Ja, so ist es, zuerst wird das MSB und dann das LSB übertragen.
Und das Parity-Bit ist Bit 0, kommt also ganz zum Schluss.
Folgeder Pseudo-Code gibt beispielsweise ein T aus:
------------------------------------------------
  ByteOut = "T"                  // Zeichen T Ausgeben
  Partity = 0                    // Parität wird online berechnet
  BitCnt = 0                     // Zähler für ausgegebene Bits
  WIEDERHOLE solange BitCnt < 7  // Die Bits 6-0 einzeln ausgeben
    RotateLeft (ByteOut)         //   Das oberste Bit fällt raus und
ist weg
    WENN ByteOut & (1000000) = 0 //   Ist Bit7 nicht gesetzt
      0-Bit senden               //     0 Senden
    SONST                        //   Bit7 ist gesetzt
      1-Bit senden               //     1 Senden
      Partity = Partity + 1      //     Parität um 1 erhöhen
    ENDE WENN
  BitCnt = BitCnt + 1            //   Zähler + 1
  ENDE WIEDERHOLE                // insgesamt 7 Bit ausgeben
  WENN Partity & (0000001) = 0   // Eine gerade Anzahl Bits wurde
gesendet
    0-Bit senden                 //   ParityBit 1 senden
  SONST                          // Eine ungerade Anzahl Bits wurde
gesendet
    1-Bit senden                 //   ParityBit 0 senden
  ENDE WENN
------------------------------------------------
Von einem Byte werden also nur die Bits 6-0 gesendet
und danach das Parity-Bit, Bit 7 wird nicht gesendet.
es gibt also auch nur 128 mögliche Zeichen,
die gesendet werden können.

von Stephan Haß (Gast)


Lesenswert?

Wenn ihr ma nix zu tun habt, wie wird den aus dem neuen Vectra das
Farbdisplay für die navigation angesteuert? wuerd mich ma
interessieren, hab davon 4 Stück zuhause rumliegen....

von Marco G. (stan)


Lesenswert?

@Stephan:
versuch es mal hier: http://www.migrosser.de.vu/

von Wegstaben V. (wegstabenverbuchsler)


Lesenswert?

@Stephan Haß - Mc_Steven_Hateweb.de
Eh du die Displays beim Sperrmüll abgibst, kannst du mir eins zusenden?
Passen die eigentlich auch an/in einen Opel Astra dran?

von Dennis Brücke (Gast)


Angehängte Dateien:

Lesenswert?

Hi @all,

leider habe ich meine alten Daten nicht mehr gefunden, so das mich dazu
entschloss nochmal ne neue Fassung zu schaffen, im Anhang mal ein
kleiner Ansatz...

Auf dem Board befindet sich:
- Die Zündpuls Auswertung,
- Spannungswandlung mit Spule von 12V -> 5V
- Spule für AVCC
- Anschluss für Taster
- Anschluss für LED (Schaltblitz)
- Spannungsteiler mit RC-Glied für Spannungsmessung (Bordnetz)

Noch ungeprüft:
- Anschluss für 8 Poligen Stecker
- Anschluss für 8 Poliges Display (Opel Corsa B)

Vorgesehen ist noch:
- Schaltung für Analog Tempfühler (KTY) für Öltemp.
- sowie für Wassertemp

Mal schauen was mir die Tage noch so einfällt ;)

Gruß Dennis

von Dennis Brücke (Gast)


Angehängte Dateien:

Lesenswert?

Und das Schematic dazu.

Korrekturen kommen noch.

von Dario (Gast)


Lesenswert?

Hallo Dennis,

in meinem Beitrag vom 09.08.2005 16:51 habe ich geschrieben,
dass ich das so nicht machen würde.

Ich hatte echte Probeme damit das so zu implementieren wie
Du das willst, denn man muss den Zustand von SDA und SCL lesen
und schreiben.

Das mit der Umschaltung über das DDR des Controllers hat bei mir
überhaupt nicht geklappt. Deswegen habe ich dafür jeweils 2 Pins
vorsehen.

Nur meine bescheidene Meinung natürlich...

Nacht Dario

von Dennis Brücke (Gast)


Lesenswert?

Hi Dario,

also ich habe damit keine Probleme bisher gehabt. Alle meine I2C
Applikationen beschalte ich direkt. Nun weis ich natürlich nicht ob es
in Bascom vieleicht zu Problemen führt.

Also sagen wir es kurz der Teil geht bei mir ohne Probleme ;)

Gruß Dennis

von Dario (Gast)


Lesenswert?

Hallo Dennsi,

wie schon gesagt, es ist kein echtes I2C, da muss man
insbesondere auf die Bitsynchronisation achten, was meines
Wissens bei I2C nicht so ist.

Dahe kann es bei einigen TID gehen, bei anderen nicht.

Seit ich das so mache, geht es bei allen TID, ohne am Timing
der Schaltung rumprobieren zu müssen.

Nacht Dario.

von Stephan Haß (Gast)


Lesenswert?

Korrekt, das ihr euch damit befasst habt, aber aber die Displays aus den
Opels, haben einmal den Anschluss 12 Polig wie bei dem normalen MID´s
mit DotMatrix anzeige, und zusätzlich noch nen 32Poligen anschluss.
mein Problem is, ich finde im Internet kein Datasheet oder
geschweigeden eine andere Information über die dinger... wenn einer von
euch mir die dinger ansteuern kann, bekommt er eins Gratis
zugeschickt... wollt das auch in nen Calibra einbauen, hat genau die
gleichen Maße und einbautiefe wie das DOTMATRIX MID vom OMEGA (da hab
ich auch noch 2 von). würd mich um anregungen und Lösungsvorschläge
freuen.

MfG:   MC Hate

von Marco G. (stan)


Lesenswert?

@Stephan:
ich glaub ich hab Infos über die 2 Stecker, schick mir mal ein Bild
davon...

von seek1 (Gast)


Angehängte Dateien:

Lesenswert?

Habe den EElke Visser source von PIC16F84 auf PIC16F62X portiert.

er läuft auf folgenden Typen:
PIC16F627/PIC16F627A/PIC16F628/PIC16F628A/PIC16F648/PIC16F648A

Habe derweil nur die HEX (muss den schlampig geschriebenen Source erst
an die deutsche Grammatik anpassen)

von Tim (Gast)


Lesenswert?

@ seek1

gibts Neuigkeiten?

von Seek1 (Gast)


Angehängte Dateien:

Lesenswert?

Habe den aktuellen Source + Eagle File + fertige Hex + Schematik für
PIC16F627/PIC16F627A/PIC16F628/PIC16F628A/PIC16F648/PIC16F648A im
Anhang

von Tim (Gast)


Lesenswert?

Super!

Ich warte ja immer noch drauf, das es mal jemand in C portiert... oder
die Kommentare übersetzt.

Funktioniert dieser Code auch bei MID?

von seek1 (Gast)


Lesenswert?

MID hat mehr Zeichen und eine andere Startdadresse

TID: 0x94
MID: 0x9B

0x9B = 10011011A (Adresse vom MID)
0x01 = 00000001A (Schalte die Symbole ein)
0x01 = 00000001A
0x01 = 00000001A
0x85 = 10000101A = "B"
0x8A = 10001010A = "E"
0xA4 = 10100100A = "R"
0x8F = 10001111A = "G"
0x83 = 10000011A = "A"
0x9B = 10011011A = "M"
0x83 = 10000011A = "A"
0xA7 = 10100111A = "S"
0x86 = 10000110A = "C"
0x9E = 10011110A = "O"


1:Idle state all lines are high.
2:Pull MRQ low for a short period and let it go high again.
3:Send a "I2C Start"
4:Send the address byte, 0x9B. (The 8 character display uses 0x94!!!!)


5:Pull MRQ low.
6:Send 13 data bytes. (The 8 character display uses 10 databytes!!!!)
7:Let MRQ go high
8:Send "I2C Stop"
9:We are back in the idle state.


Findet man aber alles auf EElkes Seite. Die änderungen meiner Firmware
zur 10 Char Anzeige sind nur geringfügig.

von Marco G. (stan)


Lesenswert?

woher soll denn ein Opel-Radio wissen ob es an einem MID oder TID hängt?
Ich glaube die Adresse hängt nur von der Länge des Displays ab (8 oder
10 Stellen).
Die alten Radios von Opel konnte man noch per Tastendruck umstellen...

von Seek1 (Gast)


Lesenswert?

was habe ich in meinen treath geschrieben? das gleiche

von Marco G. (stan)


Lesenswert?

oh sorry, so genau habe ich nicht gelesen.
Außerdem kenne ich nur den Vectra B und Omega B, dort sind alle MID und
TID 10-stellig :)

von Markus Y. (cobalt-blue)


Lesenswert?

Hallo, ich habe einen corsa der mir auch wenn ich beide tasten länger
drücke die geschwindigkeit kurz anzeigt am tid bis zu +53 kmh
ich bin leider noch ganz am anfang mit microntrollern. weiß einer wie
die geschwindigkeitsdaten an das tid übertragen werden? das könnte mann
doch mit einem atmega8 irgendwie auswerten und dann auf selbenn display
dauerhaft anzeigen auch beei mehr als 53 kmh??????????

von Wegstabenverbuchsler (Gast)


Lesenswert?

würd mich auch interessieren.. In meinem Astra ist auch das "Kleine"
Display drin und sollte etwas mehr anzeigen als nur Uhrzeit und
Radiosender.... Aus dem Onboard-Interface kann man ja wohl wesentlich
mehr Info rausholen

von Markus Y. (cobalt-blue)


Lesenswert?

ja anscheinend schon aber ich weiß leide rnicht wie :( alle
platinenpläne und programme die ich finde sind für einen pic
microcontroller

von Dennis B. (blackice)


Lesenswert?

Hi @all,

also wer Interessen an ein paar Infos hat einfach per E-Mail mal
anschreiben. Habe noch einige Baupläne für einen AVR mit sourcen da.

Gruß Dennis

von Markus Y. (cobalt-blue)


Lesenswert?

das wäre ganz wunderbar das würde endlich diese schreckliche
datumsanzeige verbannen ;) schreib mir deine email adresse oder schreib
mir direkt eine email an:   markus@meine-fotos.info

danke schon mal.

von Dennis B. (blackice)


Lesenswert?

Achso ;) Die sollte ich natürlich dazu schreiben...

info(at)bernau-design.de

Gruß Dennis

von Vorname N. (mhz)


Lesenswert?

abo

von Marco G. (stan)


Lesenswert?

Hi,
Das TID hat das gleiche Geschwindigkeitssignal wie der Tacho. Dieses
wird benutzt, um die Außentemperatur anzugleichen (evtl im Stand wenn
der Kühler wärmt?).
Da dann nur Stillstand oder Bewegung interessant ist, kann das TID
nicht mehr als ~53km/h messen.

Meinen Öltemperatur-Prototyp gibt es unter
http://www.lrz-muenchen.de/~geislerm

von eduart (Gast)


Lesenswert?

Hallo,
kann mir einer sagen welchen stecker und welche kupplung ich verwenden
muss wenn ich mir da einen adapter bauen will ohne eben das kabel und
das tid zu beschädigen? ich hab mit so anschlüssne immer pech, hab
schon was bei reichelt dafür bestellt gehabt und das is jetzt
wesentlich kleiner, obwohl ich die höhe gemessen hatte, aber naja.
wäre jedenfalls sehr net wenn mir einer die reihclet artikelnummern
sagen könnte dafür

von Marco G. (stan)


Lesenswert?

Welches Auto hast du denn?
Beim Vectra B mit gelbem 26-poligem Stecker am TID passt zB ein
abgeschnittener Festplattenstecker.
Bei Corsa B und Astra F auch.
Beim Vectra mit 32 Polen (Facelift) ist der Pinabstand meines Wissens
nach nur 2mm.

Also als Bastellösung für den Schreibtisch geht ein Festplattenstecker,
im Auto würd ich direkt hinterm Radio die Leitungen abgreifen und da
einspeisen, über den ISO-Stecker:
http://www.selfmadehifi.de/hifi/kfz-prod.htm runterscrollen bis Opel.

von eduart (Gast)


Lesenswert?

ja is nen corsa b danke, ich werds mal versuchen ;) das wär natürlich
praktkisch weil man davon ja eh immer irgendwo welche rummliegen hat

von Dennis B (Gast)


Lesenswert?

Da doch reges interesse an dem OpelTID Projekt besteht,
werde ich mal meine Daten alle wieder rauskramen und
das Projekt wieder auferleben lassen.

Werde in den nächsten wochen
1 x ASM Variante Online bringen.
1 x In C umschreiben (da ich gerade dabei bin mich in C zu probieren)

Hauptproblem zur zeit ist, das ich kein Display zu liegen habe. Sollte
jemand noch eins haben und es verkaufen wollen. Bitte email an mich.

blackice2999@vodafone.de

Gruß Blackice

von BennyS (Gast)


Lesenswert?

Hi
Wollte mich auch an ein Did aus einen Astra F Bj. 92 versuchen werde es
in den nächsten Tage endlich bekommen. Mal gucken zu welchen ergebniss
ich komme und vielleicht auch nicht schlecht deine C-Sourcen mal zum
lüngern zu haben ;)

Na den bi zu meinen (Fehl-)Versuchen :)

von Dennis B. (Gast)


Lesenswert?

Hi BennyS,

leider hab ich noch keine C Sourcen sondern nur in ASM
bin dabei das jetzt alles in C zu machen. Um es
"Schnittstellenfreundlich" zu halten.

Gruß Dennis

von Seek1 (Gast)


Lesenswert?

An alle , die meine Platine nachgebaut haben. Ich habe Hardwaretechnisch
eine Änderung vorgenommen, die !nur! Corsa für das Bj. 95 betrifft. Der
Widerstand von 100kOhm muss durch einen Widerstand mit 330k ersetzt
werden, da bei diesem und nur diesem Bj. die Spannung an der Zündspule
primärseitig sonst zusammen fällt. Ergebniss---> Fehlzündungen (die man
nicht bemerkt) ---> Kat kaputt

Ich weis , das es schon viele Leute nachgebaut haben, und anscheinend
tritt es nur beim Bj.95 auf. Warum das nur beim Corsa im 95er so ist,
kann mein Fachverstand (leider) nicht erklären.

von Dennis B. (Gast)


Lesenswert?

Einer der Gründe warum ich das ganze entweder so hochohmig wie möglich
abgreifen würde. Oder noch besser Induktiv...

von BennyS (Gast)


Lesenswert?

Ok Display hab ich. Leider ist das Flexkabel so alt das sich die
Kontakte festgefreßen haben und vom Kabel gelöst :( aber konnte ich mit
Pape und Isolierband richten, man sollte das DID jetzt nur nicht mehr
aufmachen.

Hat noch jemand solche Probleme?
Oder noch besser eine Lösung


Ansonsten hat sich gestern auch noch mein PC  erabschiedet so das
frühstens heute abend nach der Arbeit die Entwicklung beginnen kann.

von BennyS (Gast)


Lesenswert?

Ich glaub ich werde verrückt, versuch jetzt seit 2 Tagen dieses dumme
DID anzusteuern aber es will ums verrecken nicht grrr

@Dennis
Hättest du vielleicht dein ASM Code für mich? Und könntest mir verraten
wie du es angeschloßen hast, Dioden, Transistoren, direkt ?

Wäre dir echt sehr dankbar. Sonst komm ich morgen in die Geschlossene
;)

Benny_Stark@online.de

von Jakob (Gast)


Lesenswert?

Ich hätte mal eine ganz andere Frage ich bin leider nicht so der technik
Fuchs und hab an und für sich auch Null Technik da. Würde aber mal gerne
Wissen ob jemand sowas für eienen Gewissen Preis Baut und per Post
Versendet? Wäre ja auf jedenfall nicht schlecht da ich schon lange nach
einer DZM anzeige möglichkeit für meinen Corsa suche nur sind die Tacho
Einheiten bei eBay Schweine Teuer. Würde mich über antworten freuen.

von SAULOUS (Gast)


Lesenswert?

Mahlzeit,
möchte mir auch sowas zusammenstellen. Das Problem ist, ich krieg die
nötigen Daten nich zusammen. Abbildungen von Platinen gibts genug, aber
die Bauteilkennzeichnungen und Größen hab ich noch nich gesehn...

Hat jemand mal ne Liste parat ???

von BennyS (Gast)


Lesenswert?

Da nun fast 2 Monate vergangen sind und ich wieder frohen Mutes bin.
Kann jemand von euch (hier) vielleicht mal sein Anschlußplan und ein
bisschen Code (C oder ASM) zur verfügung stellen, bitte?

Ich bin nämlich damals schon daran gescheitert allein MRQ low zu ziehen
und Antwort zu bekommen. :(

Würd mich halt gerne nochmal dran machen.

von Profi (Gast)


Angehängte Dateien:

Lesenswert?

Habe aus lauter Langeweile die beiden Boards
Datum: 08.08.2005 15:55 Dateianhang: OPEL Interface.brd
Datum: 10.08.2005 14:55 Dateianhang: Pic board 35 x 40.brd
nach meinem Geschmack überarbeitet.
Dabei wurde mehr auf ein anständiges Layout / Plan  als auf die
Schaltung geachtet.
Änderungen Pic Board:
C3 von 22µF auf 10µF geändert
C4 10µF hinzugefügt
C5 von 22 pF auf 1nF geändert
R3 sollte wg. der hohen Spannung aus 2 x 47kOhm bestehen (beide stehend
einbauen und oben zusammenlöten).
Die Leiterbahnen sind breiter.

Änderungen TID-Board:
R3 und C6 können mechanisch größer sein
C5 von 22 pF auf 1nF geändert
C6 10µF hinzugefügt
R3 sollte wg. der hohen Spannung aus 2 x 47kOhm bestehen.
die Kathode von D4 kann an 12V oder 5V gejumpert werden.
Das PinOut (Zählweise) von In und Out habe ich nicht kontrolliert.
Die Leiterbahnen sind breiter.

Die LED könnte mit 1kOhm dunkel leuchten.

Das Programm von Visser habe ich schonmal getestet und geändert, hat
auf Anhieb geklappt.

von SAULOUS (Gast)


Lesenswert?

Wie kann ich diese *.sch und *.brd Dateien Öffnen ??

Bzw. mit welchem Programm ?

von Thomas O. (Gast)


Lesenswert?

könnte jemand die Dateien als PNG exportieren und reinstellen, würde mir
gerne mal die Schaltung anschauen.

von Marco G. (stan)


Lesenswert?

.sch und .brd kann man mit Eagle von Cadsoft öffnen, ist kostenlos für
den privaten Gebrauch...

von Thomas O. (Gast)


Lesenswert?

ich weiss womit man das öffnet kann. Da es mir aber mal einge
Schaltpläne zerschossen hat nach dem ich eine Datei aus dem Netz
geöffnet hab, verzichte ich darauf. Falls mir jemand den Schaltplan mal
 exportieren kann wäre ich sehr dankbar.

von Profi (Gast)


Angehängte Dateien:

Lesenswert?

Sowas ist mir noch nie passiert.
Anbei 4 Stück 300dpi .png

von Thomas O. (Gast)


Lesenswert?

danke Profi. Deswegen nutze ich es auch nicht mehr, habe mir
Sprint-Layout gekauft womit ich meine Platinen mache, da ist halt
manuelles Routen angesagt ist mir aber lieber als das entkntoten bei
Eagle.

von MacGyver (Gast)


Lesenswert?

hi

tut mir leid dass ich hier leichen ausgrabe aber ich stehe auch gerade 
vor dem problem ein tid anzusteuern.

ich möchte gerne in c arbeiten habe bisher allerdings nur asm routinen 
gefunden und mein asm ist sehr dürftig.

gibt es so etwas evtl in c? ich versuche seit 2 tagen das selbst zu 
stricken und hab das ding bis jetzt nur zum flackern bekommen.

sowohl mit der eingebauten twi unterstützug als auch mit selbstgebauten 
routinen komme ich einfach nicht weiter

bzw kann man die asm routinen irgendwie in c übernehmen?

als mcu habe ich einen atmega8 in verwendung.

bitte um hilfe
mfg

von Simon K. (simon) Benutzerseite


Lesenswert?

Der Fehler liegt in Zeile 312

von MacGyver (Gast)


Lesenswert?

hi

ich weis dass mir keiner sagen kann wo der fehler in meinem code findet 
wenn ich ihn nicht poste-mir ging es eher darum ob jemand entweder weis 
wie an die bestehenden asm files einbinden kann-ich kenn mich mit asm 
nicht aus oder sowas schon mal in c geschrieben hat.

mfg

von Wegstabenverbuchsler (Gast)


Lesenswert?

Poste doch einfach mal was du bisher fabriziert hast, beschreibe was mit 
deisem Zeugs für ein "Systemverhalten" passiert, und freue dich auf 
Kommentar der mitlesenden ...

von Mac G. (mac_gyver)


Lesenswert?

ok

hier ist mal der sourcecode.

vorerst ist alles mit blockierenden warteschleifen gelöst wenn das 
hinhaut stricke ichs um auf interrupts. erst mal geht es mir nur mal 
darum das irgendwie zum werkeln zu kriegen

ansteuerung ist wie weiter oben mit 3 transistoren und 3 extra 
eingangspins gelöst.

was passiert: gar nix das disp bleibt leer das programm läuft allerdings 
durch und leibt nirgens hängen.

der µc ist mit 8mhz getaktet

mfg

von Wiesi (Gast)


Lesenswert?

Anhang ist nicht da.

von Mac G. (mac_gyver)


Angehängte Dateien:

Lesenswert?

so jetzt aber

mfg

von Sven H. (itchybee)


Lesenswert?

Hallo zusammen,

mir stellt sich zur Zeit eine Frage die nur indirekt mit der Thematik 
hier zu tun hat, aber ich denke mal das passt trotzdem hier rein.

Hier geht es ja auch um die ansteuerung des 10stelligen Tids das im 
Corsa C verbaut ist.
Sicher kennt nun der eine oder andere die kleien Kilometeranzeige die im 
Tacho des Corsa C (und anderen Opel Modellen) die Tages- und 
Gesammtkilometer anzeigt.
Ich würde nun gerne diese beiden Signale zusätzlich, zu den hier 
besprochenen, abgreifen und auf einem oder zwei Dot Matrix Displays 
ausgeben.

Der Hintergrund ist der, dass ich damit eine Kombianzeige im Tacho 
unterkriegen will die diese KM-Anzeige ersetzt.
Problem ist dabei dass ich keinerlei Ahnung habe wie dieses Display 
angesteuert wird. Ich vermute zwar dass ebenfalls über den I2C Bus 
läuft, aber ich weiß es eben nicht.
Desshalb währe ich froh wenn jemand weiß wie die Displayansteuerung 
realisiert ist, bzw. wo ich die entsprechenden Signale anderweitig 
abgreifen könnte.

mfg itchybee

von Marco G. (stan)


Lesenswert?

itchybee, ich fürchte da hast du Pech.
Das Kilometerdisplay wird von dem Mikrocontroller im Tacho direkt 
angesteuert.

Beim MID/TID kann man nur deshalb eigene Texte anzeigen, weil die Zeile 
die eigentlich als Radiodisplay gedacht ist, missbraucht wird.

von Sven H. (itchybee)


Lesenswert?

Naja ich dachte mir schon sowas, desshalbbin ich schon davon ausgegangen 
dass man das Signal direkt an den Zuleitung zum Display abgreifen muss.
Da ist nur das Problem dass das immer noch ein Bussignal sein wird (sind 
doch etwas weniger als 70 Adern) - ohne zu wissen um was es sich da 
genau handelt brauch ich gar nicht anzufangen und leider hab ich nicht 
mal ein Oszi.
Optisch abgreifen ist schlicht zu aufwendig (bei gut 70 Segmenten) und 
auch wegen der Größe nur schwer zu realisieren.
Der einzige Hoffnungsschimmer den ich noch sehe, ist dass die Signale 
sicher im CAN-Bus mitgeliefert werden. Das währe mit einem PIC18F mit 
CAN-Bus Schnittstelle zu realisieren, allerdings ist mein Wissen über 
den Bus sehr rudimentär, also fern jeder Realisierung :-(

Aber wenn jemandem trotzdem was einfällt währe ich sehr dankbar :-)

von Bernd (Gast)


Lesenswert?

Bump

von Carlos (Gast)


Lesenswert?

Hello, sorry, but i have no idea of German, i'm using Google to 
understand all of you :)

I'm trying to use Arduino PCB with ATMEL ATMEGA328, to interface with 
TID.
I found very usefull the source code "TID.c" but i canot find the TID.h 
library taht's is used there.

Can you help me please. Thanks a lot!!!!

von Christian L. (quadratqualle)


Angehängte Dateien:

Lesenswert?

Hello Carlos

here is my complete Tid source code.
I hope it help you.

von AstraGProb (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Alle zusammen ich hab will mich auch mal an der ganzen Thematik 
von der Ansteuerung ran setzen weil ich schlicht und ergreifend ne 
Beschäftigung suche die auch nen bissl nutzen hat ;-)

Ich hab nen Atmega8 und wollte das mit Assembler machen, weil ich da 
mehr verstehe wie in C...
Ich hab jetzt diese Schaltung mir zusammen gebaut und auf den Atmega 
angepasst, nur die PullDown Widerstände hab ich gelassen, weil die ja 
eigentlich auf nichts gehen? Da sollte es ja egal sein.

http://www.mrserv.de/index.php?option=com_content&task=view&id=40&Itemid=33

Habe auch versucht diesen Quellcode umzuschreiben aber irgendwie will 
das ne, glaube das hängt an den Send Routinen, kann mir da jemand 
helfen?

Oder hat gar jemand noch nen Code und nen Schaltplan für nen ATmega8 
finde nur Sachen zu Pic´s

von Claas R. (cascade)


Angehängte Dateien:

Lesenswert?

AstraGProb schrieb:
> Oder hat gar jemand noch nen Code und nen Schaltplan für nen ATmega8
> finde nur Sachen zu Pic´s

Ist zwar nen Tiny und kein Mega, aber damit gehts bei mir wie man hier 
sehen kann:
http://www.youtube.com/watch?v=Gck8UfNMQiw

Ist in C, basiert auf dem Code von Christian Lutze. Muss nochmal 
bisschen aufraeumen und vor allem das Ding auch mal im Auto testen, das 
ist gerade alles eher geraten mit der Geschwindigkeit....
Aber dann gibts auch den Source...

Ich glaube ich hab mich naemlich z.B. hier verhaspelt g
1
speed = (uint16_t) ((uint32_t) ((60UL / SIGNALS_PER_TURN * (unsigned long) F_CPU) / (((unsigned long) TIMER0_VALUE * TIMER0_PRESCALE) + ((timer0_overflows - timer0_overflows_offset) * 255UL * TIMER0_PRESCALE)) / TIMER0_PRESCALE) * WHEEL_CIRCUMFERENCE * 60 / 100 / 100);
...und ja, ich lasse gerne Kompiler ihre Arbeit machen. Und die Zeile 
ist die schlimmste im Code :)

von Lustig (Gast)


Lesenswert?

Hi Leute,

habe versucht das TID mit nen Arduino anzusteuern, aber irgendwie klappt 
es nicht. daher zeige ich euch mal den vorläufigen Code von mir:

/****************************************************************/
/*                                                              */
/*              Opel Astra G TID Ansteuerung                    */
/*                     I2C-Protokol                             */
/*                                                              */
/****************************************************************/

#include <Wire.h>
#define TID 0x9B
#define _SCL  5
//#define _SCL_in    1
#define _MRQ  4
//#define _MRQ_in    3
#define  _SDA  4
//#define _SDA_in    5
#define PIN


void setup()
{
  SDA_high();
  SCL_high();
  MRQ_high();

}

void loop()
{
  MRQ_low();
  SDA_low();
  while(get_SDA());        //warte bis SDA low
  delay(50);
  MRQ_high();
  while(!get_SDA());        //warte bis SDA high
  delay(50);
  SDA_low();
  delay(50);
  SCL_low();
  delay(50);
   Wire.begin();
   Wire.beginTransmission(TID);
   MRQ_low();
   Wire.send(0x01); // Schalte Symbole aus
   Wire.send(0x01); // Schalte Symbole aus
   Wire.send(0x01); // Schalte Symbole aus
   Wire.send(0x85);// B
   Wire.send(0x8A);// E
   Wire.send(0xA4);// R
   Wire.send(0x8F);// G
   Wire.send(0x83);// A
   Wire.send(0x9B);// M
   Wire.send(0x83);// A
   Wire.send(0xA7);// S
   Wire.send(0x86);// C
   Wire.send(0x9E);// O
   delay(50);
   MRQ_high();
   Wire.endTransmission();
   SDA_high();
   SCL_high();
   MRQ_high();
   delay(1000);
}


void MRQ_high(void)
{
  PORTB &= ~(1<<_MRQ  );
}

void MRQ_low(void)
{
  PORTB |= (1<<_MRQ);
}

void SCL_high(void){
  PORTC &= ~(1<<_SCL);
}

void SCL_low(void)
{
  PORTC |= (1<<_SCL);
}

void SDA_high(void)
{
  PORTC &= ~(1<<_SDA);
}

void SDA_low(void)
{
  PORTC |= (1<<_SDA);
}


uint8_t get_MRQ(void)
{
  return (PINB & (1<< _MRQ));
}

uint8_t get_SCL(void)
{
  return (PINC & (1<< _SCL));
}

uint8_t get_SDA(void)
{
  return (PINC & (1<< _SDA));
}


Zuerst wird einmalig void setup() ausgeführt und danach void loop() bis
zum bitteren ende.

Vieleicht weiß einer von euch was bei mir schief geht und das programm 
nicht funzt.

MFG

von Charly B. (charly)


Lesenswert?

@cascade

unn haste es am laufen ? will event. auch sowas aehnliches
bauen

vlg
Charly

von Claas R. (cascade)


Lesenswert?

@charly

Es liegt in der Ecke und wurde nicht wieder angefasst, leider :)
Wollte das aber ueber die Feiertage mal fixen...
Also das was nicht laeuft ist Drehzahl/Geschwindigkeit... Da ist halt 
nen Denkfehler drin...

von Charly B. (charly)


Lesenswert?

aha,

bin am ueberlegen ob i mir auch eine ansteuerplatine baue
oder gleich ein eigenes MiD mir Grafik-LCD (zuerst monochrom)

vlg & ein frohes Fest

Charly

von Heintje (Gast)


Lesenswert?

Hallo.

Spannung für High: >4V
Spannung für Low: <1V
Pull-Up Widerstände auf Slave Seite


hat schon jemand erfolg mit dem xmega gehabt. Dieser ist ja mit 3,3V 
unterwegs.

von Claas R. (cascade)


Angehängte Dateien:

Lesenswert?

Heintje schrieb:
> hat schon jemand erfolg mit dem xmega gehabt. Dieser ist ja mit 3,3V
> unterwegs.

Wie bei MT geschrieben habe ich meinen Tiny mal mit 3.3V laufen lassen 
und das Display läuft immer noch.

Auf Grund der Nachfragen (ja, mehrere) anbei mein Source.
Allerdings ohne den Geschwindigkeits- und Umdrehungen-pro-Minute-Teil.
Da der aktuell nicht so läuft wie ich das gerne hätte hab ich den raus 
genommen bevor der zu verwirrend wird :)

Aber die Ansteuerung vom Display ist drin, Laufschrift, Bargraph (wie 
man im Video sieht) und sowas...

Auf
http://www.mylifesucks.de/oss/c-tid/
ist das auch und wenn ich das mal schaffe den Kram richtig zum laufen zu 
bekommen, gibt es auch den Drehzahl Kram und so... Problem bleibt wie 
immer: Zeit :-/

von Kubisch (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Leute,

Bin gerade dabei das TID zum Arbeiten zu bewegen.
Leider will es nicht :-(

Habe mal die Source angehängt. Sprache ist Mikrobasic.

Kann da jemand von euch ansehen, wo eventuell der Hacken ist?


mfG
Kubisch

von Kubisch (Gast)


Lesenswert?

SDA,MRQ,SCL und Radio is on(12V vom TID) sind über dioden auf die uC 
Pins geführt. Wie bei Eelke Viesers Schaltung.

von Harrara (Gast)


Lesenswert?

Warum übersetzt du die oben genannten Codes nicht in deine Sprache??

von Kubisch (Gast)


Lesenswert?

Weil ich auf C nicht so drauf bin.

von Bruno Murari (Gast)


Angehängte Dateien:

Lesenswert?

Hi folks!

I have an VDO CDR2005 radio from my Astra G/H (here in Brazil it's 
called Vectra C... by the way) and I want to communicate with this radio 
using my arduino uno r3 using SCL, SDA and MRQ like you I do with my 
MID/TID.

I cannot find a library or an example that shows how CDR2005 
communication works because everyone wants to send data/string to 
MID/TID but nobody needs to retrieve data from the radio like radio 
station.

Can someone tell me how can I read data from CDR2005 using Arduino?

von Octav P. (Firma: Home) (octav)


Angehängte Dateien:

Lesenswert?

Hallo. Ich habe einen Opel TID und ich möchte auf das Display (TID)
Informationen, den Text zu senden. Aber ich habe nicht bekommen. Ich
brauche Hilfe!!! Schreiben von Code in Bascom. ATtiny25 Mikrocontroller
Hier ist ein Beispiel von meinem dummen Code:
1
$regfile = "attiny25.dat"
2
$crystal = 8000000
3
4
Dim Text2s As String * 9
5
Dim A As Byte
6
Config Pinb.1 = Output   ' MRQ
7
Config Sda = Portb.0     'SDA
8
Config Scl = Portb.2     'SCL
9
I2cinit
10
Config I2cdelay = 48
11
12
For A = 1 To 9
13
Text2s = "WELCOME "
14
Next A
15
16
Set Pinb.1
17
18
Do
19
Set Pinb.1
20
Reset Pinb.1
21
Set Pinb.1
22
I2cstart
23
Reset Pinb.1
24
Set Pinb.1
25
Reset Pinb.1
26
I2csend &H94 , Text2s
27
I2cwbyte A
28
Set Pinb.1
29
I2cstop
30
Return
31
32
Loop

Ich danke Ihnen für Ihre Hilfe)

von Octav P. (Firma: Home) (octav)


Lesenswert?

1
$regfile = "attiny25.dat"
2
$crystal = 4000000
3
4
5
Config Pinb.1 = 1            ' MRQ
6
Config Sda = Portb.0         'SDA
7
Config Scl = Portb.2         'SCL
8
I2cinit
9
10
Do
11
12
Reset Pinb.1
13
14
Set Pinb.1
15
Reset Pinb.1
16
17
Set Pinb.1
18
I2cstart
19
20
I2cwbyte &H9B    'addres
21
 Waitms 5
22
Reset Pinb.1
23
I2cwbyte &H01   'symbol
24
I2cwbyte &H01
25
I2cwbyte &H01
26
I2cwbyte &H85   'letter B
27
I2cwbyte &H85
28
I2cwbyte &H85
29
I2cwbyte &H85
30
I2cwbyte &H85
31
I2cwbyte &H85
32
I2cwbyte &H85
33
I2cwbyte &H85
34
I2cwbyte &H85
35
I2cwbyte &H85
36
37
I2cstop
38
Set Pinb.1
39
40
Loop

not works....

: Bearbeitet durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.