AnsweredAssumed Answered

STM32F2/4 design with camera, external SRAM and some USB host capabilities

Question asked by GPTechinno on Jan 12, 2014
Latest reply on Jan 14, 2014 by GPTechinno
Dear All,

We are designing a new product with some specifics needs :
- camera interface to a OV2643 sensor
- SPI to a CC3000 from TI for streaming MJPEG over Wifi, and doing some other socket light communications
- 2 USB Hosts to make Android Open Accessory protocol to an external device, and printing to an externel USB printer (both USB Full Speed).

Our first research lead us to the STM32F217, because mainly of its camera interface, that should fit our OV2643 sensor. Specially reading this other post from your forum. The MJPEG stream will be 640x480 only at an estimated framerate of 7-12 fps.

The  STM32F217 present also another advantage is the FSMC interface in order to add an external 1MB or so SRAM in order to make DMA transfer from Camera to be sent over SPI/CC3000/wifi/socket (1 JPEG frame will be around 30KB), but also from SPI/CC3000/wifi/socket to be sent over USB to an external Printer (1 PCL file will be around 400KB).

For USB Host AOA and Printer class, they are both in AVR LUFA library (successfully ported to NXP ARM Cortex M3 chip), so I hope there is enough ressource in there to make a partial port for the STM32F217. Neither Atmel or NXP chip with LUFA support have Camera interface, that's why I plan to port code from LUFA to STM32. In second option, I will use a Atmel 32bit chip that have LUFA support, but also external SRAM interface and use a dual port SRAM between the AVR32 and the STM32 to exchange the PCL files to be printed (STM32 will still be the SPI master of the CC3000 so it will receive the PCL from socket connection).

We post our thoughts here because we are experienceless with STM32 processors, so I hope some experienced people here can advise us on some points.

Thanks for all