Forum: Mikrocontroller und Digitale Elektronik Opel TID/MID mit Bascom ansteuern


von Karl (Gast)


Angehängte Dateien:

Lesenswert?

Hallo liebe Mikrocontroller Gemeindschaft ;)

ich habe jetzt schon viele Seiten zur ansteuerung des Displays gelesen 
und auch probiert. Das Ergebnis ist bis jetzt das das Display kurz zuckt 
aber nix anzeigt..

Ich experimentiere gerade mit einem Arduino nano V3 herum an dem ich das 
I2c Protokoll Hardwaremäßig steuere. Pullup Widerstände sind auch 
verbaut und den MRQ (die zusätzliche "I2c" Leitung) habe ich an einen 
Digitalport angeschlossen.

Ich versuche gerade nur dauerhaft einen Text anzuzeigen aber leider sehe 
ich auf dem Display nichts..

Habe ein TID aus dem Astra F und zwei BC aus dem GSI (das MID) zum 
Probieren da, doch keins von den Displays macht das was ich will..
Das MID war das einzigste was mit mal ein "RDS" "TP" und "CPS" angezeigt 
hat.

Adressen und Timings habe ich von den Seiten Probiert:
http://web.archive.org/web/20110113101017/http://www.eelkevisser.nl/display.htm

http://wiki.carluccio.de/index.php/Opel_TID

und auch hier im Forum habe ich das Thema gefunden:
Beitrag "Hat schonmal einer ein Opel TID ->erfolgreich<-angesteuert ?"

Aber leider kam ich noch nicht zu einem Erfolg.

Bevor ich es vergesse ich Programmiere mit Bascom aber ich würde mich 
noch als Einsteiger bezeichnen :)
Könnte es auch daran liegen das ich keinen externen Quarz benutze?

anbei mal das momentane (nicht funktionierende) Programm.
hoffe ihr könnt mir bei meinem Problem helfen.

mfg

von Karl (Gast)


Lesenswert?

Schade das keiner helfen konnte aber nach langer Zeit habe ich es nun 
endlich geschafft :)
-Willkommenstext 8 stellig
-Lauftext bis 50 Zeichen
-Drehzahlanzeige
-Bordspannungsmessung
Die Funktionen beherrscht es bereits und es war auch nicht einfach.
Für die Öltemperatur und den Öldruck fehlen mir noch die Sensoren aber 
das sollte jetzt nichtmehr das Problem sein.

Funktioniert bis jetzt auf dem MID. (Das normale TID teste ich heute 
Abend)
Für das TID aus einem Astra G und einem Vectra B werde ich auch noch ein 
Programm entwerfen. Vielleicht findet sich ja auch noch jemand der 
helfen könnte.

Grüße

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:

$regfile = "attiny25.dat"
$crystal = 8000000

Dim Text2s As String * 9
Dim A As Byte
Config Pinb.1 = Output   ' MRQ
Config Sda = Portb.0     'SDA
Config Scl = Portb.2     'SCL
I2cinit
Config I2cdelay = 48

For A = 1 To 9
Text2s = "WELCOME "
Next A

Set Pinb.1

Do
Set Pinb.1
Reset Pinb.1
Set Pinb.1
I2cstart
Reset Pinb.1
Set Pinb.1
Reset Pinb.1
I2csend &H94 , Text2s
I2cwbyte A
Set Pinb.1
I2cstop
Return

Loop

Ich danke Ihnen für Ihre Hilfe)

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


Lesenswert?

Need you help!!!

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
von Patrick J. (ho-bit-hun-ter)


Lesenswert?

Hi

Was hast Du vor, was hast Du für Hardware, wie sieht Dein Aufbau aus, 
was hast Du schon Alles unternommen?

Selber habe ich so eins: eBay: 272349176405
Dessen ID ist die 0x27, x2 -> 0x4E (schreiben) / 0x4F (lesen)
Funktioniert am Arduino mit einer speziellen Lib ( #include 
<LiquidCrystal_I2C.h> ).
Dadurch wird das Display beim Start in 8bit, 8bit, 4bit, 2 Zeilig, 
Cursor/Blinken aus initialisiert.
Das ist notwendig, da 3 bit des PortExpander für die Steuerleitungen 
benötigt werden und ein Bit die Hintergrundbeleuchtung bedient.

Die Initialisierung wurde per Logic-ANalyser: eBay: 200983620192 
'auseinander genommen', da für die I2C-Schnittstelle Nichts im INet zu 
finden war - mittlerweile laß ich, daß drauf ein auch hier erklärter I2C 
PortExpander (eben Basis-ID 0x20) verbaut ist - was aber den Anschluß 
der Hintergrund-Beleuchtung z.B. auch nicht beinhalten würde.

Da Zeichen auf dem Display zu sehen sind, scheint's zumindest halbwegs 
zu funktionieren - nur ein 'Welcome' sehe ich Da auch nicht :)

MfG

von Franz (Gast)


Lesenswert?

Uuuuuu. Vor etwa 3 Wochen habe ich ein TID und ein MID entsorgt :-/
Hatte ich mich damit in meinem Corsa gespielt.
Mal sehen, ob ich noch Quellcode finde.
War aber in Basic, was ich mich erinnern kann.

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


Lesenswert?

ОК =) Eine Woche kann nicht schlafen, versuchen Sie es funktioniert. 
Vielleicht Paritätsbit (ungerade) nicht gesetzt ist, oder vielleicht 
etwas anderes habe ich nicht. =D

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


Lesenswert?

Guten Tag. Es funktioniert, aber es gibt ein Problem. Das Display zeigt 
den Text von 5-10 Sekunden. Dann sieht er nicht zeigen. Was ist das 
Problem, kann ich nicht verstehen.
1
$regfile = "attiny25.dat" 
2
$crystal = 8000000 
3
 
4
 
5
Config Pinb.1 = Output ' MRQ 
6
Config Sda = Portb.0   'SDA 
7
Config Scl = Portb.2   'SCL 
8
Config I2cdelay = 48 
9
 
10
 
11
Mrq Alias Portb.1 
12
 
13
Do 
14
Mrq = 1 
15
 
16
Mrq = 0 
17
Waitus 50 
18
Mrq = 1 
19
I2cstart 
20
I2cwbyte &H9B 'addres 
21
Mrq = 0 
22
I2cwbyte &H10 'symbol 
23
I2cwbyte &H01 'symbol
24
I2cwbyte &H01 'symbol
25
I2cwbyte &H85 'letter B
26
I2cwbyte &H85 'letter B
27
I2cwbyte &H85 'letter B 
28
I2cwbyte &H85 'letter B
29
I2cwbyte &H85 'letter B
30
I2cwbyte &H85 'letter B
31
I2cwbyte &H85 'letter B
32
I2cwbyte &H85 'letter B
33
I2cwbyte &H85 'letter B
34
I2cwbyte &H85 'letter B
35
Mrq = 1 
36
I2cstop 
37
Mrq = 0 
38
Loop 
39
Return

Vielen Dank!

von Patrick J. (ho-bit-hun-ter)


Lesenswert?

Hi

http://web.archive.org/web/20100916091116/http://www.carluccio.de/index.php/Opel_TID

Da gibt's auch was in Deutsch.

Wenn ich Das recht verstehe, ist die Übertragung zwar an I2C angelehnt, 
aber entspricht NICHT dem normalen I2C-Protokoll, auch zerren scheinbar 
beide Geräte an beiden Bus-Leitungen.
Irgendwo laß ich noch über ein Parität-Bit - finde Das aber jetzt nicht 
mehr - hieße, daß das zu übertragende Byte ggf. anders kodiert werden 
muß.

MfG

von Cheeco (Gast)


Lesenswert?

Hallo Octav,

Es ist sehr lange her, dass ich mich mit diesem Thema beschäftigt habe, 
aber soweit ich weiß gibt es ein Feature Namens slave request. Dabei 
zieht das Display eine Leitung auf low (Mrq?), und dann muss das Radio 
innerhalb kurzer Zeit nochmals die Nachricht wiederholen.  Tut es das 
nicht,  wird das Display leer.

Stefan

von Cheeco (Gast)


Lesenswert?

PS. Mach die Schleife etwas weniger aggressiv,  d.h. Lass mal testweise 
50-100ms Pause zwischen den Nachrichten. Zu viele Nachrichten mag das 
Tid nicht.

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


Lesenswert?

Hallo an alle. Den ganzen Tag lang experimentiert. Bisher gibt es keine 
Ergebnisse. Ich weiß nicht, wie in bascom Bit Parität zu schreiben. Ich 
werde auch weiterhin zu versuchen. Ich werde froh Aufforderungen sein)))

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


Lesenswert?

Und noch einmal das Scheitern = (
Viele Male Lesen eines Artikels Mr.Carluccio 
[[wiki.carluccio.de/index.php/Opel_TID#10-stelliges_TID_Opel_Astra_G_und 
_Corsa_C]]  Konnte nicht korrekt den Code schreiben. 
Bit-Synchronisation. Bit Parität. Die Verzögerungszeit. Ich verstand es 
nicht. Sagen Sie mir, wenn Sie wissen? =(

: 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.