EUR
You can find a detailed description of this board at Eur's JalEthernet site. Compatible with 40 & 28 pin PICs. Connectors: ICSP, RS-232, RJ45, Power, Port_A&E, Port_C. Jumpers to enable/disable: LED output, RS-232, power supply, and Power Over Ethernet. A powerful board! Check prices in Eur's website!
Special files in sources/smalltcp:
netconf_Eur_28.jal
net_Eur_40.jal
net_Eur_28.jal
netp_Eur_40.jal
netp_Eur_28.jal
Assign PIC pins in netp.jal, 40 pins PIC:
-- This is the standard JAL "blink the LED" pin.
-- Not required, but very handy.
var bit DEBUG_LED is pin_a0
pin_a0_direction = output
-- ISA address bus, low 5 bits
port_d_direction = all_output
var byte isa_addr is port_d
-- ISA 8 bit data bus
port_b_direction = all_output
var byte isa_data is port_b = 0
var byte isa_data_direction is port_b_direction
-- ISA read and write strobes. Both are active low signals
var bit isa_ior is pin_d5 = high
pin_d5_direction = output
var bit isa_iow is pin_d6 = high
pin_d6_direction = output
-- ISA reset signal. Active high.
var bit isa_reset is pin_d7 = low
pin_d7_direction = output
Assign PIC pins in netp.jal, 28 pins PIC:
-- This is the standard JAL "blink the LED" pin.
-- Not required, but very handy.
var bit DEBUG_LED is pin_a0
pin_a0_direction = output
-- ISA address bus, low 5 bits
port_c_direction = all_output
var byte isa_addr is port_c
-- ISA 8 bit data bus
port_b_direction = all_output
var byte isa_data is port_b = 0
var byte isa_data_direction is port_b_direction
-- ISA read and write strobes. Both are active low signals
var bit isa_ior is pin_c5 = high
pin_c5_direction = output
var bit isa_iow is pin_c6 = high
pin_c6_direction = output
-- ISA reset signal. Active high.
var bit isa_reset is pin_c7 = low
pin_c7_direction = output
net.jal modifications to work with Eur's board:
procedure net_write ( byte in addr, byte in v ) is
-- only 5 lower bytes active -- reset = low, /IOW & /IOR = high
isa_addr = ( addr & 0x1F ) + 0x60
isa_data = v
isa_data_direction = all_output
isa_iow = low
isa_iow = high
isa_data_direction = all_input
end procedure
function net_read ( byte in addr ) return byte is
var byte v
isa_data_direction = all_input
-- only 5 lower bytes active -- reset = low, /IOW & /IOR = high
isa_addr = ( addr & 0x1F ) + 0x60
isa_ior = low
v = isa_data
isa_ior = high
return v
end function
procedure net_reset_chip is
var byte v
-- WDT management
wdt_state = 0x25
-- set i/o control signals to a known state
isa_addr = 0x60 -- /IOR & /IOW high
isa_ior = high
isa_iow = high
isa_reset = low
isa_data_direction = all_input
-- assert "ISA reset"
delay_100ms
isa_reset = high
delay_10ms
isa_reset = low
delay_10ms
-- TODO: not sure if this next reset is required,
-- or even correct.
v = net_read(RESETPORT)
net_write(RESETPORT, v)
delay_100ms
end procedure
netconf.jal modifications to work with Eur's board, 28 pin PIC ONLY:
-- the sentence "if debug_mode then..."
-- is a conditional compilation.
const debug_mode = false
-- External EEPROM in I2C pins
const byte I2C_eeprom_active = false