Ethernet picplc16b 16f887 problem
Posted: 18 Jan 2010 22:48
I convert the code that work from mikroC to mikroC PRO but now PING program don't work.
Please help me.
Here is original mikroC code
And here is the converted mikroC PRO code:
Where is the error in my code?
Please help me.
Here is original mikroC code
Code: Select all
// duplex config flags
#define SPI_Ethernet_HALFDUPLEX 0
#define SPI_Ethernet_FULLDUPLEX 1
unsigned int SPI_Ethernet_UserTCP(unsigned char *remoteHost, unsigned int remotePort,
unsigned int localPort, unsigned int reqLength)
{
return 0;
}
unsigned int SPI_Ethernet_UserUDP(unsigned char *remoteHost, unsigned int remotePort,
unsigned int destPort, unsigned int reqLength)
{
return 0;
}
/***********************************
* RAM variables
*/
unsigned char myMacAddr[6] = {0x00, 0x14, 0xA5, 0x76, 0x19, 0x3f} ; // set MAC address
unsigned char myIpAddr[4] = {192, 168, 1, 60} ; // set IP address
/*
* main entry
*/
void main()
{
ANSEL = 0x0C ;
ANSELH = 0;
Spi_Init();
SPI_Ethernet_Init(&PORTE, 1, &PORTE, 0, myMacAddr, myIpAddr, SPI_Ethernet_FULLDUPLEX) ;
while(1) // endless loop
{
SPI_Ethernet_doPacket() ; // process incoming Ethernet packets
}
}
Code: Select all
// duplex config flags
#define Spi_Ethernet_HALFDUPLEX 0 // half duplex
#define Spi_Ethernet_FULLDUPLEX 1 // full duplex
unsigned int SPI_Ethernet_UserTCP(unsigned char *remoteHost, unsigned int remotePort, unsigned int localPort, unsigned int reqLength)
{
return 0;
}
unsigned int SPI_Ethernet_UserUDP(unsigned char *remoteHost, unsigned int remotePort, unsigned int destPort, unsigned int reqLength)
{
return 0;
}
/***********************************
* RAM variables
*/
unsigned char myMacAddr[6] = {0x00, 0x14, 0xA5, 0x76, 0x19, 0x3f} ; // my MAC address
unsigned char myIpAddr[4] = {192, 168, 1, 60} ; // my IP address
// mE ehternet NIC pinout
sfr sbit SPI_Ethernet_Rst at RE1_bit;
sfr sbit SPI_Ethernet_CS at RE0_bit;
sfr sbit SPI_Ethernet_Rst_Direction at TRISE1_bit;
sfr sbit SPI_Ethernet_CS_Direction at TRISE0_bit;
void main() {
ANSEL = 0x0C ;
ANSELH = 0;
SPI1_Init();
SPI_Ethernet_Init(myMacAddr, myIpAddr, Spi_Ethernet_FULLDUPLEX) ;
while(1) // do forever
{
SPI_Ethernet_doPacket() ; // process incoming Ethernet packets
}
}