Fórum témák

» Több friss téma
Fórum » PIC illesztése TCP/IP - ETHERNET - IDE felületen
Lapozás: OK   4 / 18
(#) Mate78 válasza potyo hozzászólására (») Nov 26, 2009 /
 
Köszönöm, akkor körülnézek router ügyben.

üdv
(#) fassenkugel válasza potyo hozzászólására (») Nov 26, 2009 /
 
szerintem nagy baromság az egész. pic-el még 1Mbites kapcsolatot se tudnál kezelni. nem elég gyors hozzá.

open wrt vagy dd wrt megfelelő routerre. olyat válassz amin van usb port, az usb portra egy külső hdd és ennyi. azután megy az ftp torrent meg amit akarsz.

(#) watt válasza fassenkugel hozzászólására (») Nov 26, 2009 /
 
Gondolom ezt csak azért írod(ráadásul kis betűvel mindent), mert nincs elképzelésed mindarra, amit PIC-el lehet végezni a letöltésen kívül!
(#) fassenkugel válasza watt hozzászólására (») Nov 26, 2009 /
 
hát lássuk csak.. 16c84-el kezdetem a pic-elést vagy 10x éve, hidd el van fogalmam róla mire való és mire nem. erre nem. de ha valakinek erre áll fel akkor hajrá.
(#) watt válasza fassenkugel hozzászólására (») Nov 26, 2009 /
 
Aha. Szóval nincs elképzelésed. 10 év után sem. Akkor jó.

De a nagybetűket csak nem találod...
(#) lidi válasza watt hozzászólására (») Nov 26, 2009 /
 
Hát, watt, vannak ilyen emberek, akiknek kicsi a képzelő erejük. Pl nem tudják azt sem elképzelni hogy egy labortáp kapcsoló üzemű legyen, ugye ?
(#) lidi válasza lidi hozzászólására (») Nov 26, 2009 /
 
Persze, jó lehet amúgy egy hálózati pic, csakhogy a téma címe: letöltés pic el.
(#) trudnai válasza fassenkugel hozzászólására (») Nov 26, 2009 /
 
Idézet:
„szerintem nagy baromság az egész. pic-el még 1Mbites kapcsolatot se tudnál kezelni. nem elég gyors hozzá.”


Hmm, ezt a kijelentest nem tudom mire alapozod? Melyik PIC-rol van szo es milyen kapcsolatrol? Topic miatt feltetelezem Ethernetrol - pl 18F67j60-nak van sajat beepitett PHY-ja, 10base-T, tehat az kapasbol 10Mbit/s es kozben a firmware futyoreszik mert a modul elintezi neked a kommunikaciot...
(#) lidi válasza trudnai hozzászólására (») Nov 26, 2009 /
 
Vajon milyen sebességet produkálna mondjuk nagyobb mennyiségű adat átpumpálásakor ? Egy 800Mhz p3 tud hálózaton kb 6000k/sec et. Ez ugye kb 48Mbit/s. Ok ez nem cél hardware, meg win is futkorászik rajta. Namost ennek a teljesítmények töredéke van meg ugye egy PIC ben.
(#) watt válasza lidi hozzászólására (») Nov 26, 2009 /
 
Azt el tudom képzelni, hogy az legyen, de hogy jó, azt nem.

A topic címe lehet, hogy nem jó, de nem erről volt szó korábban. Egyébként a cím nem csak ezt tartalmazza...
Nem mellesleg letötleni is lehet PIC-el. Csak nem kéne kisarkítani a dolgokat.
(#) trudnai válasza lidi hozzászólására (») Nov 26, 2009 /
 
Epp most beszelgetek errol Szilvaval, es abban igaza van, hogy a letoltott adatokat tarolni is kell es azzal gond lesz -- hogy ez mekkora befolyassal lehet a sebessegre nem tudom, mindenesetre a PIC meg sem probal 48mbps-ig elmenni, hisz a phy is csak 10mbps

De amugy ha bele gondolsz az internet kapcsolat sem lesz magas, raadasul a 10mbps-bol is lejon jocskan az ethernet frame-ek ill a tcp/ip overheadje miatt.

Amugy en is azt mondanam, hogy egy ilyen letoltes szervernek jobb lenne egy beagyazott Linux mondjuk egy ARM, de akar Motorola vagy Intel procival is.
(#) watt válasza trudnai hozzászólására (») Nov 26, 2009 /
 
Nekem a hálóm 2Mbps, ennyit talán ki lehetne tolni egy SD kártyára.

De végül is tényleg nem letöltére való, és én nem néztem meg a címet rendesen(van egy hasonló topic), ezért elnézést kérek mindenkitől, akit e miatt megsértettem, bár én eleve nem csinálok személyes kérdést egy szakmaiból, akkor sem, ha úgy tűnik a szűk kommunikációs csatorna miatt!
(#) potyo válasza trudnai hozzászólására (») Nov 26, 2009 /
 
10 megabitet, ami gyakorlatilag nem éri el az 1MB/s sebességet szerintem nem tétel tárolni. Ennyit egy SD kártya is simán tud, abból meg 8 gigás is van. Persze ilyen célra nem való a PIC, de tisztán elméletileg megoldhatónak tűnik.
(#) Mate78 válasza Mate78 hozzászólására (») Nov 29, 2009 /
 
Sziasztok

Jelentem működik,kaptam kölcsön egy routert, így már "kívülről" is elérhető a Microchip-es webszerver demó.
Most hagyom menni egy darabig.

Bővebben: Link

(#) potyo hozzászólása Nov 29, 2009 /
 
Ha már témánál vagyunk, akkor én észrevettem egy problémát a stack-ben. Ha a mostani status.xml-be beraknál még néhány sort, hogy így nézzen ki:
  1. <response>
  2. <led0>~led(0)~</led0>
  3. <led1>~led(1)~</led1>
  4. <led2>~led(2)~</led2>
  5. <led3>~led(3)~</led3>
  6. <led4>~led(4)~</led4>
  7. <led5>~led(5)~</led5>
  8. <led6>~led(6)~</led6>
  9. <led7>~led(7)~</led7>
  10. <led8>~led(8)~</led8>
  11. <led9>~led(9)~</led9>
  12. <led10>~led(10)~</led10>
  13. <led11>~led(11)~</led11>
  14. <led12>~led(12)~</led12>
  15. <led13>~led(13)~</led13>
  16. <led14>~led(14)~</led14>
  17. <led15>~led(15)~</led15>
  18. <led16>~led(16)~</led16>
  19. <btn0>~btn(0)~</btn0>
  20. <btn1>~btn(1)~</btn1>
  21. <btn2>~btn(2)~</btn2>
  22. <btn3>~btn(3)~</btn3>
  23. <pot0>~pot~</pot0>
  24. </response>


Majd legenerálod a megfelelő mpfs2.c és/vagy mpfs2.bin fájlokat, illetve a CustomHTTPApp.c fájlba a HTTPPrint_led() tartalmát átírnád erre és újra feltöltenél mindent, annak nagyon örülnék:
  1. void HTTPPrint_led(WORD num)
  2. {
  3.         // Determine which LED
  4.         switch(num)
  5.         {
  6.                 case 0:
  7.                         num = LED0_IO;
  8.                         break;
  9.                 case 1:
  10.                         num = LED1_IO;
  11.                         break;
  12.                 case 2:
  13.                         num = LED2_IO;
  14.                         break;
  15.                 case 3:
  16.                         num = LED3_IO;
  17.                         break;
  18.                 case 4:
  19.                         num = LED4_IO;
  20.                         break;
  21.                 case 5:
  22.                         num = LED5_IO;
  23.                         break;
  24.                 case 6:
  25.                         num = LED6_IO;
  26.                         break;
  27.                 case 7:
  28.                         num = LED7_IO;
  29.                         break;
  30.                 case 8:
  31.                         num = 1;
  32.                         break;
  33.                 case 9:
  34.                         num = 0;
  35.                         break;
  36.                 case 10:
  37.                         num = 0;
  38.                         break;
  39.                 case 11:
  40.                         num = 0;
  41.                         break;
  42.                 case 12:
  43.                         num = 1;
  44.                         break;
  45.                 case 13:
  46.                         num = 1;
  47.                         break;
  48.                 case 14:
  49.                         num = 0;
  50.                         break;
  51.                 case 15:
  52.                         num = 0;
  53.                         break;
  54.                 case 16:
  55.                         num = 1;
  56.                         break;
  57.  
  58.                 default:
  59.                         num = 0;
  60.         }
  61.  
  62.         // Print the output
  63.         TCPPut(sktHTTP, (num?'1':'0'));
  64.         return;
  65. }


Majd később leírom, hogy mi a hiba, amit láttam, meg hogy nálad is megjelenik-e, most el kell mennem egy időre.
(#) Mate78 válasza potyo hozzászólására (») Nov 29, 2009 /
 
Megcsinálom, de csak holnap este tudom, ha akkor is jó.

üdv
(#) potyo válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
Szóval a hiba, amit észrevettem. Volt nekem egy ilyen status.xml fájlom:
  1. <response>
  2. <ch000name>~chname(000)~</ch000name>
  3. <ch001name>~chname(001)~</ch001name>
  4. <ch002name>~chname(002)~</ch002name>
  5. <ch003name>~chname(003)~</ch003name>
  6. <ch004name>~chname(004)~</ch004name>
  7. <ch005name>~chname(005)~</ch005name>
  8. <ch006name>~chname(006)~</ch006name>
  9. <ch007name>~chname(007)~</ch007name>
  10. <ch008name>~chname(008)~</ch008name>
  11. <ch009name>~chname(009)~</ch009name>
  12. <ch010name>~chname(010)~</ch010name>
  13. <ch011name>~chname(011)~</ch011name>
  14. <ch012name>~chname(012)~</ch012name>
  15. <ch013name>~chname(013)~</ch013name>
  16. <ch014name>~chname(014)~</ch014name>
  17. <ch015name>~chname(015)~</ch015name>
  18. <ch016name>~chname(016)~</ch016name>
  19. <ch017name>~chname(017)~</ch017name>
  20. <ch018name>~chname(018)~</ch018name>
  21. ...
  22. <ch099name>~chname(099)~</ch099name>
  23. </response>

Tehát a paraméter értéke 0-tól 99-ig ment. A HTTPPrint_chname() függvényem így nézett ki:
  1. void HTTPPrint_chname(WORD num)
  2. {
  3.  unsigned address;
  4.  unsigned char chname[64];
  5.  unsigned char i;
  6.  address=BASE_ADDRESS+(num*64);
  7.  
  8.  XEEReadArray(address, chname, sizeof(chname));
  9.  
  10.  // Print the output
  11.  TCPPutString(sktHTTP, chname);
  12. }


Amikor a status.xml fájlt dolgozta fel, akkor a következő történt. Az első nyolc sor feldolgozásakor minden oké. Amikor a chname(8)-at kellene feldolgozni, akkor a num paraméterben 0 érkezett be, és az eredményét betette a chname(8) helyére. Ugyanígy amikor a chname(9)-et kellene feldolgoznia, akkor is 0 jött be num értékének, és beírta a chname(9) helyére az eredményt. Ezután a num helyére 8 jött, de az eredményt a chname(10) helyére írta, majd num helyén 9 jött és chname(11) helyére írta az eredményt, stb. Ez így egészen ment addig, amíg 16-nak kellett volna jönnie a num helyén, amikoris 1 jött be a két egymásutáni híváskor, de az eredményt gyönyörűen a chname(18) és chname(19) helyére írta. Ezután jött 16 num helyén, az eredményt chname(20) helyére írta, 17 jött be és chname(21) helyére írta, stb. egészen amíg 24-nek kellett volna bejönnie. Ekkor kétszer egymás után 2 jött be, majd folytatta a 24-el 31-ig, amikor a 32 helyett 3 jött be, és így tovább. Tehát num-nál ahelyett, hogy egymás után növekvő értékek jöttek volna be, az alábbi sorrendben jöttek, miközben a status.xml fájlban az eredményeket gyönyörűen egymás után tette, tehát 8 soronként betett plusz két sort.
  1. 0x0000
  2. 0x0001
  3. ...
  4. 0x0007
  5. 0x0000  // ??
  6. 0x0000  // ??
  7. 0x0008
  8. 0x0009
  9. ...
  10. 0x000F
  11. 0x0001  // ??
  12. 0x0001  // ??
  13. 0x0010
  14. 0x0011
  15. ...
  16. 0x0017
  17. 0x0002  // ??
  18. 0x0002  // ??
  19. 0x0018
  20. 0x0019
  21. ...
  22. 0x001F
  23. 0x0003  // ??
  24. 0x0003  // ??
  25. 0x0020
  26. ...


Megkerülni úgy tudtam, hogy nem engedem, hogy 8-nál nagyobb paraméter menjen be a függvénybe, tehát ezt csináltam (most a chname helyet chn szerepel, mert spórolni kellett a hellyel, de ez lényegtelen):
  1. <ch000>~chn(0,0,0)~</ch000>
  2. <ch001>~chn(0,0,1)~</ch001>
  3. <ch002>~chn(0,0,2)~</ch002>
  4. <ch003>~chn(0,0,3)~</ch003>
  5. <ch004>~chn(0,0,4)~</ch004>
  6. <ch005>~chn(0,0,5)~</ch005>
  7. <ch006>~chn(0,0,6)~</ch006>
  8. <ch007>~chn(0,0,7)~</ch007>
  9. <ch008>~chn(0,1,0)~</ch008>
  10. ...
  11. <ch097>~chn(1,4,1)~</ch097>
  12. <ch098>~chn(1,4,2)~</ch098>
  13. <ch099>~chn(1,4,3)~</ch099>

  1. void HTTPPrint_chn(WORD num1, WORD num2, WORD num3)
  2. {
  3.         static unsigned address=0;
  4.         static unsigned char chname[64];
  5.  
  6.         address=BASE_ADDRESS+(num1*64+num2*8+num3)*64;
  7.         XEEReadArray(address, chname, sizeof(chname));
  8.         TCPPutString(sktHTTP, chname);
  9. }


Amit írtam kis kódot neked, azzal elvileg előjön már a hiba, ha a gyári stack-ben volt valahol a hiba. Annyira nem mélyedtem el benne, hogy mitől történik ez, örültem, hogy ez a megkerülő megoldás bejött, mert már egy fél napot szívtam vele, hogy miért jelenik meg máshol az, aminek adott helyen kellene, mire rájöttem, hogy a HTTPPrint_ függvény rossz paramétert kapott.
(#) Mate78 válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
Ezt a .xml fájlt mivel lehet szerkeszteni?
(#) potyo válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
Akár sima Jegyzettömbbel is. Semmi különös, egyszerű szöveges fájl, csak xml a kiterjesztése, meg van egy szabványos felépítése (ami itt most konkrétan lényegtelen).
(#) Mate78 válasza potyo hozzászólására (») Nov 30, 2009 /
 
Idézet:
„Majd legenerálod a megfelelő mpfs2.c és/vagy mpfs2.bin fájlokat,”


Nem az mpfsimg2.bin, és mpfsimg2.c fájlokat kell újra generálnom?A .bin kiterjesztésűt töltöm fel weblapnak.
(#) potyo válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
De, azokat, csak nem néztem meg, emlékezetből írtam...
(#) Mate78 válasza potyo hozzászólására (») Nov 30, 2009 /
 
Valami nem jó, nem akar felmenni, ezt írja ki:
404: File not found
Use MPFS Upload to program web pages

Az eredetit ha visszatöltöm, (amit már szintén szerkesztettem korábban) akkor minden rendben.

(#) potyo válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
index.htm fájlod megvan? Elvileg ha kiegészítetted az eredeti status.xml fájlt, majd a Convert WebPages to MPFS.bat fájllal létrehozod az újakat, akkor működnie kell. De újra kell fordítanod és beégetned a projektet, miután a bat fájlt lefuttattad, mert a .bat hozza létre a HTTPPrint.h fájlt, amit a C fordító felhasznál a hex létrehozásakor.
(#) Mate78 válasza potyo hozzászólására (») Nov 30, 2009 /
 
Index.htm fájl megvan.
.bat fájlt nem találok, nem a .bin-re gondolsz?
Az MPFS generátor azt hozza létre.
Újrafordítottam természetesen, beégettem,de most meg kell piszkálnom a routert mert új címet kapott a panelem....
(#) potyo válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
Kell lennie ott egy Convert WebPages to MPFS.bat nevű fájlnak is. Ez is az MPFS Generatort futtatja végül, tehát elvileg mindegy.
(#) Mate78 válasza potyo hozzászólására (») Nov 30, 2009 /
 
Na elindult, annyi változást tapasztalok, hogy a LED-eket tudom kapcsolgatni, de nem kapok visszajelzést a weboldalon.A kapcsolók állását,és a potméter állását sem adja vissza.Én nem értek ennyire a C-hez, mit kell tapasztalni?

Bővebben: Link

(#) potyo válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
Azért nem fut le, mert az oldalban a pöttyök azonosítója (id-je) led7, led61, led51,..., led01, a javascript kód viszont led7, led6, led5,...,led0 néven keresi. És mivel a nullánál kezdi egy for ciklusban, és a led0-t nem találja, ezért leáll a futása. Te írtad át a ledek id-jét?

Viszont ami nekem kellett, azt látom, hogy a status.xml fájl pontosan egyezik azzal, ami a CustomHTTPApp.c fájlba be lett írva. Már csak egy kérdésem van: milyen verziójú stack-et használsz? Én még azthiszem az 5.00-val próbálkoztam, és a problémát a Microchip fórumára is beírtam, lehet, hogy közben javították, mivel azóta már lett 5.10 és 5.20 is.

Kösz a segítséget
(#) Mate78 válasza potyo hozzászólására (») Nov 30, 2009 /
 
Nem írtam át , ilyesmit, hacsak nem valami hiba folytán.

új címet kapott mert közben a routert álíítgattam.
Bővebben: Link

5.10-es a stack.

üdv
(#) potyo válasza Mate78 hozzászólására (») Nov 30, 2009 /
 
Az index.htm fájlod elejét nézd meg, ilyen sorokat keress:
  1. <a id="led7");">•</a>

A többi sorban elvileg 6,5,...,0 számoknak kell szerepelni a 7 helyén. De én ezt most az 5.20-as stack alól néztem ki, lehet, hogy 5.10-ben valamit elszúrtak itt.

Hogy ne kelljen az ip-vel szórakozni, regisztrálj egy aldomaint a dyndns-en, és a routerben meg állítsd be, hogy mindig frissítse az aldomainhez az ip-t. Ezt szinte minden router szokta tudni, és akkor nem kell többé az ip címmel szórakozni, az aldomain mindig az aktuális ip-re fog mutatni. Csak ha visszaadod a routert, akkor töröld ki belőle, vagy cserélj jelszavat az oldalon.
(#) Mate78 válasza potyo hozzászólására (») Nov 30, 2009 /
 
Igen, nézem, tényleg rossz,valamit én bénáztam el, mert a "másolat" index.htm-ben már rosszul van, de az eredetiben jól.Úgy csináltam, hogy készítettem egy másolatot az eredeti stackről, és azt piszkáltam, hogy megmaradjon az eredeti is, ha vissza kell állítani valamit.

Tehát akkor rájöttél amire akartál?Akkor most van egy kis hiba a stackben?

Köszi a tippet,a no-ip-n már regisztráltam, csak még nem állítottam be.

Amúgy én is köszi, Te is segítettél nekem!

üdv
Következő: »»   4 / 18
Bejelentkezés

Belépés

Hirdetés
XDT.hu
Az oldalon sütiket használunk a helyes működéshez. Bővebb információt az adatvédelmi szabályzatban olvashatsz. Megértettem