Anybody have experience with FPC and an Arduino DUE (which is a Cortex M3 SAM3X8E) or similar ARMs ?
I'm planning to connect a W5500 to an Arduino DUE and port a minimal UDP-only stack over to it, but coming from dsPIC33e, I'll have to start at the bottom, the datasheet looks fairly daunting.
Peripherals that I need
- DMA a block (read/write) to SPI
- with CS going low before the transfer, and up again after. (e.g. in the DMA finished interrupt).
- Some notifications that it is finished. (dma finished interrupt again)
- 8/16/32-bit DMA, does it matter? (e.g. dspic33e has two bit pauses between units, so 16-bit DMA saves 2 bits per 16-bits send (18 instead of 20 bits per 16-bits payload)
- Watching the INT pin with some hardware pin thingy. (edge high-to-low or so)
- updating simple volatile variables to communicate between interrupt and the main program. in dspic33e simple operations on volatiles ( e.g. int++ in an interrupt handler) can be considered atomic, and no increments or decrements are lost. How is this on ARM M3?
- I need some form of time keeping (e.g. for the reset period of the W5500 on startup).
I'm an intermediate programmer in C, I haven't done anything embedded in FPC.
If anybody can give me tips/hints about this, that would be welcome. The hardware is still in the mail, I'm just starting to read up.