Controller ethernet ENC28J60
#1
Postat 17 January 2009 - 07:45 PM
am gasit date si scheme pe net, dar as vrea sa stiu daca acestea si functioneaza; ca sa nu ma dau ca berbecu cu capu de pereti apoi ca nu merge si nu stiu de ce...
vreau sa lucreze cu un avr pentru a forma un web server embedded. sa vedem ce o iesi
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#2
Postat 17 January 2009 - 08:11 PM
as putea sa iau dintr-un switch sau placa de retea. dar nu stiu daca o sa fiu in stare sa identific circutul corect...
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#3
Postat 17 January 2009 - 09:41 PM
Mufa RJ-45 si transformatorul (in general sunt piese separate, nu prea gasesti mufa cu transformator) se pot lua de pe un switch, sau de pe o placa de retea.
Intrebarea mai interesanta este, daca cum spui nu stii sigur ca poti identifica circuitul, nu crezi ca proiectul e cam ambitios?
Totusi presupune ceva electronica...
In plus exista daca cauti cu google dupa embeded web servers mai multe variante gata facute, unele de dimensiunea apropiata a unei mufe rj-45, si alea contin tot serverul, inclusiv un linux pe el.
Iar implementarea unui stack tcpip si a driverului de ethernet pe un avr este dificila (pe putin spus, s-ar putea sa nu incapa).
Poate e mai interesant de a face toata treaba pe o legatura seriala cu protocol slip...
Oricum succese!
Marius
Aceasta postare a fost editata de docmarius: 17 January 2009 - 09:42 PM
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#4
Postat 17 January 2009 - 10:01 PM
PCB mount Jack :D RJ45, 10/100Base-Trans
in principiu asta ar trebui sa fie.
am gasit implementare pt UDP si TCP/IP pt atmega64. codu are vreo 50k. deci incape dar vroiam ceva ce stiu ca merge 100%
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#5
Postat 18 January 2009 - 03:51 AM
Poate ar fi interesant de scos partea UDP, dat find ca accesul pein http merge pe TCP. Mai faci economie de flash.
Paginile unde vrei sa le pui? Tot in ATmega sau intr-un suport extern (ex. eeprom)?
Ca vine vorba, interfata cu un card SD sub 1 G este simpla....
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#6
Postat 18 January 2009 - 11:43 AM
docmarius, la Jan 18 2009, 03:51 AM, a spus:
Ca vine vorba, interfata cu un card SD sub 1 G este simpla....
codul html o sa fie scris deocamdata in flash direct. dupa ce il fac sa mearga o sa ma gandesc la un suport extern. aici am o mica nedumerire. ENC28J60 comunica cu atmega pe interfata SPI. daca adaug si un cititor de carduri, ala tot pe SPI o sa mearga. si as mai vrea sa bag si un senzor de temperatura care tot pe SPI o sa mearga. cum le pot lega pe toate 3 pe portul SPI? se poate?
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#7
Postat 18 January 2009 - 04:48 PM
Pe partea de slave ai nevoie de reactii promte ca sa nu pierzi impulsuri de CLK, dar pe masterm care genereaza clock-ul nu exista asemenea probleme, si se pot implementa prin operatii I/O normale.
De asemenea device-uri SPI se pot selecta prin activarea secventiala a pinilor enable, liniile CLK si Date fiind comune.
Sporuri.
Marius.
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#8
Postat 18 January 2009 - 06:09 PM
docmarius, la Jan 18 2009, 04:48 PM, a spus:
super asta. e prima data cand lucrez cu SPI. deci inainte de a mai posta intrebari o sa citesc mai multe. deocamdata vin exemenele si o sa fac o mica pauza la proiect. strang documentatie cat pot, si mai citesc printre randuri. si cred ca joi ma duc sa cumpar piese.
simulator bun pt microcontrolere? eu folosesc proteus 7.1 si o sa bag 7.4 sa vad ce i-au adus in plus.
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#11
Postat 22 January 2009 - 05:31 PM
asta e mufa aia minunata. frumos ca are si leduri.

cand o sa gasesc o pauza intre examene o sa fac programatoru pe SPI. vreau sa folosesc schema asta.

/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#12
Postat 22 January 2009 - 06:34 PM
Daca folosesti Windows XP sau mai nou, accesul pe portul paralel poate fi problematic.
In locul tau as incerca interfata seriala recomandata de ponyprog. Portul serial si interfata software e standard, e simpla de construit si merge inclusiv pe Vista.
Sporuri,
Marius
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#13
Postat 23 January 2009 - 02:18 PM


e cam uratel dar isi face treaba.
am scris repede un programel sa-mi modifice starile porturilor. l-am scris cu avrdude si a mers din prima. minune mare. incep sa ma specializez :rolleyes:
ps: folosesc windows 7
Aceasta postare a fost editata de hash84: 23 January 2009 - 02:20 PM
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#14
Postat 23 January 2009 - 05:21 PM

Interesant este ca nu are nevoie de sursa de alimentare.
Pentru ATmega folosesc un development board care are programatorul pe el...
Dar daca merge nu are rost sa-ti bati capul :rolleyes:
Succese!
Aceasta postare a fost editata de docmarius: 23 January 2009 - 05:23 PM
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#16
Postat 23 January 2009 - 08:09 PM
e cel mai rapid sistem de operare de pana acum pe sistemul meu. amd x2 4000+ , 2 gb ram ddr2 667, hdd 7200rpm.
e un bulid 6956. un pre-beta
programele urmatoare le am bagate : nero, acdsee, firefox, winamp, office, yahoo mess, nokia pc suite, buletproof ftp server, kmplayer, winrar, winavr (accesul liber la serial si paralel), girder 3.3 , foxit, speedfan, xnview, acdsee, proteus, avidemux, virtualdub, ffdshow, codek packuri, manager de download, dc++, nod32, utorrent (fara blocare la numar mare de conexiuni), christv, Nokia service suite, si nokia care suite, programe de editare si conversie video, visual studio 2008, sql server 2005, photoshop cs2. pentru emulare de dvd -daemon tools nu merge - am folsoit power iso.
cel mai important: aerofly si realfight g4 merg fara probleme http://www.rhcforum....tyle_emoticons/default/tongue.gif
drivere : am alergat un pic dupa alea de la placa de sunet ca vroiam egalizator din drivere. dar mergea perfect si cu driverele din kitu de windows. mi-a instalat absolut tot in afara de tuneru tv pe care a trebuit sa il bag eu manual. erau drivere de xp si au mers.
il am bagat cam de 1 luna jumate. pana acum nu mi-a facut probleme. yahoo messenger se mai blocheaza o data pe sapt sa zicem, dar in rest numai de bine. poate chiar o sa avem un sistem de operare bun.
merge la fel de bine ca in prima zi. cand o sa dea semne de oboseala o sa bag build-ul 7000, adica beta1.
un singur lucru nu mi-a placut la el. daca ai programe care folosesc overlay mode (gen bsplayer, mplayer) si care nu stiu sa redea video prin directx 7 sau 9 se schimba automat interfata intr-una nu la fel de aratoasa.
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#17
Postat 29 January 2009 - 05:40 PM
cam asa arata placa. de mare efect e bobina aia facuta din cablu de retea :rolleyes: dar vad ca merge.

spatele

ledul verde e aprins semn ca s-a initiat linkul; ledul galben blinkane. in principiu ar trebui sa mearga. o sa pun si microntrolerul intr-un viitor cat se poate de apropiat. trebuie sa fac rost de un radiator cat se poate de mic pentru regulatoare. ala de 3.3 volti se cam incinge....

Aceasta postare a fost editata de hash84: 29 January 2009 - 05:41 PM
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#18
Postat 29 January 2009 - 07:47 PM
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#19
Postat 21 February 2009 - 12:23 PM
sincronizarea ceasurilor la atmega16 cu encoderu de net.
ma omoara fuse-urile rau de tot. nu ma prind.
ca sa am acelasi ceas pe ambele chipuri cum fac? sincronizarea lor pentru SPI?
ecn28j60 merge la 25 de mhz iar atmega16 as vrea la 16.
la asta m-am gandit eu:
en28j60 are un clock output de 12.5 mhz. ar fi suficient la ce imi trebuie mie. dar nu pricep faza cu fuse-urile la avr cum trebuie setate. ma tot chinui cu datasheet-ul lui dar .....
sau alta idee e binevenita!
edit: revin duminica noaptea.
faza super tare. proteus 7.4 suporta encoderul asta de internet si chiar merge. ca am gasit o placa in samplele lui. mi s-a parut super tare faza.
Aceasta postare a fost editata de hash84: 21 February 2009 - 12:37 PM
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#20
Postat 21 February 2009 - 05:19 PM
daca tin eu bine minte, pui atmega fara cuart si injectezi pe unul din pini (trebuie sa zica in data sheet) cei 12.5 MHz de la ethernet.
Dar ce nu inteleg este ce-ti pasa de sincronizarea lor. SPI ar trebui sa mearga si nesincronizat...
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#21
Postat 23 February 2009 - 04:24 PM
pe simulator serverul merge perfect.
pe placuta canci. nu stiu cum functioneaza exact encoderu ala de net. adica eu cand ii trimit ceva pe SPI (orice) i se inchid ledurile.
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#22
Postat 24 February 2009 - 08:36 AM
De asemenea frame-ul de date trebuie sa fie valid. Poate din greseala ii trimiti o comanda de oprire sau low power.
Aceasta postare a fost editata de docmarius: 24 February 2009 - 08:39 AM
--------------------
Modele: Robbe Pitts S12, GL-450C, Pelikan X-treme, Ripmax Bossanova 15cc, Raptor 620SE
R/C: Futaba FF9C 35MHz/Jeti Duplex 2.4GHz, ESU ECoS II
#23
Postat 24 February 2009 - 10:07 AM
-datele se transfera pe frontul crescator
acum mai e o treaba. microprocesoru meu merge la 5 volti si encoderu la 3.3. dar in datasheet spune ca pinii de input sunt toleranti la 5 volti. cred ca modific ceasul microcontrollerului astfel incat sa il fac sa mearga la 3.3 volti (peste 8 mhz zice ca vrea 5 volti neparat) . sa vedem ce iese.
Later edit : uite inca o treaba. am mutat programatorul pe placa. deci magistrala comuna SPI pentru microprocesor si encoder. in timp ce scriu scriu ceva in atmega din calculator ledurile encoderului se aprind si el functioneaza normal. CS encoder in acest timp e legat la masa cum zice in manual.
encoderul functioneaza normal atata timp cat eu nu ii trimit date din atmega.
Aceasta postare a fost editata de hash84: 24 February 2009 - 10:16 AM
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#24
Postat 24 February 2009 - 12:40 PM
codu de initializare:
DDRB|=(1<<4)|(1<<5)|(1<<7); //setez pinii de CS(4) MOSI(5) SI SCK(7) ca output
SPCR=(1<<SPE)|(1<<MSTR); //dau enable la SPI si setez atmega ca master
SPSR=(1<<SPI2X); //setez viteza la f/2 unde f e frecventa la care functioneaza cipul
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#25
Postat 24 February 2009 - 01:44 PM
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#26
Postat 24 February 2009 - 04:11 PM
o sa postez mai incolo un filmuletz ceva cu un demo. si sa finalizez codu sursa cat de cat ;)
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#28
Postat 26 February 2009 - 12:48 PM
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()
#30
Postat 27 February 2009 - 11:04 AM
Kriminel, la Feb 26 2009, 11:22 PM, a spus:
cipul enc28j60 se ocupa cu transmiterea si primirea pacheteleor ethernet - cu tot cu corectie erori, coliziuni si tot ce tine de treaba asta. cu atmega16 configurezi cipul mentionat anterior (ii dai un ip si o adresa), si implementezi stack-ul tcp/ip. eu am doar partea de :
-ARP - Address Resolution Protocol
-TCP/IP -Transmission Control Protocol/Internet Protocol
-HTTP - Hypertext Transfer Protocol - pagina web care o vezi
incerc pe viitor sa implementez partea de DHCP - mai am doar 4k liberi in memoria microcontrolerului si mai trebuie cod pentru un senzor de temperatura. acum adresa ip este fixata in programare.
pentru cine doreste sa il vada in actiune http://82.76.9.35/server . il tin pornit azi
/------------------------\ |~~\_____/~~\__ | | Hash84 |______________ \______====== )-+ | | ~~~|/~~ | \------------------------/ ()