16/32 bit Co-Processor Research

Vacation:

I went on vacation last week with my grandson.  I had to finish client work before I could go so two weeks ago I didn’t get a post done and last week, I was spending time with my family. I was hoping to post ahead of time and schedule them out, but it didn’t happen.  Sorry to anyone looking forward to my posts.

ADC Feature Request:

The request I made in the bug report section of the Espressif forum has been viewed 376 times but still no indication that they are working on it.  August 16, 2016 is the last update to the SDK.

MSP430:

Ti makes a great processor line with cloud based tools. Which means they can be developed on any platform.

I had to disqualify the MSP430 line of processors because they all have a max voltage of 3.7 or lower.

STM32:

The STM32 are ARM based architecture chips. They all have a max operating voltage of 3.6V or less. They do have good GCC support so they can be developed on any system. The max voltage issue disqualifies the STM32.

PIC32:

The PIC32 line of chips do not have any devices that run at 5 volts. This disqualifies the PIC32 line from Microchip.

SAM32:

Microchip acquired Atmel recently.  Atmel used to sell the SAM32 ARM architecture line of MCUs.  So Microchip now carries this line of chips.  The ATSAMC2  line all operate from 2.7 to 5.5 Volts.  The 2.7 is a little high on the low side but it is acceptable.  ARM compilers are available on all the major desktop operating systems. The lowest marketing price for this line of chips is US $1.36.  The smallest flash available is 32KBytes which should be far more than enough for this project.  This chip runs at 48 MHz.  Which should be fast enough.  It also has 32 pins which should be enough IO.  The ATSAMC21E15A is a strong candidate.

Other Controllers:

Do you have any suggestions for 16 or 32 bit Micro Controllers?  Are there any you would like me to look at for this project?

Processor Option 2

The Microchip PIC32MX110F016B.

I went to Microchip’s website and worked through their parametric search tools.  I was looking for a device that could use the SPI interface at at least 10 Mbps and at the lowest cost.  There were no 8 bit parts that could meet the SPI requirement.  There were some 16 bit parts that could meet this requirement, but they were the high end parts.  I had to look into the datasheets to see the maximum SPI baud rate.  Since JTAG does not have 8 bit fixed width registers, I will probably have to play some tricks to use the standard SPI for JTAG operation.


Microchip PIC32MX110F016B

Device advantages

  • Two Fast SPI channels (1 for programming, 1 for data storage)
  • DMA transfers for each SPI channel– Frees software up to do data manipulation tasks
  • 5 V tolerant pins
  • I am familiar with Microchip and their IDE — MPLAB X
  • US $1.73 each in quantities of 100
  • Compatible upgrade path if this chip isn’t enough
  • Low pin count — 28 pins
  • Dip Part for prototyping

Device Disadvantages

  • I am unfamiliar with microchip 32 bit architecture
  • Limitations on free C compiler — mostly in optimization