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
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
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
|
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.
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.
Ist den der Code soweit richtig ? Ich würde gerne Wissen ob ich den Fehler in der Hardware suchen muss.
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?
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
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.