ENC28J60 Ethernet
ENC28J60 Ethernet
Sziasztok!
2 hete küzdök a ENC élesztéssel. Valakinek nincsen mintaprogramja rá? A Soft resetnél már elakad, mintha az SPI busz nem lenne jó. De nem találok semmi hibát:(.
Köszönöm,
2 hete küzdök a ENC élesztéssel. Valakinek nincsen mintaprogramja rá? A Soft resetnél már elakad, mintha az SPI busz nem lenne jó. De nem találok semmi hibát:(.
Köszönöm,
Remélem ez segíteni fog:
http://members.home.nl/bzijlstra/softwa ... c28j60.htm
Ezen az oldalon követhettük anno végig, a Realtek8019-es chip és az AVR házasítását, és most Ben és persze lelkes társai összehozták az enc28j60-as chip vezérléséhez szükséges bascom programot. Lépésről lépésre minden le van írva benne. Külön figyelemre méltó hogy az ARP és PING részt egy magyar srác írta.
A HTML oldalak konvertálására egy kis segédprogramot is írt az egyik lelkes résztvevő, hogy könnyebben beilleszthessük html kódunkat az AVR memóriájába
A tuxgraphics.org oldalon található kapcsolásra írta a szerző és társai a programot, ami itt található:
http://www.tuxgraphics.org/electronics/ ... 6061.shtml
Remélem tudtam némi kiindulási alapot adni... ?
Jó kísérletezgetést
Üdv: Higgins
http://members.home.nl/bzijlstra/softwa ... c28j60.htm
Ezen az oldalon követhettük anno végig, a Realtek8019-es chip és az AVR házasítását, és most Ben és persze lelkes társai összehozták az enc28j60-as chip vezérléséhez szükséges bascom programot. Lépésről lépésre minden le van írva benne. Külön figyelemre méltó hogy az ARP és PING részt egy magyar srác írta.
A HTML oldalak konvertálására egy kis segédprogramot is írt az egyik lelkes résztvevő, hogy könnyebben beilleszthessük html kódunkat az AVR memóriájába
A tuxgraphics.org oldalon található kapcsolásra írta a szerző és társai a programot, ami itt található:
http://www.tuxgraphics.org/electronics/ ... 6061.shtml
Remélem tudtam némi kiindulási alapot adni... ?
Jó kísérletezgetést
Üdv: Higgins
Köszi, megvan....
De sikeresen elakadtam:
1, A Chip reset az a - microchip szokáshoz híven - csak adott revíziószámú chippel megy. Nálam Rev2 és Rev5 van. na ezekkel nem megy (a külön levő adatlap figyelmeztet is rá). Itt nem olvasható vissza a softreset megtörténte, mert hibát ad vissza.... Adatlap javaslatala: 330 usec várakozás.
2, a Ping és egyebeknél a bufferméret elkezd veszettül nőni. Most hogy ez programhiba vagy a chip nem jó? Így nem megy már az ARP és Ping sem:(.
C-ből a WWW és a Ping már megy.... De a Bascom lenne a cél..
De sikeresen elakadtam:
1, A Chip reset az a - microchip szokáshoz híven - csak adott revíziószámú chippel megy. Nálam Rev2 és Rev5 van. na ezekkel nem megy (a külön levő adatlap figyelmeztet is rá). Itt nem olvasható vissza a softreset megtörténte, mert hibát ad vissza.... Adatlap javaslatala: 330 usec várakozás.
2, a Ping és egyebeknél a bufferméret elkezd veszettül nőni. Most hogy ez programhiba vagy a chip nem jó? Így nem megy már az ARP és Ping sem:(.
C-ből a WWW és a Ping már megy.... De a Bascom lenne a cél..
Az ENC28J60 (3v3) és az AVR (5v) közé nem kell szintillesztő áramkör. Az ENC28J60 5V tolerant, míg az AVR esetén a H szint 5V tápfesz esetén ~1,6..1,8V-tól felfele. Az ENC 3.1..3.3V feszültsége erre megfelel.
Az ENC28J60 esetén a +3V3 felé menő tekercs sima ferritgyöngyös dróttal is helyettesíthető. Az itthon fellelt 100nH tekercs nem vált be, valami tápfeszgerjedést okozott, és a csomagokat véletlenszerűen eldobálta (=mintha kontakthiba lenne). Tekercs helyett darab drót -> tökéletesen működik az Ethernet felület (programhiba miatt egyenlőre C alatt csak...) !
Az ENC28J60 esetén a +3V3 felé menő tekercs sima ferritgyöngyös dróttal is helyettesíthető. Az itthon fellelt 100nH tekercs nem vált be, valami tápfeszgerjedést okozott, és a csomagokat véletlenszerűen eldobálta (=mintha kontakthiba lenne). Tekercs helyett darab drót -> tökéletesen működik az Ethernet felület (programhiba miatt egyenlőre C alatt csak...) !
Sajnos még mindig értetlenül állok a dolog előtt, hogy miért nem sikerül az ENC chipet beindítanod....ennyit jelent ill. számít egy másik rev number?
Próbáltad ATmega8-al ami Ben cikkében is volt, bár elég fura lenne, ha csak így működne...
Remélem azért összejön majd....
Ha megvan a megoldás kíváncsi lennék rá!;-)
Üdv: Higgins
Próbáltad ATmega8-al ami Ben cikkében is volt, bár elég fura lenne, ha csak így működne...
Remélem azért összejön majd....
Ha megvan a megoldás kíváncsi lennék rá!;-)
Üdv: Higgins
Bascomban van valami elkavarodás.
A Rev2 és a Rev5 chip van otthon jelenleg. Ahogy néztem a Ben-s cikkben a Rev7-essel játszott:( (így jár aki hamar veszi meg a chipet és csak utána áll neki fejleszteni...)
Sajna van ennyi eltérés:( Microchip.
Az első amibe belefutottam a program kb. 8. sora. A Chip reset:). Ekkor jött az hogy
a, uj chipet begyűjteni (a meglevő ~20 chipet nem hajintom ki, hanem hibakeresek....)
b, Bascom programhibát kijavítom, amint megvan a hiba. Vagy legalábbis működő változatot összehozok belőle....
A Rev2 és a Rev5 chip van otthon jelenleg. Ahogy néztem a Ben-s cikkben a Rev7-essel játszott:( (így jár aki hamar veszi meg a chipet és csak utána áll neki fejleszteni...)
Sajna van ennyi eltérés:( Microchip.
Az első amibe belefutottam a program kb. 8. sora. A Chip reset:). Ekkor jött az hogy
a, uj chipet begyűjteni (a meglevő ~20 chipet nem hajintom ki, hanem hibakeresek....)
b, Bascom programhibát kijavítom, amint megvan a hiba. Vagy legalábbis működő változatot összehozok belőle....
M128-l éleszette ő is, a Tuxgraphicsos kapcsolást. Nekem is ez van meg.... Így gondoltam nem lehet nagy különbség. lett.
Ha az AVR chipekben ilyen hiba lenne, akkor a programjaink 3/4-e arról szólna, hogy a szilíciumhoz igazítjuk a programot.....
Érdekes, hogy a RTL8019AS esetén miért nincsen ilyen? Ott az elmúlt jópár év chipjeivel játszottam. Sosem volt chipverziószám alapú hiba.... (a DIP/SMD ok nem játszik )
Ha az AVR chipekben ilyen hiba lenne, akkor a programjaink 3/4-e arról szólna, hogy a szilíciumhoz igazítjuk a programot.....
Érdekes, hogy a RTL8019AS esetén miért nincsen ilyen? Ott az elmúlt jópár év chipjeivel játszottam. Sosem volt chipverziószám alapú hiba.... (a DIP/SMD ok nem játszik )
Szerintem is fura.....
Hülye ötlet: próbálj máshonnan venni ENC chipet.
Pl én úgy jártam, hogy a TME-től rendeltem 5db ATmega32-es chipet, 3 eleve rossz volt(nem is lehetett porgramozni őket), és csak kettő volt jó belőle.
Vannak furcsaságok...
Szval szerintem már be lehet szerezni újabb verziójú chipet....
Üdv: Higgins
Hülye ötlet: próbálj máshonnan venni ENC chipet.
Pl én úgy jártam, hogy a TME-től rendeltem 5db ATmega32-es chipet, 3 eleve rossz volt(nem is lehetett porgramozni őket), és csak kettő volt jó belőle.
Vannak furcsaságok...
Szval szerintem már be lehet szerezni újabb verziójú chipet....
Üdv: Higgins
Nem a chip halott . Csak fejlesztik és az Errata lassan vastagabb, mint az adatlap .
De végülis, ha ki lehet olvasni a chipből a verziót, nem gond..... Csak szívás.
Ami nagy szivatás:
RevB1 (Rev2):
- SPI busz _minimum_ 8MHz vagy szinkronban járatva a EthernetIC az AVR-l
- A chip a -40...+85 fok helyett csak 0...85 fok tartományban működik
- Reset megtörténte nem olvasható ki a chipből (hibás adat jön)
- A belső INT nem működik a jelzőbiteken keresztül
- Polaritásdetekció nem működik (mégha a chip engedné is)
- külső ellenállás (ami a Eth működési frekvenciát/órajelet állítja be) RevB1 és RevB4 esetén 2.7kByte, míg RevB5 esetén 2.32kByte!!!
- Az ütközésjelző LED csak _szinkron módban_ működik.
RevB5 (Rev5):
- SPI busz kijavítva.
- A chip működési tartománya kijavítva.
- Reset megtörténte nem olvasható ki a chipből (hibás adat jön) (tessék várakozni 300 usec-t - kivéve ha RevB7 van, mert ott 1msec-t!!)
- A belső INT nem működik a jelzőbiteken keresztül (még mindíg)
- Polaritásdetekció nem működik (mégha a chip engedné is) - továbbra sem.
- külső ellenállás (ami a Eth működési frekvenciát/órajelet állítja be) RevB1 és RevB4 esetén 2.7kByte, míg RevB5 esetén 2.32kByte!!! - szívás, HW módosítás....
- Az ütközésjelző LED csak _szinkron módban_ működik.
- Half duplex fejreállt. Ha már a régi chipben jól működött.....
Szóval ettől azért elszoktam.....
De végülis, ha ki lehet olvasni a chipből a verziót, nem gond..... Csak szívás.
Ami nagy szivatás:
RevB1 (Rev2):
- SPI busz _minimum_ 8MHz vagy szinkronban járatva a EthernetIC az AVR-l
- A chip a -40...+85 fok helyett csak 0...85 fok tartományban működik
- Reset megtörténte nem olvasható ki a chipből (hibás adat jön)
- A belső INT nem működik a jelzőbiteken keresztül
- Polaritásdetekció nem működik (mégha a chip engedné is)
- külső ellenállás (ami a Eth működési frekvenciát/órajelet állítja be) RevB1 és RevB4 esetén 2.7kByte, míg RevB5 esetén 2.32kByte!!!
- Az ütközésjelző LED csak _szinkron módban_ működik.
RevB5 (Rev5):
- SPI busz kijavítva.
- A chip működési tartománya kijavítva.
- Reset megtörténte nem olvasható ki a chipből (hibás adat jön) (tessék várakozni 300 usec-t - kivéve ha RevB7 van, mert ott 1msec-t!!)
- A belső INT nem működik a jelzőbiteken keresztül (még mindíg)
- Polaritásdetekció nem működik (mégha a chip engedné is) - továbbra sem.
- külső ellenállás (ami a Eth működési frekvenciát/órajelet állítja be) RevB1 és RevB4 esetén 2.7kByte, míg RevB5 esetén 2.32kByte!!! - szívás, HW módosítás....
- Az ütközésjelző LED csak _szinkron módban_ működik.
- Half duplex fejreállt. Ha már a régi chipben jól működött.....
Szóval ettől azért elszoktam.....
- nobody_hun
- Bitfaragó
- Hozzászólások: 425
- Csatlakozott: 2005. november 14. hétfő, 7:00
Csak bólogatni tudok.
Egyetlen egyszer foglalkoztam ezzel, C-ben, de mire elkészült azt hittem lenyelem a forró pákát...
Egyetlen előnye a DIP tokos elérhetőség és azt hiszem ebben ki is merült minden tudománya.
Viszont nem tudok alternatíváról (spi, dip tok, stb...)
Illetve csodálkozom, hogy az Atmel még nem gyárt ilyet:
asix.com.tw/products.php?op=pItemdetail&PItemID=89;72;103&PLine=72
Egyetlen egyszer foglalkoztam ezzel, C-ben, de mire elkészült azt hittem lenyelem a forró pákát...
Egyetlen előnye a DIP tokos elérhetőség és azt hiszem ebben ki is merült minden tudománya.
Viszont nem tudok alternatíváról (spi, dip tok, stb...)
Illetve csodálkozom, hogy az Atmel még nem gyárt ilyet:
asix.com.tw/products.php?op=pItemdetail&PItemID=89;72;103&PLine=72
Én berágtam picit. Ha van otthon ~10-12 chip csak nem dobom ki....
Hamár a C működik, akkor megy át Bascomba. Mondjuk lesz kb. 2-3 nap. Végülis a nyári szabi is jó valamire
Ésa szerencse, hogy már van 2 féle verziószámú IC, most van a RevB7-es begyűjtés alatt.A Rev 4-eset meg valahonnan csak kerítek:).
A DIP és a kevés lábszám, és a SOIC tok azért jó szokott lenni. Azért a RTL8019AS a maga 100 SMD lábával nem leányálom....
Sajna DIPesből én sem tudok. A Wiznet és egyéb kész modulok most nem érnek....
Hamár a C működik, akkor megy át Bascomba. Mondjuk lesz kb. 2-3 nap. Végülis a nyári szabi is jó valamire
Ésa szerencse, hogy már van 2 féle verziószámú IC, most van a RevB7-es begyűjtés alatt.A Rev 4-eset meg valahonnan csak kerítek:).
A DIP és a kevés lábszám, és a SOIC tok azért jó szokott lenni. Azért a RTL8019AS a maga 100 SMD lábával nem leányálom....
Sajna DIPesből én sem tudok. A Wiznet és egyéb kész modulok most nem érnek....
A Ben Zijstra féle oldalon van utalás az elektronikára, a tuxgraphics félét használta ő is, ott komplett leírás van stb.. Ha rev7-es enc chiped van akkor hajrá....de ha nem, akkor szívás lesz a Bascomban, ahogy Róbert leírta a tapasztalatait ezen a téren a régebbi verziójú enc chipek kapcsán...
Személy szerint én megmaradok a wiznet chipnél....tudom még mindig eléggé drága (6500Ft+ÁFA),de ha valaki nem akar sokat szöszölni és sürgeti az idő, és gyors eredményt akar elérni a fejlesztésben, akkor még mindig ez a legjobb megoldás....bár tudom nagyon elfogult vagyok
/A Ben féle kóddal nekem az a bajom, hogy a végére eléggé átláthatatlan és hosszú, az egyes részeket különbontva jobb lenne külön 'unitokba' helyezni, mint egy C programnál és a megfelelő pontokon be includolni /
Üdv: Higgins
Személy szerint én megmaradok a wiznet chipnél....tudom még mindig eléggé drága (6500Ft+ÁFA),de ha valaki nem akar sokat szöszölni és sürgeti az idő, és gyors eredményt akar elérni a fejlesztésben, akkor még mindig ez a legjobb megoldás....bár tudom nagyon elfogult vagyok
/A Ben féle kóddal nekem az a bajom, hogy a végére eléggé átláthatatlan és hosszú, az egyes részeket különbontva jobb lenne külön 'unitokba' helyezni, mint egy C programnál és a megfelelő pontokon be includolni /
Üdv: Higgins
Nyáktervből ha kell, akkor M32 mellé valót tudok küldeni (2 oldalas, furatgalvános; 1-2 "pucér" van itthon). Vagy M168 mellé a Tuxgraphicsost (1 oldalas).
Csak a Rev7-es chippel megy a Ben programja. A végére nagyon káoszos. Én most a Tux-osat próbálom átrakni Bascomra. Ezátláthatóbb. Mondjuk a C -> Bascom fordítás szép történet lesz...
Ami chip sorszámokat tudok (ENC28J60 -I/SP (DIP28))):
Rev2: 053044E
Rev5: 07074E7
Ezekkel ne is próbálkozz, mert a Ben fejlesztése nem átlátható. Kihagyott 2-3 logikai lépcsőt.
A nyáktervről:
Ha 5V-ról jár az AVR, 1:1-ben mehet a ENCre. az ENC max 4V tápot kér, ez 5Vból 2 db soros, min 0,5A-es diódával előállítható. Vagy 3V3-as stabICvel (min. 0,5 A).
Fontos!
A Rx+, Rx-, Tx+, Tx- lábakat pontosan kösd be, az IC nem kezeli le különben!
Az Rbias ellenállás értéke nem annyira kritikus. Nálam 2.32k= 2*4k7 párhuzamosan.
A szűrőtekercs csak ferritgyöngy legyen, normál tekercs működési hibát okoz. Amúgy ha a táp "tiszta", akkor sima átkötés is elég (nálam is ez lett).
Csak a Rev7-es chippel megy a Ben programja. A végére nagyon káoszos. Én most a Tux-osat próbálom átrakni Bascomra. Ezátláthatóbb. Mondjuk a C -> Bascom fordítás szép történet lesz...
Ami chip sorszámokat tudok (ENC28J60 -I/SP (DIP28))):
Rev2: 053044E
Rev5: 07074E7
Ezekkel ne is próbálkozz, mert a Ben fejlesztése nem átlátható. Kihagyott 2-3 logikai lépcsőt.
A nyáktervről:
Ha 5V-ról jár az AVR, 1:1-ben mehet a ENCre. az ENC max 4V tápot kér, ez 5Vból 2 db soros, min 0,5A-es diódával előállítható. Vagy 3V3-as stabICvel (min. 0,5 A).
Fontos!
A Rx+, Rx-, Tx+, Tx- lábakat pontosan kösd be, az IC nem kezeli le különben!
Az Rbias ellenállás értéke nem annyira kritikus. Nálam 2.32k= 2*4k7 párhuzamosan.
A szűrőtekercs csak ferritgyöngy legyen, normál tekercs működési hibát okoz. Amúgy ha a táp "tiszta", akkor sima átkötés is elég (nálam is ez lett).