Forum: Mikrocontroller und Digitale Elektronik RTL8019 paar fragen


von Commtel (Gast)


Lesenswert?

hallo leute

ich hoffe ihr könnt mir ein wenig helfen
bei den registern des rtl8019.
Ich hab da problem mit der MAC adresse auslesen
so wie ich das verstanden habe ist die mac adresse im 93lc46 gespeichert
doch wie adresseiere ich das ganze das ich dort hin komme
gefunden hab ich im datenblatt:

Card resource data is read by first polling the Status register and 
waiting for bit[0] to be set. When
this bit is set it means that one byte of resource data is ready to be 
read from the Resource Data
register. After the Resource Data register is read, the Status register 
must be polled before reading
the next byte of resource data. This process is repeated until all 
resource data is read. The format of
resource data is described in the following section.
The above operation implies that the hardware is responsible for 
accumulating 8 bits of data in the
Resource Data register. When this operation is complete, the status 
bit[0] is set. When a read is
performed on the Resource Data register, the status bit[0] is cleared, 
eight more bits are shifted
into the Resource Data register, then the status bit[0] is set again

c.u
commtel

von ozo (Gast)


Lesenswert?

Also laut Datenblatt liegt das Statusregister an Adresse 0x05 und das 
Data Resister direkt davor, an Adresse 0x04. Die Ausleseprozedur ist wie 
von dir beschrieben.
Schau dir doch mal die vielen Webserver Projekte im Forum hier an. 
Ullrich Radig hat (meine ich) da was mit dem rtl8019 gemacht. Aber 
wahrscheinlich auch noch viele mehr...

P.S. eingestreute Satzzeichen erhöhen die Lesbarkeit ganz ungemein!

von Commtel (Gast)


Lesenswert?

sorry wenn ich den wald vor lauter bäume jetzt gerade nicht seh

welche page ist das dann

page 0 reg 0x04 = Data Resister ?

von Commtel (Gast)


Lesenswert?

sorry leute ich komm echt nicht weiter
ich beschreibe den rtl mit dem
PnP Initiation Key
6A, B5, DA, ED, F6, FB, 7D, BE,
DF, 6F, 37, 1B, 0D, 86, C3, 61,
B0, 58, 2C, 16, 8B, 45, A2, D1,
E8, 74, 3A, 9D, CE, E7, 73, 39

danach schreibe ich ins reg 03(wake csn) den wert 00

und sollte doch im isolation state sein oder??

nun lese ich register 5 des rtl s um das bit 0 zu lesen und warte
und warte und warte nix is

kann keiner helfen?
den source von ulrich hab mir auch schon angesehn find nix was 
vergleichbar ist

von JoachimB (Gast)


Lesenswert?

Vergiß erst einmal alles, was mit dem PnP-Mode zu tun hat.
Der PnP-Mode sollte ausgeschaltet werden, da er für Controller zu 
aufwendig ist.

Das 93LC46 ist ein serielles EEPROM. Wie das über drei Leitungen 
anzusteuern ist steht im Datenblatt des 93LC46.
Die drei Leitungen sind am RTL8019 angeschlossen (Pin 77, 78 und 79). 
Wie Du die Leitungspegel an diesen Leitungen ändern kannst, findest Du 
auf Seite 17 des RTL8019 Datenblattes. (9346 programming mode wählen).

Bei Bedarf habe ich auch Links zu fertigen Lösungen.

Viel Erfolg!
Joachim

von Commtel (Gast)


Lesenswert?

1000 Dank endlich ein hinweis.

Ich hab mir in meiner mittagspause schon mal das 93lc46 eeprom angesehen
sieht aus wie von der ansteuerung her das 24cXX..
Dürft ja eigentlich nicht so schwer werden.

Nochmals vielen dank für den hinweis.
Ich hoffe das ich bis wochenende die ersten programmschnippsel 
hinbekommen habe

von commtel (Gast)


Angehängte Dateien:

Lesenswert?

so hab es geschaft die eeprom daten zu lesen
ich betone das der code noch lang nicht komplett fertig ist

verbesserungsvorschläge sind willkommen

c.u
commtel

von commtel (Gast)


Lesenswert?

so liebe gemeinde ich versuch die mac adresse die ich aus dem 93lc46 
gelesen hab in die register des rtl s zu schreiben.
Also page 1 par0 bis par5 was er auch macht nur beim lesen der register 
pasiert etwas woran ich seit 2 wochen fest sitze

geschriebene mac 00 50 bf 18 9e 10
gelesene mac vom rtl 00 50 FF 18 9e 10

oder

geschriebene mac 00 50 af 18 9e 10
gelesene mac vom rtl 00 50 AF 18 9e 10

oder

geschriebene mac 00 50 df 18 9e 10
gelesene mac vom rtl 00 50 FF 18 9e 10

falscher I/O bereich?
mit windows xp hab ich auf 300 und IRQ 3 eingestellt



von Commtel (Gast)


Lesenswert?

kann keiner helfen oder nen tip geben :-((

von JoachimB (Gast)


Lesenswert?

Aus den drei Versuchen kann man nicht viel ableiten.
Offensichtlich wird das dritte Byte gelegentlich nicht richtig 
geschrieben oder gelesen.
Ist der Fehler reproduzierbar? (Funktioniert das mehrmals 
hintereinander)
Was wird gelesen, wenn das dritte Byte mit 01, 02, 04, 08, 10, 20, 40 
oder 80 beschrieben wird?

Gruß
Joachim

von commtel (Gast)


Angehängte Dateien:

Lesenswert?

@ joachim

ich hab dein vorschlag mit 01, 02, 04, 08, 10, 20, 40 und 80 
durchprobiert

also 00 50 *01,02usw* 18 9e 10

wert wird immer richtig dargestellt

hab mein code nochmals umgebaut

jetzt wird bei AF bis EF alles zu FF

hab mal den code mit angehängt

hat jemand eine erklärung dafür

von JoachimB (Gast)


Lesenswert?

Dein Code ist nicht leicht zu verstehen. Ohne ausführliche Dokumentation 
erscheint mir das Programm etwas unübersichtlich.

Die Sprungmarken ASC691..6 oder T69bb, Tes9 etc. sind nicht unbedingt 
selbsterklärend.

Sicher kann ich mit detektivischem Spürsinn ermitteln was in Deinem 
Programm passiert oder passieren soll. Es wäre jedoch schöner, wenn das 
einfach dabeistehen würde.

Gruß
Joachim

von Commtel (Gast)


Lesenswert?

asc69 usw gehören zur dispaly installation

hab ein t6963 controller im display sitzen daher der name

ich werd am wochenende nochmals versuchen den code ausführlicher zu 
schreiben

@  JoachimB hast du msn messenger oder icq über wir weiter reden 
könnten?

von commtel (Gast)


Lesenswert?

also das problem hat sich erledigt
ursache war zuviele bausteine am datenbus angeschlossen.

ich danke euch allen für eure hilfe ganz besonders joachimb
wie es weier geht werde ich hier berichten

c.u

commtel

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.