Hi,
I'm trying to connect the netX CPU to a 8Bit-microcontroller ATxmega128A1 via DPM.
On the netX (NXHX500-RE) there is Ethernet/IP as a loadable firmware running.
The common DPM connection works well, I can read out the netX cookie 'netX' at address 0x0000 and some other contents.
To establish a real communication I using the C-Toolkit V1.1.x.x.
Unfortunately, only the low-level hardware functions can be really used, because of the limited FLASH and SRAM of the microcontroller. In this case all the comfortable C-Toolkit functionality aren't available, so I have to fill the both structures DEVICEINSTANCE and CHANNELINSTANCE manually.
In this case I looked into the regarded functions to understand the initialization routines - but that isn't a easy job and really not a plug and play situation!
But back to the roots to understanding what my application needs.
Basically, I have only one communication channel and my global address offset starts at 0x0000, so I know about the DPM layout and their different fixed offset addresses of each block (system channel, handshake channel, comm. channel 0). To avoid communication failures, it's neccessary to look about handshaking (read/write some handshake bits). Before I implement send/receive messagebox routines over ethernet/fieldbus I want to read out some status bits first...
I have tryied to do that and looked into the function DEV_ReadHostFlags(...).
After climbing down to the hardware DPM function I haven't seen any fixed DPM address!
So, I must fill the both structures above manually...
Now my questions:
1) Can I get a ready filled DEVICEINSTANCE and CHANNELINSTANCE structrure example?
2) Can I replace the dynamic address pointers to fixed addresses (e.g. create own DEV_ReadHostFlags and so on), but which DPM addresses would I need?
3) I don't need the huge flexibility of the netX. The firmware will be loaded from on board serial Flash. I only need basic communication sequences: Initialize (e.g. IP address), startup, send/receive messages.
Thanks.
Michael