اطلاعیه

Collapse
No announcement yet.

pic18f97j60 ethernet با mikroC

Collapse
این موضوع بسته شده است.
X
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    pic18f97j60 ethernet با mikroC

    سلام به همگی :smile:
    دوستان اگر یادشون باشه ، قبلا یه همچین تاپیکی زده بودم که میخواستم میکرو pic18f97j60 را همراه با ethernet راه اندازی کنم. اون موقع میخواستم با mplab این کار را انجام بدم اما نشد . حالا اومدم با mikroC انجام بدم . اولین برنامه ای که نوشتم ، اترنت را راه اندازی کرد اما دیتا را روی شبکه نمی فرستد . led ها چشمک میزنند اما دیتا ای را که میخواهم را روی شبکه نمی فرستد . من شبکه را با نرم افزار wireshark آنالیز میکنم .
    دوستان اگر با mikroC کار کردید و یا اصلاً کار نکردید اما نکته ای یا ایرادی به منظرتان میرسه لطفاً بگید . اینم سورس برنامه :
    کد:
    #include  "__EthJ60.h"
    
    #define Ethernet_HALFDUPLEX   0
    #define Ethernet_FULLDUPLEX   1
    
    unsigned char  myMacAddr[6] = {0x00, 0x14, 0xA5, 0x76, 0x19, 0x3f} ;  // my MAC address
    unsigned char  myIpAddr[4] = {192, 168, 20, 60 } ;          // my IP address
    //unsigned char  gwIpAddr[4] = {192, 168, 20, 6 } ;          // gateway (router) IP address
    //unsigned char  ipMask[4]  = {255, 255, 255, 0 } ;          // network mask (for example : 255.255.255.0)
    //unsigned char  dnsIpAddr[4] = {192, 168, 20, 1 } ;          // DNS server IP address
    
    unsigned char  destIpAddr[4] = {192, 168, 1, 255 } ;          // my IP address
    
    //unsigned char  dyna[30] ;                       // buffer for dynamic response
    
    
    unsigned int  Ethernet_UserTCP(unsigned char *remoteHost, unsigned int remotePort, unsigned int localPort, unsigned int reqLength, TEthPktFlags *flags)
        {
        return(0) ;                      // return to the library with the number of bytes to transmit
        }
    
    
    
    unsigned int  Ethernet_UserUDP(unsigned char *remoteHost, unsigned int remotePort, unsigned int destPort, unsigned int reqLength, TEthPktFlags *flags)
        {
    
        return(0) ;      // back to the library with the length of the UDP reply
        }
    
    
    
    
    void main() {
          unsigned char txt=0;
          Ethernet_Init( myMacAddr , myIpAddr , Ethernet_FULLDUPLEX );
          Ethernet_Enable( _Ethernet_BROADCAST | _Ethernet_UNICAST );
          UART2_Init(9600);
          // CMCON = 0x07 ;     // turn off comparators
          //PORTA = 0 ;
          TRISA = 0xfc ;
    
    
          while(1)
           {
               txt = Ethernet_sendUDP( destIpAddr , 10001 , 10001 , "salam", 5 );
               UART2_Write_Text(txt);
               Delay_ms(300);
           }
          
    }
    هر وقت خواستید کاری بکنید، چهل سال عقب و چهل سال جلو را در نظر بگیرید. "بابابزرگ"

    #2
    پاسخ : pic18f97j60 ethernet با mikroC

    destIpAddr باید کامپیوتر مورد نظر باشه . بقیه آدرس ها رو درست وارد کردید ؟ در ضمن توی ویندوز خیلی سخته با این سبک متصل بشید . چون میکرو رو در حالت هاست یا سرور یا کلینت در نظر نگرفتین ، مشکل شناسایی دارین . توی لینوکس بسیار راحتتر آدرس رو پیدا میکنید و راحتتر ( بدون مشکل ) کانکت میتونید بشین . از سمپل های دیگه ی میکرو سی استفاده کنید . مثال که زیاد داره ! این فقط آشنایی اولیه با برنامه هستش .
    if all men are the same
    then
    why do women take so long to choose one ?

    دیدگاه


      #3
      پاسخ : pic18f97j60 ethernet با mikroC

      من پیشنهاد میکنم به یه سوئیچ شبکه وصلش کن بعد سئیچو به کامپیوتر وص کن

      من مستقیم که وصلش میکنم سالی یه بار نمیدونم چی میشه کار میکنه oo: . همشم قط و وصل میشه ولی وقتی به سوئیچ مودمم وصلش میکنم خوب کار میکنه !
      پشت به کنکور ، رو به سربازی...

      دیدگاه


        #4
        پاسخ : pic18f97j60 ethernet با mikroC

        سوئیچ خوب کار میکنه چون شما زمان تاخیرها رو رعایت نکردین . اینتراپت هاش رو باید تنظیم کنید اگه زیربنامه ای به برنامه ی شبکه اضافه کردین . تقریبا مثل کار با پورت USB میمونه . باید دائما فراخوانی بشه وگرنه ویندوز پرتابش میکنه بیرون ! اما چون سوئیچ سورسش مثل لینوکس هستش ، بهتر باهش راه میاد ! همین !
        if all men are the same
        then
        why do women take so long to choose one ?

        دیدگاه


          #5
          پاسخ : pic18f97j60 ethernet با mikroC

          من خیلی شیک و مجلسی برد ایترنت سایتو خریدم. به برنامشم دست نزدم !
          البته اگه میدونستم همون نسخه ی win avr رو میفروشن همچین شکری نمیخوردم نمیدونم چی شد فکر کردم سورسشو آوردن رو کد ویژن. :rolleyes:

          حالا با توجه به اینکه من اصا برنامه رو انگولک نکردم . چرا اینطوری میشه ؟ (صفه ی اچ تی ام الی که لود میکنه همون .on و off برا 2 تا led و دو تا خط lcd رو داره و دما و ... ؛ مصمئنا دیدنش)
          پشت به کنکور ، رو به سربازی...

          دیدگاه


            #6
            پاسخ : pic18f97j60 ethernet با mikroC

            نه جانم ! من این برد رو ندیدم . با AVR هم اترنت کار نکردم . اما اگه از سایت خریدین من قبلا هم شنیدم که بدون مشکل کار میکرده . از مدیران خود سایت و مسئول همون قسمت بپرسین . جیگر این بخش مال PIC هستش نه AVR عزیزم !
            موفق و شاد باشید .
            if all men are the same
            then
            why do women take so long to choose one ?

            دیدگاه


              #7
              پاسخ : pic18f97j60 ethernet با mikroC

              نوشته اصلی توسط josef2600
              نه جانم ! من این برد رو ندیدم . با AVR هم اترنت کار نکردم . اما اگه از سایت خریدین من قبلا هم شنیدم که بدون مشکل کار میکرده . از مدیران خود سایت و مسئول همون قسمت بپرسین . جیگر این بخش مال PIC هستش نه AVR عزیزم !
              موفق و شاد باشید .
              oo:
              سوال در مورد Ethernet و ویندوز بود ، کاری بی این نداش که شما فقط pic بلدی جیگر
              در کل ممنون از راهنماییتون
              خوش باشی
              پشت به کنکور ، رو به سربازی...

              دیدگاه

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