سلام به همگی :smile:
دوستان اگر یادشون باشه ، قبلا یه همچین تاپیکی زده بودم که میخواستم میکرو pic18f97j60 را همراه با ethernet راه اندازی کنم. اون موقع میخواستم با mplab این کار را انجام بدم اما نشد . حالا اومدم با mikroC انجام بدم . اولین برنامه ای که نوشتم ، اترنت را راه اندازی کرد اما دیتا را روی شبکه نمی فرستد . led ها چشمک میزنند اما دیتا ای را که میخواهم را روی شبکه نمی فرستد . من شبکه را با نرم افزار wireshark آنالیز میکنم .
دوستان اگر با mikroC کار کردید و یا اصلاً کار نکردید اما نکته ای یا ایرادی به منظرتان میرسه لطفاً بگید . اینم سورس برنامه :
دوستان اگر یادشون باشه ، قبلا یه همچین تاپیکی زده بودم که میخواستم میکرو 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); } }
دیدگاه