اطلاعیه

Collapse
No announcement yet.

ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    #16
    پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

    سلام ممنون شما خوبید؟

    خوب اینکه چند تکه ای بشه فرستاد ربطی به POST نداره POST یه متد بر روی form برای ارسال اطلاعات هست که در بدنه HTML ارسال دیتا میکنه و مزیت های بالاتری نسبت به GET برای ارسال اطلاعات در قالب URL داره که اگه دوست داشتی مزیت هاش رو بعداً بحث میکنم ولی مشکل ما اینجا استفاده از POST نیست چون الان نمی خوایم که اطلاعات ارسال کنیم فقط می خوایم صفحه HTML رو ارسال کنیم که اگه بزرگ باشه به مشکل خوردیم
    در کتابخونه uIP مثل اینکه multi pack پشتیبانی میشه دارم روش کار می کنم شما با این stack آشنایی؟ یه کار فوق العاده قویه که کد به شدت استاندارد و در کنارش document خوبی هم داره :read:

    دیدگاه


      #17
      پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

      نوشته اصلی توسط meysam_b
      سلام ممنون شما خوبید؟

      خوب اینکه چند تکه ای بشه فرستاد ربطی به POST نداره POST یه متد بر روی form برای ارسال اطلاعات هست که در بدنه HTML ارسال دیتا میکنه و مزیت های بالاتری نصبت به GET برای ارسال اطلاعات در قالب URL داره که اگه دوست داشتی مزیت هاش رو بعداً بحث میکنم ولی مشکل ما اینجا استفاده از POST نیست چون الان نمی خوایم که اطلاعات ارسال کنیم فقط می خوایم صفحه HTML رو ارسال کنیم که اگه بزرگ باشه به مشکل خوردیم
      در کتابخونه uIP مثل اینکه multi pack پشتیبانی میشه دارم روش کار می کنم شما با این stack آشنایی؟ یه کار فوق العاده قویه که کد به شدت استاندارد و در کنارش document خوبی هم داره :read:
      اوکی ایشالا کارت راه افتاد با هم این post رو هم ردیفش کنیم...
      کتابخونه uip منظورت پروتکل udp هست؟
      [code=cpp]unsigned char ethernet_udp(unsigned char* data, unsigned char data_len)[/code]
      کد بالا رو میگی؟
      این مدل آره واسه ارسال دیتا با حجم بالاست ولی اینکه اطمینان از رسیدن به مقصد داشته باشه در کار نیست....ولی فکر کنم با udp بشه راه انداختش...
      تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

      www.intelart.ir


      ساخت کنترلر دما PID فازی با AVR [آموزشی]

      دیدگاه


        #18
        پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

        تا به حال با udp کار نکردم...
        به نظرت تو init کردنش باید چ تغییری بدیم؟
        [code=cpp]void ethernet_init(unsigned char *dev_mac, unsigned char *dev_ip, unsigned int port_tcp, unsigned int port_udp);[/code]

        پورت udp باید تو چ رنجی باشه...واسه tcp که میدونم واسه ارسال وب پبج باید پورت 80 باشه...ولی اینجا چی؟
        تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

        www.intelart.ir


        ساخت کنترلر دما PID فازی با AVR [آموزشی]

        دیدگاه


          #19
          پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

          آقا این کد از یه پروژه ایه که قبلا انجامش دادم :
          [code=c]unsigned char ethernet_udp(unsigned char* data, unsigned char data_len)
          {
          return data_len;
          }

          unsigned int ethernet_tcp(unsigned char* request, unsigned char* response)
          {
          unsigned int len;
          int pos;
          char str[20];
          if (strncmpf(request, "GET /", 5) != 0)
          return 0;

          strncpy(str, request + 5, 11);
          len = concatstrf(response, 0, my_web_hyper_txt);
          .......

          {


          [/code]

          چجوری به این کتابخونه بفهمونیم که میخایم از پروتکل udp استفاده کنیم؟فکر کنم اگه کد هایی که تو متد tcp گذاشتم رو بزارم تو udp درست بشه...
          تستش میکنم خبر میدم...
          تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

          www.intelart.ir


          ساخت کنترلر دما PID فازی با AVR [آموزشی]

          دیدگاه


            #20
            پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

            من الان ماژول دم دستم نیست که تستش کنم...ولی یه فکری به ذهنم رسید..اینکه با TCP دستوراتی که از وب پیج میاد رو تحلیل کنیم و از داخل متد tcp متد udp رو فراخونی کنیم و با اون دستوراتش رو بفرستیم...یعنی یه حلقه بزاریم که مثلا پنج بار اجرا بشه و وب پیج رو در 5 نوبت ازسال کنه (از طریق متد udp)
            اینو امتحانش کنید لطفا...
            تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

            www.intelart.ir


            ساخت کنترلر دما PID فازی با AVR [آموزشی]

            دیدگاه


              #21
              پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

              ببخشید دیر جواب دادم جواب پستاتون را جدا جدا بخوام بگم اینه:

              کتابخونه uip منظورت پروتکل udp هست؟
              نه عزیزم udp که پروتکل شبکه است کتابخونه uIP رو یه بنده خدایی نوشته برای مدیریت تمام پروتکل های شبکه HTTP، ARP و ... حتی SMTP که واسه ارسال ایمیله مثل همین فایلی که به من دادید اما فردی به نام adam dunkels نوشته که تز دکتراش بوده و خیلی خوب و قوی کار کرده می خوام یه نگاهی بندازم اگه میشه از stack اون استفاده کنیم برای وب سرور فکر کنم multi pack کار میکنه با درگیر شم برای گرفتن کتابخونه اش برو اینجا و ورژن 1 آخرین ورژنشه بگیر
              https://github.com/adamdunkels/uip/tags

              اینم سایتش:
              http://dunkels.com/adam/

              خوب UDP نسبت به TCP خیلی سریعتره اما همونطور که گفتی از صحت رسیدن دیتا به مقصد اطلاعی نمی ده راه اندازیش خیلی آسونه نوشتن تایعش کاری نداره ولی بزار اگه نتونستیم به عنوان راه آخر بریم سراغ UDP
              اول لطفاً یه نگاه به uIP بیانداز ببینیم میشه.

              دیدگاه


                #22
                پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                [code=c]#ifndef __UIP_SPLIT_H__
                #define __UIP_SPLIT_H__

                /**
                * Handle outgoing packets.
                *
                * This function inspects an outgoing packet in the uip_buf buffer and
                * sends it out using the uip_fw_output() function. If the packet is a
                * full-sized TCP segment it will be split into two segments and
                * transmitted separately. This function should be called instead of
                * the actual device driver output function, or the uip_fw_output()
                * function.
                *
                * The headers of the outgoing packet is assumed to be in the uip_buf
                * buffer and the payload is assumed to be wherever uip_appdata
                * points. The length of the outgoing packet is assumed to be in the
                * uip_len variable.
                *
                */
                void uip_split_output(void);

                #endif /* __UIP_SPLIT_H__ */
                [/code]

                این به درد نمیخوره؟
                تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                www.intelart.ir


                ساخت کنترلر دما PID فازی با AVR [آموزشی]

                دیدگاه


                  #23
                  پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                  فکر کنم خودشه حالا باید درایور شبکه خودمون که ENC28j60 رو به این کتابخونه اضافه کنیم که می خوام همون درایور tuxgraphic رو اضافه کنم شبیه مال فیل شمام هست اینا همه از درایور فردی به نام پاسکال استفاده کردند

                  خوب برم سراغ اینکه درایور رو اضافه کنم می تونید کمک کنید؟

                  فقط یه مشکل چرا بعد از حدود 1 یا دو ساعت unreachable میده وقتی ping میکنم انگار بافر overflow میده باید میکرو رو ریست کنم درست شه با این مشکل درگیر نبودید؟

                  ممنون

                  دیدگاه


                    #24
                    پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                    آره من ماژول رو الان ندارم وگرنه تستش میکردم..زحمت تستش به عهده خودته... :mrgreen:
                    من با این کتابخونه ای که گذاشتم نه هنگ نمیکرد شاید چون حجم وب پیجم کمتر از مال شما بوده...فک کنم همین مدل اسپلیت کار رو حل کنه...
                    شرمنده که ماژول رو ندارم وگرنه با هم ردیفش میکردیم...این کتابخونه ای که دادی خیلی بهش علاقه مند شدم ولی حیف نمیتونم تست کنم.. :angry:
                    تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                    www.intelart.ir


                    ساخت کنترلر دما PID فازی با AVR [آموزشی]

                    دیدگاه


                      #25
                      پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                      نه به page ربطی نداره الان فقط دارم ping میگیرم درست کار میکنه بعد 1 یا 2 ساعت unreachable میده... :cry:

                      خوب من کتابخونه بد به کسی نمی دم! عالیه البته پیچیده است من یه تست باهاش راه انداختم چند وقت پیش شروع کردم یه تست با مثال وب سرورش بنویسم. نتیجه اش رو میگم

                      دیدگاه


                        #26
                        پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                        آقا چی شد؟...هنوز همون جوریه؟...اون تابع اسپلیت کار کرد؟
                        تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                        www.intelart.ir


                        ساخت کنترلر دما PID فازی با AVR [آموزشی]

                        دیدگاه


                          #27
                          پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                          هنور نتونستم درایور ENC28j60 رو بهش اضافه کنم و مثال وب سرورش رو راه بندازم... خیلی پیچیده است امروز ان شالله وقت کنم روش کار میکنم نکات خیلی ریزی وجود داره توش یواش یواش دارم نا امید میشم ازش

                          دیدگاه


                            #28
                            پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                            اشکال نداره...پس آخراشی
                            نا امید نشو چون ممکنه یه قدمی هدفت باشی و ولش کنی...باهاش لج کن!.. :mrgreen: :redface:
                            تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                            www.intelart.ir


                            ساخت کنترلر دما PID فازی با AVR [آموزشی]

                            دیدگاه


                              #29
                              پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                              سلام یه فایل پیدا کردم که uIP رو برای ENC28j60 و AVR پورت کرده می تونید کمک کنید برای کدویژن تبدیلش کنم؟ من اینکار رو کردم اما مشکل داره و کار نمیکنه
                              ممنون
                              [ftp=ftp://en.klinkerstein.m-faq.de/index.php/MicroWebServer/Downloads]
                              http://en.klinkerstein.m-faq.de/index.php/MicroWebServer/Downloads
                              [/ftp]

                              ping دارم الان!

                              دیدگاه


                                #30
                                پاسخ : ارسال صفحات بزرگ HTML به کمک وب سرور و ENC28j60

                                معدرت من چند روزی نبودم...یعنی الان اون مشکل PING نشدن بعد از یه ساعت حل شده؟
                                بله میشه پورتش کرد...
                                کجاشو مشکل دارید؟
                                تولید کننده تجهیزات برنامه پذیر اتوماسیون صنعتی

                                www.intelart.ir


                                ساخت کنترلر دما PID فازی با AVR [آموزشی]

                                دیدگاه

                                لطفا صبر کنید...
                                X