Forum: Mikrocontroller und Digitale Elektronik Bascom i2c adresse 7bit daten 8 bit?


von ogur (Gast)


Lesenswert?

Hallo
Ich habe ein i2c Textdisplay (EA T 128) ausgebaut und würde dieses gerne 
weiter verwenden.

Ich habe die Original Daten zwischen Spendergerät und Display mit einem 
Zeroplus analyser vermessen mit den "Standard" i2c einstellungen 7 
Adressbits 8 datenbits und konnte dann die Adresse und die Texte welche 
auch auf dem Display stehen lesen. Daher gehe ich mal davon aus das 
diese einstellungen richtig sind.

Nun wollte ich diese Adress und datenkombi mit Bascom nachbilden. 
Allerdings zeigte der Analyser bei gleichen i2c einstellungen nicht die 
daten die ich gesendet habe.
Wenn ich allerdings die i2c einstellungen vom Logicanalyser auf 8 
Adressbits und 7 datenbits stelle sehe ich auch dort was ich gesendet 
habe.

Das ist etwas verwirrend. Wie kann ich denn nun in bascom einstellen das 
ich 7 Adressbits und 8 Datenbits brauche?
Irgendwie scheint es soeine einstellmöglichkeit nicht zu geben?

Was mache ich falsch ?
1
$regfile = "M8def.dat"
2
$crystal = 16000000
3
$baud = 19200
4
$hwstack = 40
5
$swstack = 20
6
$framesize = 40
7
8
Config Pinb.0 = Output
9
Config Pinb.1 = Output
10
11
12
Config Twi = 40000
13
I2cinit
14
15
16
Config Scl = Portc.5
17
Config Sda = Portc.4
18
Config I2cdelay = 10
19
20
do
21
22
I2cstart
23
    I2cwbyte 58
24
    I2cwbyte 100
25
    I2cwbyte 66
26
I2cstop
27
waitms 1000
28
loop

Damit sende ich Adresse 58 Byte 100, 66
Allerdings wie gesagt 8 Adressbits 7 Datenbits.

Hat irgendwer eine idee ?

von spess53 (Gast)


Lesenswert?

Hi

>Das ist etwas verwirrend. Wie kann ich denn nun in bascom einstellen das
>ich 7 Adressbits und 8 Datenbits brauche?

Bei I2C wird immer ein Byte gesendet. Beim Adressbyte sind Bit 7..1 die 
Adresse und Bit 0 das R/W-Bit.

MfG spess

von ogur (Gast)


Lesenswert?

Das Problem lag am Zeroplus bzw den einstellungen "Don't stop analyzing 
when NACK appears. Ich hatte das Display noch nicht dran daher kam kein 
ack und dadurch wurde die messung unterbrochen. Nun klappt es und auch 
das Display ist wiederbelebt.

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.