Hola:
Me gustaría conectar 2 pic mediante ethernet, utilizando el controlador enc28j60 conectado por SPI, y que intercambien variables entre ellos.
Estoy utilizando un 18f2455, y programando en CCS con el driver del enc28j60 que viene en el PICC. De momento este es el código que tengo, para probarlo en proteus y ver si sale "algo", enviando solamente un byte:
Lo que pasa es que en la instrucción "enc_mac_spi_out_byte()", que supuestamente es la que hace enviar datos a través del spi havia en el enc28j60, no hace nada, parece como si no enlazase con la función adecuada.
¿A alguien le gustaría unirse al proyecto o alguien tiene algún ejemplo en el que apoyarse?
Un saludo y gracias
Me gustaría conectar 2 pic mediante ethernet, utilizando el controlador enc28j60 conectado por SPI, y que intercambien variables entre ellos.
Estoy utilizando un 18f2455, y programando en CCS con el driver del enc28j60 que viene en el PICC. De momento este es el código que tengo, para probarlo en proteus y ver si sale "algo", enviando solamente un byte:
Código:
#include <18F2455.h>
#fuses HS,NOWDT,NOPROTECT,NOLVP,NODEBUG,VREGEN
#use delay(clock=20000000)
#use rs232(baud=9600, parity=N, xmit=PIN_C6, rcv=PIN_C7, bits=8)
#use spi(SPI1, MASTER, BAUD=1000000, BITS=16)
#define ENC_MAC_USE_SPI TRUE
#include <./archivos/enc28j60.c>
#use fast_io(A)
#use fast_io(B)
#use fast_io(C)
#byte PORTA=0xF80
#byte PORTB=0xF81
#byte PORTC=0xF82
int contador,d;
void main(void)
{
setup_spi(SPI_MASTER|SPI_L_TO_H|SPI_CLK_DIV_4);
set_tris_A(0b00000001);
set_tris_B(0b10000000);
//port_b_pullups(TRUE);
mac_spi_init();
mac_reg_init();
d=0x7F;
for(;;){
enc_mac_spi_out_byte(d);
contador++;
}
}
Lo que pasa es que en la instrucción "enc_mac_spi_out_byte()", que supuestamente es la que hace enviar datos a través del spi havia en el enc28j60, no hace nada, parece como si no enlazase con la función adecuada.
¿A alguien le gustaría unirse al proyecto o alguien tiene algún ejemplo en el que apoyarse?
Un saludo y gracias