2014-03-28 03:22 AM
Hi,
I am about to select parts for the following situation:- I will have 2 channels of serial data incoming simultaneously at 24 000 bps.- I will receive up to 1 MB of data this way, which need to be stored somewhere.- I don't need fast access to the data later, slow access times are fine.and finally...- It is a cost-sensitive project, so I need to solve this to the lowest possible cost.What would you go for? I thought I should ask here, before going out on a shopping spree and probably end up buy something far too powerful ''just to be sure''...Best regards,Carl,London2014-03-28 03:46 AM
Without going too much into technical details ...
A data rate of about 6 kB/s is not a problem, and could even be managed without DMA. You hardly find a M0/M3/M4 MCU with 1 MB RAM, which means blockwise processing. An SD card interface could surely keep up with this data rate, but is presumably too expensive. Other options are battery-backed RAM or EEPROM with serial interface (SPI or IIC). I wouldn't recommend the internal Flash, because of the very limited number of erase/write cycles (customer complaints guaranteed). And while your application does not seem to require much code space, permanent data space is huge in comparision. Only the larger, more expensive parts come with that much Flash. A simple button interface can probably be used to switch between record mode and replay mode, re-using the serial channel(s) for replay.2014-03-28 04:13 AM
Thank you! it seems reasonable not to aim for the larger, more expensive parts with >1MB flash, seems that I would be paying for functionalities then which I won't be needing.
I should clarify (my first post was not very clear on this...) that the 1 MB doesn't need to be non-volatile/permanently stored.– I will receive the data and replay it without powering off the device (and if it would lose power in between, that's OK).
2014-03-28 04:34 AM
Sounds like a protocol converter/gateway.
A Cortex M0 with the appropriate serial channels should suffice. The requirements don't seem to demand a 32 bit device, a 8/16 bit MCU would probably be sufficient, too. The price advantage of those part vanished in the last month, however.