Forum: Mikrocontroller und Digitale Elektronik SD20 Bascom Beispiel


von Hans (Gast)


Lesenswert?

Hallo

Hat jemand ein Bascom Bespiel für den SD-20.
Ich versuche schon den ganzen Morgen den Sd20 zum laufen zu bringen


mfg

Hans

von weinbauer (Gast)


Lesenswert?

Bascom ist hier nicht sehr beliebt im µC-Net ...

was meinst Du mit SD20 und haste auch nen vorhandenen Code?
Wenn ja, dann schick das mal mit, ggf. fällt ja noch jemand was ein 
dazu.
Link zum Datenblatt wäre auch hilfreich

von Hans (Gast)


Lesenswert?

Hallo

Danke für die schnelle Antwort

Hier mal mein Code:
1
$regfile = "m8def.dat"
2
$crystal = 8000000
3
$hwstack = 100
4
$swstack = 100
5
$framesize = 100
6
7
8
Config Scl = Portd.7                                        '
9
Config Sda = Portd.6
10
11
12
I2cinit
13
14
15
16
17
' Startausgabe
18
19
  Do
20
21
    I2cstart
22
    I2cwbyte &HC2
23
    I2cwbyte 1
24
    I2cwbyte 255
25
    I2cstop
26
27
28
    Waitms 500
29
30
    I2cstart
31
    I2cwbyte &HC2
32
    I2cwbyte 1
33
    I2cwbyte 0
34
    I2cstop
35
36
                                              '
37
38
39
   Loop

von Wolfgang S. (wsm)


Lesenswert?


von Hans (Gast)


Lesenswert?

Hallo

Ist mein Code den falsch ? bzw was mache ich falsch

von Hans (Gast)


Lesenswert?

Hat keiner eine Idee ?

von weinbauer (Gast)


Lesenswert?

okokok ... mal langsam mit die alte Leuts :)

Was mir direkt ins Auge springt ist das Du nach dem zweiten
Schreibbefehl nicht wartest in der Loop ... häng da mal auch n waitms 
500 rein, damit der Servo auch was machen kann.

Dann schreibt der Hersteller auf der Seite was von 24c02-ähnlichem
Protokoll. beim 24c02 werden beim Schreiben auch ACK verwendet bei jedem 
gesendeten Byte.

von Hans (Gast)


Lesenswert?

Hallo


Was genau bedeutet das ?

ACK verwendet bei jedem
gesendeten Byte.

von Hans (Gast)


Lesenswert?

push

von Horst H. (horha)


Lesenswert?

Hallo,

vielleicht hilft Dir dies weiter:
http://www.rn-wissen.de/index.php/Bascom_I2C_Master
Für Software I²C müssen die Pin's für SDA/SCL angegeben werden und
für Hardware I²C muss die entsprechende lib eingebunden werden und alles 
mögliche eingestellt werden.
Aber das ist ja dort beschrieben.

von Hans (Gast)


Lesenswert?

Config Scl = Portd.7                                        '
Config Sda = Portd.6

habe ich ja gemacht

von Hans (Gast)


Lesenswert?

Ist den der Code soweit richtig ?

Ich würde gerne Wissen ob ich den Fehler in der Hardware suchen muss.

von weinbauer (Gast)


Lesenswert?

ok, hab nochmal in die Hilfedatei geschaut, beim i2cwbyte gibts kein 
ack/nack, nur beim i2crbyte.
ansonsten wie schon geschrieben zweiter waitms.
pullups dran? oszi vorhanden um zu debuggen?

von Guido S. (flintstone)


Lesenswert?

Hallo Hans,

mir springt etwas anderes direkt ins Auge. Du sprichst von einem SD20, 
dein Code ist aber für einen ATmega8. Was ist denn nun richtig? Ein SD20 
ist ein PIC und ein ATmega8 ist ein AVR. Somit vollig unterschiedliche 
Dinge. einen PIC kann man nicht mit BASCOM programmieren. Oder gibt es 
eine Version für PIC?

Gruß Guido

von Hannes L. (hannes)


Lesenswert?

Guido Scheidat schrieb:
> Hallo Hans,
>
> mir springt etwas anderes direkt ins Auge. Du sprichst von einem SD20,
> dein Code ist aber für einen ATmega8. Was ist denn nun richtig? Ein SD20
> ist ein PIC und ein ATmega8 ist ein AVR. Somit vollig unterschiedliche
> Dinge. einen PIC kann man nicht mit BASCOM programmieren. Oder gibt es
> eine Version für PIC?

Ich habe das so verstanden, dass er den SD20 als eigenständiges Gerät 
(mit I²C-Schnittstelle) betrachtet und von einem AVR aus über I²C (TWI) 
ansteuern möchte. Und ja, das sollte mit Bascom möglich sein.

>
> Gruß Guido

...

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.