int w5200_init(void) { count = 0; sock = 0; fst = &qd[0]; lst = &qd[0]; // Turn everything on W5200_PWR_ON; W5200_CS_STOP; W5200_RST_STOP; // Give it some time delay_millis(200); // Go hard in the paint hard_reset(); uint8_t vsr = read_VRSN(); while(vsr != 0x03) { vsr = read_VRSN(); delay_for_1000_nops_x(8); } write_MR(MR_CONF); write_GAR(gateway_ip); write_SUBR(w52_const_subnet_classC); write_SHAR(w52_const_mac_default); write_SIPR(dest_ip); write_IMR(IMR_CONF); write_IMR(IMR2_CONF); write_IR2(IR2_CONF); write_PHYST(PHY_CONF); return init_sockets(); }
void delay_for_1000_nops (void) { delay_for_1000_nops_x (1); }