From 2ce32a7f1e7f14f2f1b4b1f1d815ef510e8b1509 Mon Sep 17 00:00:00 2001 From: maxxir_w Date: Sat, 23 Mar 2019 12:59:00 +0400 Subject: [PATCH] Added Blynk application helper files --- .../Check out m1284 + W5500 app I've made.txt | 8 ++ ...Screenshot_2019-03-18-13-37-20-278_cc.blynk.png | Bin 0 -> 75477 bytes .../Blynk_application/app1_m1284p_and_W5500_QR.png | Bin 0 -> 11014 bytes .../Blynk_application/app2_m1284p_and_W5500_QR.png | Bin 0 -> 10687 bytes .../main.c | 124 +++------------------ 5 files changed, 25 insertions(+), 107 deletions(-) create mode 100644 20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/Check out m1284 + W5500 app I've made.txt create mode 100644 20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/Screenshot_2019-03-18-13-37-20-278_cc.blynk.png create mode 100644 20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/app1_m1284p_and_W5500_QR.png create mode 100644 20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/app2_m1284p_and_W5500_QR.png diff --git a/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/Check out m1284 + W5500 app I've made.txt b/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/Check out m1284 + W5500 app I've made.txt new file mode 100644 index 0000000..85bad8e --- /dev/null +++ b/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/Check out m1284 + W5500 app I've made.txt @@ -0,0 +1,8 @@ +Hey, + +I've made m1284 + W5500 app. You are welcome to try it out! + +To start using it: +1. Download Blynk App: http://j.mp/blynk_Android or http://j.mp/blynk_iOS +2. Touch the QR-code icon and point the camera to the code below +3. Enjoy my app! diff --git a/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/Screenshot_2019-03-18-13-37-20-278_cc.blynk.png b/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/Screenshot_2019-03-18-13-37-20-278_cc.blynk.png new file mode 100644 index 0000000000000000000000000000000000000000..cbd18d15f857c6e549085df199dc640be68a0897 GIT binary patch literal 75477 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 literal 0 HcmV?d00001 diff --git a/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/app2_m1284p_and_W5500_QR.png b/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/Blynk_application/app2_m1284p_and_W5500_QR.png new file mode 100644 index 0000000000000000000000000000000000000000..a45c06ec5695120aab2ff9e3f3193489dd029867 GIT binary patch literal 10687 zcmdT~d03NIx({W*7Fis)ptyjxv|OQRF+mc-rokczL1ZhDip5G2s0BoVgjKX<5DHpF zB_?5$gdH)VqL^SSiv<%R30o9UA_+@Esv%%l?}<*UR_%1=&b`mQf5G#ecRMHN-G1-M z+>LhE(^;(pfk5;;cDn6>K;8lWz5{tz{U>oXsv7*!jNR_xucfU8UH)Af1hO9D;kM2H zC|O2vI$Ul4y<6#frqErh4v_noh+jI}ptk(Sk6Ty41PhZZ*Pq@={rHjXs>>BuQZ{K6 z@BF3r>eZ{Eo*PT=x1}auP21zSaR_A({#-lzHKg?H;f(_j&y6E{u4|m#(_VT+^FK?^ z?i$nH?YZ%MmtNu7J)26`xNa;B@%+EX&>m%GzciP+wB*vX@I*4y6!KKrX71wXvG0!J zq#1@~Xvb$)9Nsx0DGzl@*t+nSU;f&iy7XiwF4EG<>BNoFNLn>zp(Op3{bAO$?IDOc z@?L1uJYhhX>1nVbYK(-B#4eSsfAn2QZSq$x8oQ?hmj0;~2TeGeP~3&Oz4v;!P}uKc z^=`rky^#f6NKP%KY-+`mb2a%t5T9}BJt;{yS~)6zBfW!W-}cvqkL&JV9uNXUT7@$0^hn_t z8=T7b$IMD-nhh?VLecnAxyl<_ZNi){d(hl%deem2$mK$=5VLQCMpnaPgNzAvRERfC@C>x+Kj8iorxy%#=GTf z=j|wpN)Sn{`R1#+4YSE2*cZ^WL0=+H zzaZb?%xA~8V)yi4V@Pf->fcl)e(*a9G;lwNhIsvg7;(n8(3+GXxHlHkrnKl<>nyrs zpoa}vV8@Wa)td0Qgh--6AwGZn;e`zpjkUdJcE&!kA-|;X@zo=^jvpa|QA>b4RqJLwrOedj7Z2 zPAexEGLv=PM{OglCV_;9E2_Fsj5B?eFUYhHeYCBzMbO#nynqCoTixr(fsqpe$BOzr zq}|DCE9fyCzSpgMY@Qj3(!6g#?IUj`D}kmZzpCq(4OYHXEA&KvpZ+~!RhswFr z)0+}yU!4@tQq#_;NLBxi>N70)X{;lYu@CLU+!xR?d1=TV%{RRn<77o4~#mNB=aBrUd>i+O#L`+Xdc}7oV zMIUAA@4wL7h@&U<>MaJ3^Lw~2(P~Ksckdc@f*+D)|GVUZOR1VQK_@T$b;yV<9$az@8`%;Z{y+DFp5nO?MCC#JP(Am365vR*zs!#Q~)T0WQ3?7U)*lx-b zy8+VeVM_x2V~Z|n=O>yQ{7FXnt9x}a7yOWanRPi9T4N;IgGYZE5n^pI?IT+O4E{YM z7qahvkw}BT*VP(6)Lq2V+Y-QF>;q=?`G;~zUBt!fSJMKY-sUnJpIo#<9-z032+oY| z(z0>k_RVOhi=9VrS@Dy%NA*avDJJLre2O<4Gw0z4hL$lwR?D+;;x-t*K^8Z*)H4@a zuT6+Em@Bx6#*ygajB{8J{E=vK9Y2Xv znTUnh{!1TmGf&W=it#~H*KBdQs%RwGxRIY@BxK#-10&+KSCqVF*`N4$g0NXWWmh{% z12Ky?DDlP9SmxhfkQn3Seek9(qVr>GS?qO#Q9GWof1;f?gAb}bn@($Z))aA2h@`Eh@Pq2fk5!-QFHwEf0V9tvYaeeWKG7%I)Qw(YdG7~E*tlfEKK zJ`?orJqWp}azY?wf-12?p~J=SdeHAaP6^V-*B|}pE6v?92@HgHP~|z+KB&?u#9OGoCC$PC{)Z8S*qenVFYt0%e_y2SX+!CeRag&5o9{ha(8n->Os4y&^ne_HYlS=YV?e zBLb;Z&j6H1S5bWFR11PJm-w-5XC@nLll4$z%H)(nPfwEg5t{o7KlFf|K$TnyE#p%x1epd3 zYE=bM(X86~H|QowkZ{h5dEF=3a$IbmgR7Hkk~FHS0@$?Hkq~6;C=;dF!ADKhxrLG! zH8|>f66z;9Tth(|5f-V6$BLAn6>ml_rG-Pdjok8>yOWfF7=(QVf&t&bsdiqe}kzgGQ3Hl|Pw< zCxUWYfWdQiIRPR);4DSSpU2UQi4vPG&^>F00PXyVwGYhIsm(Z{+g&N zX}3D`z?{&b+>k8Gb_tNu&aH$CM7w2Vy;U8HDKb5i)_u!Zris zV>T^$DJZ5fmB;g!Y7Yv zFg2>A1?sb_sQ1e~^E)O1(o?u#C(GILs#%{XbG|2}dN-DM{b@;WSMS9txik>UpZrgw zm-g}rOY2cmiCBE~pg-^Mg;haeE_@i@IW)6i1ncFZF)uN@-Lx!zyl7j;7hxfp3ts%H zC#C5$(CwDFD<(vkAZlR}gW(?W!`Vyilodrf966 z;uVg3Vq4RkLc<5D_H3JwfPUI_^fh}gfIw6fMU~ExW^44TO}O*C!E@?zmq{I3rd(Y% z_c6bbyYB0n9mQtGej?1V9>pBEF1Z7>@s!Y+kw;>T#kjAnU5zo$smTDR`GCAI)Qbk@ zqJPH$;r1^j%LG+V-o%nW!?i+Mz0OgPAg{VoGW>r>2RN%@R?)V^TWzLuI+?1X7Bqkr z{r#5GB@nSGM8g9GBy)_Exz=IBBO6w#ozFpyT&FHP2^f6}zz7FjKob7jf+CJDd*9KCSEt@uY0R7zy zK=e3(YmJA2sV zmm!veon>p@XZ&)uVdOT(Ef5ouq{SZb>FTfmu71yvirQujPZ|v(3^{gq4pZ81+NgsG z$+V-4Ti2PukZWDnKqTa+>_9xBwIsh76(FY;yCc<)y+$4Z)C<2=OLo@3O z`yWDt5V*umJW$*o1l;#eN@3RqkSKMPg)Ofb8qLkT)3_tA7WjIkLw8V^4UPa$+X~?# zPA6O~dy)qt$E&uyLCV9ft7+h9;3ATaY+!>hNVwPDZ%9%!mY}UPx;dHu{>+>T6^eM_>JX!#X9nENJra#dT zXpvNLUJ;e1jy-2q_4>oHhr}2Fs<3b*Bc-FJ5JJYjpGR$Op#6l1g!Wdfb(q+}CznY~ zc_2kPp9QL4V*pid*YN+Gh6BXqJC*3=620%@4Tqpb-S0oHzEm}{Z?H%iF?`RP+u*ox zVD`NS2`+b7BK2KBSAOGZ;0@Ko)H+N|O3g8~&Ig1LXTlHo`1@AszO#P!SP`DKZ6W|W z0AQqvZY+T8@7xffZ?s+NPA3@Dba@@`sU*j;en`c!X0v6M5RS7K3S2%U2z#+)Kegb) zT%~ZaNI9;q28+5tml?QRg5Z|tYgY#$B(tEnEfHqm%V40F?*1tuCpJQ@jeCs^V3;ol zvZ_&yK>;dHff~Vjp~wr=jJ(MJaAlP|7{5?yB?+mOsf`D9qRDf+qp2b?3C|<{kNB6M$9GHm#d9`j%Fb)jIYDe@&&H+rYbIPVr zWWlB!Rv=xhX7{aV(|-njt#vm(uec$~rqF_0I3zp)7diBK{O?!ghi7Q35%QdplO3@+ zle(@iD*-?}J}`z6PFlB`+yHtAG!_y}3it<16%DV+=9{{n`^~5h&@P<0I5Zf1Orig? z1NZ7B9NTc{VDX5hEx~|R03kcdD;e_p0Wo)@#rfi0-!KaBstwH@^GSO5!8H-CdCSt* z?AV}|9ROn{Z8jz=YF%7T9L+DNJqCb__)|uy859~;3roeb{iC@}i}Ndn52moSzg8Dn z?Ku&$6E7`NG@@5Efb!>-6|$nO6us8Kb!kOh_H+%pXd zOL_P47MD;>`?TgnlqJl`nm0)SHyOYy3e?}ut5mE1K-T3e29?sX9yE>^_-w0MlKFe4 zkc?w%T!&djYSp+IE))4RHYD@;0pt(9Km$M* zdF#3zYzd%yaU8lqvsK2P)*4;XC<7WY>yV&-QHkxoD=*0U*mcRk^HT@y8GAOFJawcEvDAmhaBqkz^dNkM8AbnY+#J~dXD8P(mt3*@<%6z>4uLd3nI6|`7gsH}lSB@6DPf7e?3UoM!V_9%)DlHuJvmtbMEt_e#uWQs0*&lyc39x5@ z6y)ZKsj|Wr>TQm4n7oirasmxH#mt!5XLRiv7#d{$gAZheiytH7^3}A8j1uffr6M`+ zq5`U{zGQ4Tmx1cjEhNH;{s1}v;94v+bK%y8ue5hNt#z^j9laG!buGVn@!^WCnq_7= zW*|^xB>2q1@pjk%UJnjoxc!1z_axA6|Ku=#G z$$CXN*vq)8n97B~pG)SMx+;@=L48V|zwZ^c6g>*eVVAj=_K&GCy+4-gp!wjDBphtw z)=hvvv2jt^_sJ+>5Qa)&(|QE`YsfPcZ4htRfl`ask*U)54Trot82ptRmLAnJOy+dS z8f8hF#GyjXl_afDA0i;tqZo4GNs#=@@ zg4Yh^#$z0#vT^ydIeId0D{Klm8E#jT4Emh2*g)<|Ffk#kVrnQPyeei3_2=xo65_WPClyk2e~3*!an7UnadUGuMLoJ^yEjP`Hd2EpEF;h@g$M z{VZsh9@9?SKa%v2iMo|pw;O_hh`FRajDuuN#@unxUB2~2}`eaLo%qFPQQ_RY-rCI5*>Ng$_@5{a>*mYJPgS zCFmcMJ{0=;I@LnJBY>iT%C1Rse4Gz?qU_htAmjis(Gs)O;SSo918*Iw*3`zah^P4HKT7E%B& zV%(x`l1m)8F%2Sb;lOeJ@ZpHSZI$I`ny<%lZ!-WjnDbvVuxuR>RHX;{S!Tvb$fvQj z>bwy03?w#wrV=U1c1(OW>LZe45O$S?-2#uW0R;9@f20~$?GR z`_!Yp1~Y63=)-Y#ao>Ly&oxb$7J@#oO$itM&H`|IYT8VH+XN-{Qz~m(4Fx{~qW``H zGW3bGe%Xt=Q+=fb0~)-igB=p(yyLWa>OA{wbCH>`=b*XAtI;2z3fFt_D4>TbV~7yhj8 zZBu%Emql~elH74d{*fN_cKt-fW4;fw7sQT8rNwlv8pob^yXDbbDMKL@fP85-Yr+E~ zeq@EcPvCA9COCCbMyYL!6LZLns17*7ueLTdfQ5Wi^^Ib#6QDBSp#{!;q*B?QzPn9) z8I(xK3Ok!k0MD%Lv0lD?-Njp=j*(gn=68XIDE0e-SB&=o*iAn4Dj&}j%#Xms523Fr zf^}uRpbjAgX)7nfJF5f#s&M8AM;WmhmEQo{fen3oU70fh&mPTyp;7lP zW$S5ZXGMGlxvII8XgRJRu&F4l4LOP+GXmGY=p^uI291-O(d-C@Di21%D;eJImONZr zFkjq;3ZnvCHG1j<2ZG~Gp2agvj9;RhLqb+pG#JX@k;3_-JMVxAluiyPK7M$OUG3mj zHEu{QX{(Ewp#qGE(n|m!4PFMF^^-STG&jghAP9YbysK`#n8^0>`1>!kfCLZT6=f30 zc85|NEyVqJcP)1i5%!i1doo2;c!g+#Z6}EIa3aXw=>&I#GN)1X_|yd~h{kK3o=1$N z#Y6ds(155s-V|?ee@sN+NU)Yn5f>{BM*M{Xq1E73zGE>$FdhLOf4>hAX`mkc+u68S zIf1OqQICGsAh9wHnC6A+v=R5xHhcyxADnmhbK0htKKBEkjXfZ#QpbuU?~Yv0Ts|1} zfWeZumHT|wPdaCwX9k{4gsTI=cNB)&s~`WSi;N7Zew~!Nt|su`A{F4R{+=7Z`F6}w m{mc;d|L#rU8=g5XYUTM8IA5O6^#d<5As#!>ZZ+HYr~enQy`7@~ literal 0 HcmV?d00001 diff --git a/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/main.c b/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/main.c index 847a171..ffaad93 100644 --- a/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/main.c +++ b/20_m1284p_BTLD_WIZNET_BLYNK_FTPD_FATFS_SDCARD/main.c @@ -4,6 +4,21 @@ * Created on: 22 нояб. 2018 г. * Author: maxx */ + +/* + * (20) Combine together two examples: + * [19_m1284p_WIZNET_blynk] + [18_m1284p_BTLD_WIZNET_LOOPBACK_FTPD_FATFS_SDCARD]. + * To upload Blynk Application code via PC ftp client like TotalCommander, WinSCP, etc.. to m1284p+W5500 users board, + * and of course work with Blynk Application client. + * + * PS. + * Further correction, or advices about the code from BLYNK authors (Vladimir Shimansky, Dmitriy Dumanskiy ..) is highly desirable. + * Because I'm not the author of BLYNK libs. And I don't quite understand how this should work in the right manner. + * + * Author of unofficial porting to AVR Mega1284p/644p + W5500 Ethernet NIC (Wiznet sockets library using without Arduino): + * Ibragimov Maxim aka maxxir, Russia Togliatty 23.03.2019 + */ + #include #include #include @@ -24,99 +39,6 @@ uint8_t gFTPBUF[_MAX_SS_FTPD]; //512 bytes -/* - * (18) Base template minimal for FTPD bootloaded application with TCP/IP loopback demo (m1284p) - * TODO: - * OK (v1.1) Add FTPD authorization abilities - * (17) Combine together (16) + abilities to enter BootLoader (reset with WDT), - * when occur event upload via FTPD to SD file with name <1284BOOT.BIN> (see STOR_CMD into ) - * TODO: - * OK (v1.2) - * OK (v1.2a) Some minor changes, added key - * OK (v1.2b) Some minor changes - * OK (v1.2d) Changed bootable image to 1284BOOT.BIN - * Notes. - * Works in pair with BootLoader project: - * Also see to set correct fuses - * - * (16) HTTPD + FTPD + FATFS SDCARD - trying combine together projects: - * <12_m1284p_WIZNET_HTTPServer_SDCARD_pages_v2.4d> + <15_m1284p_WIZNET_FTPD_FATFS_v1.4> - * TODO: - * OK (v1.0)1. Initial realize with some minor optimization - * OK (v1.1)2. Add additional 60sec timer - for and events - * - * (15) FTP Server +FATFS SDCARD (PC-side checked on Win7 / WIN7 (console client)) - * TODO: - * OK (v1.1) 1. doesn't work properly on WinSCP, but WIN7 ftp command OK. - Fix it (in first approach with fake data show first ~45 elements from root SD-CARD FTPD) - * Works with WinSCP put/get/delete/refresh - Marvelous! - * PS. Checked work with the next FTP clients (WIN7): - * WINSCP, - * ftp - native WIN7 (terminal-style), - * TotalCommander - need to add new type server with the next template: d ? SSSSSSSSS TTT DD YYYY nnnnnnnnnnnn - * - * OK (v1.1) 2. WIN7 ftp (i.e. downloading file from FTPD SDCARD-device to PC, see ) - works but after download file, progress line still filling ~ 3-5 sec. - Fix it. - * OK (v1.1) 3. WIN7 ftp (i.e. uploading file from PC to FTPD SDCARD-device, see ) - not work properly, device just reboot. - Fix it. - * OK (v1.2) 4. RAM usage optimize : - * OK (v1.1) A) printf(..) change to PRINTF(..) (i.e. printf_P(..)) - * OK (v1.2) B) sprintf(..) change to SPRINTF(..) (i.e. sprintf_P(..)) - Save ~ 900 bytes RAM - * 5. Optimize : - * OK (v1.3) A) To show ALL elements add inside -send(DATA_SOCK, dbuf, size); in portion by 10 elements - until All elements being sent - * OK (v1.3) B) Show real DATE(without TIME) of file from SD-CARD FTPD (Show only DATE without TIME (time showed with error, to show correct need to implement MLST and LMSD extension commands, defined in RFC 3659 )) - * OK (v1.3) C) Try decrease: gFTPBUF[_MAX_SS_FTPD]; //512 bytes - for save RAM resources (optional) - * OK (v1.4) Fix <_FTP_DEBUG_> in undefined state (at ftpd.c), further optimize (at ftpd.c) - * - * (14) FTP client (Active) +FATFS SDCARD (PC-side checked on Win7 ) - * Notes: tested only Active mode with ASCII type (Not sure that PASV mode works properly..). - * TODO: - * OK 1. Without exist FTP server (PC side), device reset always (decide not fix yet..) - * OK 2. <1> command (ls FTP server contents) received no more then _MAXX_SS(512) bytes - need to fix - * Full implement Done with _MAX_SS_FTP=512 checked on ~35 elements show OK (~2362 bytes received) - * !!Below is deprecated decision (read above)!! - * Change at ftpc: _MAX_SS (512 bytes) to _MAX_SS_FTP (2048 bytes - defined at ) - now show OK ~ 25-30 elements from FTPD directory - * (to full implement need fix at: -~355 line - if(gDataPutGetStart){ - switch(Command.Second){ - case s_dir: - PRINTF("dir waiting...\r\n"); - if((size = getSn_RX_RSR(DATA_SOCK)) > 0){ // Don't need to check SOCKERR_BUSY because it doesn't not occur. - PRINTF("ok\r\n"); - memset(dbuf, 0, _MAX_SS_FTP); - if(size > _MAX_SS_FTP) size = _MAX_SS_FTP - 1; - ret = recv(DATA_SOCK,dbuf,size); - * - * ) - * OK 3. <2> command (ls client side FATFS SDCARD contents)file name is empty (problem in scan_files()) - need to fix - * OK 4. Auto-login to anonymous(pass:1234) for test purposes (look at - Responses [R_220/R_331] ) - * OK 5. Add serial terminal session commands (look at ): - * . Test Message - * . Sta (uptime and freeram) - * . Reboot the board - * - * OK 6. Fix baud-rate issue on 115200bps 16Mhz - * OK 7. Add reaction on after not correct authorization - * (Add at - Responses R_530) - Reboot the board - * OK 8. Test and fix command: 5> Put File to Server (checked only active mode(passive not tested)) - * OK 9. Test and fix command: 6> Get File from Server - * OK 10. Add command: 8> Delete File from FTP server - * OK 11.Try add abilities to execute custom FTP server command. (Something like NOOP, HELP etc..) - * OK 12. Disable PASV mode (Tested - with bugs) - * - * - * (3) WIZNET loopback + FATFS (as template) - * + Added FATFS init (from <02_m1284p_FATFS_Chang_tst>), - * Trying WIZNET5500 init with using official Wiznet ioLibrary_Driver - * working ping, assign static IP - * LED1 = ON when phy_link detected - * and loopback test on TCP-IP:5000 and UDP:3000 ports. - * use Hercules terminal utility to check network connection see: - * - * https://wizwiki.net/wiki/doku.php?id=osh:cookie:loopback_test - * https://www.hw-group.com/software/hercules-setup-utility - * - * Author of porting to AVR Mega: - * Ibragimov Maxim, Russia Togliatty ~12.2018..02.2019 - */ //***********Prologue for fast WDT disable & and save reason of reset/power-up: BEGIN uint8_t mcucsr_mirror __attribute__ ((section (".noinit"))); @@ -142,7 +64,7 @@ volatile unsigned char sig_reset_board; // Flag to reset board //*********Program metrics const char compile_date[] PROGMEM = __DATE__; // Mmm dd yyyy - Дата компиляции const char compile_time[] PROGMEM = __TIME__; // hh:mm:ss - Время компиляции -const char str_prog_name[] PROGMEM = "\r\nAtMega1284p v1.1 BootLoaded BLYNK + LOOPBACK and FTPD server && FATFS SDCARD WIZNET_5500 ETHERNET 23/03/2019\r\n"; // Program name +const char str_prog_name[] PROGMEM = "\r\nAtMega1284p v1.2 BootLoaded BLYNK + LOOPBACK and FTPD server && FATFS SDCARD WIZNET_5500 ETHERNET 23/03/2019\r\n"; // Program name #if defined(__AVR_ATmega128__) const char PROGMEM str_mcu[] = "ATmega128"; //CPU is m128 @@ -731,7 +653,7 @@ int main() if((millis()-timer_link_1sec)> 1000) { //Just for test bootloader works - led1_tgl(); + //led1_tgl(); //here every 1 sec timer_link_1sec = millis(); @@ -761,18 +683,6 @@ int main() } } #endif - //Check ETHERNET PHY link - //Shouldn't used here, LED1 handle via HTTPD - /* - if(wizphy_getphylink() == PHY_LINK_ON) - { - led1_high(); - } - else - { - led1_low(); - } - /*/ //!! SW1 pressing action if(!sw1_read())// Check for SW1 pressed every second