• We’re currently investigating an issue related to the forum theme and styling that is impacting page layout and visual formatting. The problem has been identified, and we are actively working on a resolution. There is no impact to user data or functionality, this is strictly a front-end display issue. We’ll post an update once the fix has been deployed. Thanks for your patience while we get this sorted.

New PIC 32 chips

Status
Not open for further replies.
It seems some manufacturers are listening more to the hobby market or those without lots of money to spend on getting into micro-controllers. Microchip has released their line of pic32 chips in DIP format, that means easy use for home users.

I don't work for them but have used their chips for years. If you go to their site and register your email they even send free samples, so you can get 3 of the chips for nothing. Right now they are in pretty heavy demand, I couldn't even get chips from mouser that I got from microchip as samples.

The chips I got are pic32mx110f016b. So what is the big deal with the pic32 ?

40 MHz MIPS32 M4K
1.56 DMIPS/MHz (Dhrystone 2.1) performance
Single-cycle (MAC) 32x16 and two-cycle 32x32 multiply
0.5 mA/MHz dynamic current (typical)
Data communication: I2S, LJ, RJ, DSP modes
10-bit 1.1 Msps rate with one S&H
Supports mTouch™ capacitive touch sensing
Provides high-resolution time measurement (1 ns)
On-chip temperature measurement capability
Up to three Analog Comparator modules
Five General Purpose Timers
Real-Time Clock and Calendar
Two UART modules (10 Mbps)
- Supports LIN 2.0 protocols and IrDA® support
Two 4-wire SPI modules (20 Mbps)
Two I2C modules (up to 1 Mbaud) with SMBus support
Parallel Master Port (PMP)
Four channels of hardware DMA with automatic data
size detection
5V-tolerant pins
In-circuit and in-application programming
4-wire MIPS® Enhanced JTAG interface
Unlimited program and six complex data breakpoints
IEEE 1149.2-compatible (JTAG) boundary scan

You get all the above for about $3 a chip. The main downside of the chips I have now are the memory , 16KB program and 3KB data, but they have other chips in the line that have up to 512KB ram and also support multiple USB channels. The chips can also execute code from things like sd cards so memory becomes less of an issue.

The chip has an internal oscillator so no need for an external crystal unless you use the RTCC , that needs the standard 32.768Khz crystal. Then you just need a few .01uf decoupling capacitors and a 4-10uf cap for the vcap pin and you are ready to use it. I use a pickit to program them but you can use a jtag and there are free jtag plans on the internet that use a parallel port.

For software the compiler is GCC and there are already some great libraries. How powerful is the chip ? It is powerful enough that it can decode flac audio on the chip . Some other tidbits in the libraries are things like vector and dsp routines and h.264 video operations.

I'm seriously considering making it my main platform now. The 32 bit chip price is getting so low that using the old 8/16 bit chips just isn't justified unless you are doing something really low cost.


http://www.microchip.com/en_us/family/32bit/
 
Last edited:
I hate people like you. 😀

I enjoy this stuff too much & have no time for it, but this will not deter my attempt to get some samples. I'll find the time.
 
At work, I've been playing with the Ethernet Starter Kit, which has their high-end PIC32MX795F512L, and I'm impressed with those things. If you modify Microchip's TCP/IP Stack to use the DMA Controller to calculate IP checksums (the DMA controller can also do CRCs, by the way), you can get some insane speeds from those things. The fastest I've gotten over a single connection was about 60Mbps, and the PIC32 can saturate the 100Mbps Ethernet bandwidth with two sockets spewing data (each socket achieved over 40Mbps).

We currently use PIC24H chips and those have been plenty fast so far. We're looking to move to the PIC32 mainly for the built-in Ethernet MAC.
 
At work, I've been playing with the Ethernet Starter Kit, which has their high-end PIC32MX795F512L, and I'm impressed with those things. If you modify Microchip's TCP/IP Stack to use the DMA Controller to calculate IP checksums (the DMA controller can also do CRCs, by the way), you can get some insane speeds from those things.

Yeah I've been really impressed with the performance of the chips, especially considering the price. I have one of the pic32mx795F512L chips also , it is used on the digilent boards here:
http://www.digilentinc.com/Products/Catalog.cfm?NavPath=2,892&Cat=18

They took the chips and made an arduino compatible library. I just erased the arduino bootloader and now can use it with regular pic tools.

Some other pic32 boards :
http://www.eflightworks.net/
http://www.sparkfun.com/products/9713
http://www.sparkfun.com/products/9645


Since you develop with pics , do you have any experience with USB ? I'm having a hard time developing USB projects , just curious what others are using for that.
 
I just picked up a t PICDEM.net 2 dev board for an embedded ethernet project. Any thoughts on the PIC32 vs using either:

-ENC28J60 with another microcontroller via SPI
-18F97J60

I really only need very basic functions from the microcontroller: record info from some optical encoders, and output some info to LEDs or a simple display.

Seems like what I have will be fine for my needs, but if you have any issues with either, let me know. Thanks for any insight!
 
An old company I worked for used 16f and 18f Microchip controllers back in the day (2005ish?) App was a push button driven menu + LCD display user interface, which allowed the modifications of parameters in the pursuit of generating chlorine in a salt pool.
 
An old company I worked for used 16f and 18f Microchip controllers back in the day (2005ish?) App was a push button driven menu + LCD display user interface, which allowed the modifications of parameters in the pursuit of generating chlorine in a salt pool.

Microchip has been around a long time, the thing that has always made them popular is all the peripherals they include on the chips and the low price point. They have really been expanding lately though adding features like programmable gate logic to traditional controllers and audio dacs inside the same packages.

According to their site they just shipped their 10 billionth chip, that is a lot of chips ! They also acquired SST memory and flash last year.
http://www.microchip.com/pagehandle...technology-delivers-10-billionth-pic-mic.html
 
Last edited:
I just picked up a t PICDEM.net 2 dev board for an embedded ethernet project. Any thoughts on the PIC32 vs using either:

-ENC28J60 with another microcontroller via SPI
-18F97J60

I really only need very basic functions from the microcontroller: record info from some optical encoders, and output some info to LEDs or a simple display.

Seems like what I have will be fine for my needs, but if you have any issues with either, let me know. Thanks for any insight!

Should be fine . The advantages of the pic32 chips is less of a need for external parts when doing ethernet.
 
Take a look at Microchip's Application Libraries here. This is where we got the TCP/IP Stack, which supports all of Microchip's Ethernet products--including the PIC32's internal MAC, the PIC18F97J60, and the ENC series of external MAC/PHY parts. The libraries come with demo projects you can start from and they are pretty easy to get going in MPLAB. You may need to do a little bit of work if a particular part of the library was built with a different version of the compiler than you are using, but that usually involves adding some function prototype to a header file somewhere.

You may need to work a bit more work if you want to build a portion of their code into a static library (.a file), which is what we did. For example, the TCP/IP stack statically allocates sockets and their buffers, which isn't ideal for a library that will be re-used on multiple projects. I remember it then wanting macros defined for the location of your board's LEDs for some reason. Also, the stack makes use of one of the chip's timers (Timer 1, I think), so keep in mind that you may need to adjust how it uses peripherals. If you use the PIC32, you'll probably want to modify it to use the Core Timer (which will work just as well) instead of one of the configurable peripheral timers. Basically, we figured that Microchip assumed that you would take their demos and just build off of those rather than roll your own applications bottom-up.

Modelworks, I haven't done any USB work before, but the Application Libraries do come with a USB framework that ought to help.
 
Status
Not open for further replies.
Back
Top