Hi
Hast recht.
Mit den 10K geht's auch nicht besser.
Aber an was liegt's dann?
Ich mach gerade einen Porttest.
Liebe Grüße, Tobi
Ich glaube nicht.Zitat von tobimc
Meiner Meinung dürfte der Pegel auch so passen, Wichtig erscheint mir, dass im HI die VCC anliegt und dass bei Low ein sauberes GND anliegt. Ob das jetzt 10k oder 4,7k sind wirkt sich zunächst auf die Stromaufnahme aus. Wenn deine Chips daran keinen schaden genomen haben (davon gehe ich aber nicht aus (5V/4,7k = ~ 1mA und 5V/10k = 0,5mA = 100 uA). Mit Deiner 4,7k Variante könnte sogar die Leitung etwas länger ausfallen und dürfte gegen Störstrahlung (induktiv) besser geschützt sein.
Gruss
Darwin (meine Projekte sind auf meiner Pinnwand zu finden)
Hi
Hast recht.
Mit den 10K geht's auch nicht besser.
Aber an was liegt's dann?
Ich mach gerade einen Porttest.
Liebe Grüße, Tobi
http://www.tobias-schlegel.de
"An AVR can solve (almost) every problem" - ts
Zitat von darwin.nuernberg
Ich habe gerade mal in 'nem schlauen Buch nachgesehen...
"I²C-BUS angewandt" vom Elektor Verlag (ISBN 3-92851-71-7):
Da sind sogar 'nur' 3,3k Widerstände auf der Leitung.
Also kann man Entwarnung geben, Du scheinst da ein anderes Problem zu haben.
Übrigens wird in dem Buch auch ein I²C Tester vorgestellt, welchen ich NATÜRLICH nicht nachgebaut habe. Könnte aber ein Hilfreichers Werkzeug sein.
Das Teil hat nur einen Haken, man braucht einen GAL, welcher programmiert werden muß und der Source dazu ist nicht abgedruckt und die beiliegende Dikette hab ich verschlampt, galube aber nicht dass da der Source dabei war. so muß man den Chip wohl kaufen, oder besser das ganze Teil (als Bausatz) von elektor beziehen.
HI
Ich habe gerade ein Beispielprogramm von Bascom aufgespielt.
UND DAS HAT TADELLOß FUNKTIONIERT!!!
*kriesekrieg*
Ich glaube, ich bin dem Fehler auf der Spur.
Liebe Grüße, Tobi
http://www.tobias-schlegel.de
"An AVR can solve (almost) every problem" - ts
In so einem Fall, erst 'amal' tief Luft holen,Zitat von tobimc
Bestimmt hat du dich Verfranzt oder einer Deiner Chips ist TOT (dann hat Du äben päch gehäbt).
Erst mal Kaffee trinken (und falls süchtig eine rauchen) erst dann:
Check nochmal ab ob du die richtigen Pins abgreifst (Ohmisch Messen nicht gucken!).
(SCL = PC0 = Pin 22 (mega32) und SDA = PC1 = PIN 23 (mega32))
und ob Dein Prog richtig eingestellt ist:
Und dann die Verbindung 1:1 (SCL auf SCL sowie SAD auf SDA und Masse nicht vergessen)Code:Config Scl = Portc.0 ' Ports fuer IIC-Bus Config Sda = Portc.1 I2cinit ' I2C - BUS initialisieren
Gruss
Darwin (meine Projekte sind auf meiner Pinnwand zu finden)
Gruss
Darwin (meine Projekte sind auf meiner Pinnwand zu finden)
HI
Es scheint zu funktionieren.
Allerdings ziemlich lllllllaaaaaannnnggggggssssaaaaammmm.
Ich werde jetzt mal suchen, und finden, welche Anweisung (i2csend oder i2cwbyte) für dieses kleine Wunder zuständig ist...
Liebe Grüße, Tobi
http://www.tobias-schlegel.de
"An AVR can solve (almost) every problem" - ts
Die Geschwindigkeit hat mich auch etwas entsetzt, aber funktioniert hat es.Zitat von tobimc
Man sollte eines bedenken:
Philips hat den Bus zum Steúern von. z.B. Stereoanlagen, Video- und DVD , also AV-Geräten entwickelt (da komt es auf ein paar ms hin oder her nicht an, abder die summieren sich (beachtlich).
Ich lasse mich gerne eines besseren belehren.
Wie schnell kann das denn sein?
HI
ES FUNKTIONIERT.
UND ZWAR MIT BEIDEN BEFEHLEN.
-> Aber frag mich nicht, was ich anders gemacht habe!!!
Uff. Und ich dachte schon, das funzt nie mehr...
Aber das funzt immer erst, wenn ich alle technischen Register ziehe,
die mir in dieser Richtung messtechnisch zur Verfügung stehen.
Willst du ein Bild vom Bus sehen?
Ganz liebe Grüße, Tobi
Achso:
Das ist der Aktuelle Quellcode:
(Quick & Dirty)
Code:$regfile = "m16def.dat" $baud = 9600 $crystal = 16000000 $lib "i2c.lib" Beep Alias Portd.2 Config Scl = Portc.0 Config Sda = Portc.1 Const 24c64 = &B10100001 Dim Var As Byte I2cinit Do For Var = 0 To 5 Sound Beep , 500 , 350 Waitms 250 I2cstart I2cwbyte 24c64 I2cwbyte 23 I2cstop Wait 1 Sound Beep , 500 , 500 Waitms 1 Next Var Sound Beep , 750 , 3000 Wait 1 For Var = 0 To 5 Sound Beep , 500 , 350 Waitms 250 I2csend 24c64 , 255 Wait 1 Sound Beep , 500 , 500 Next Var Sound Beep , 750 , 3000 Wait 1 Loop End
http://www.tobias-schlegel.de
"An AVR can solve (almost) every problem" - ts
Ja,Zitat von tobimc
zeig doch mal.
PS Deinen Code solltest Du auch als 'Tag' einbauen.
{markiere deinen Code von Anfang bis Ende und wähle den Button Code an.} Just for info, dann wirds 1. eindeutig, was dazugehört und 2. wird deine Message übersichtlicher.
Gruss
Darwin (meine Projekte sind auf meiner Pinnwand zu finden)
Lesezeichen