For novel ideas about building embedded systems (both hardware and firmware), join the 35,000 engineers who subscribe to The Embedded Muse, a free biweekly newsletter. The Muse has no hype and no vendor PR. Click here to subscribe.
By Jack Ganssle
Microchip's Analog MCU
I'll present my Better Firmware Faster seminar in Melbourne and Perth, Australia February 20 and 26th. All are invited. More info here. The early registration discount ends January 20.
It's an analog world, and Microchip's new line recognizes this.
Regular readers know I rarely write about "big iron," those hefty CPUs that power our desktops. They are interesting, and the vendors have done truly amazing things to shrink geometries and accelerate processing.
But the real fun is with MCUs. Once there were a few standbys like the 8051. Today the world bristles with choices, from tiny 6 pin 8 bitters to incredibly-capable 32 bit devices with a wealth of on-board memory and I/O.
It's usual to have an A/D or two and maybe some DACs, but till recently those devices were often poorly characterized afterthoughts. One ARM MCU I'm using has a 12 bit A/D that is so temperature sensitive I can use it as a thermometer.
Microchip is one of the companies that is putting excellence into their analog subsystems. A new family, the PIC24F GC, takes that to an extreme.
The parts have the usual mix of memory and gobs of digital I/O, USB, etc. 64KB or 128KB of flash with 8KB RAM. Five timers, 9 input capture and output compare/PWM channels. All nice stuff but not unusual.
The data signal modulator is somewhat unique. It mixes data with a carrier to produce a modulated output, for FSK and PSK keying. I can see a lot of interest in this from the amateur radio crowd.
The parts' defining character, though, stems from the carefully-engineered analog components.
There's a 12 bit A/D that converts at up to 10 Msps. It's fed with a 50 (!) channel single-ended analog mux, which can also be configured for 15 differential channels. Its output goes to a 32 word conversion buffer to stack data if the CPU is busy. The number of modes it supports is legion -- 116 registers are needed to control the A/D. Some cool ones: interrupt on data matching some value. Interrupt on data being lower or higher than some threshold. Start conversion on the result of any of the analog comparators or input capture registers. Sum successive conversions.
A 16 bit sigma-delta A/D can run at up to 62.5 ksps (at some loss of quality; full resolution can be achieved at up to around 1ksps). Two differential channels drive it, and a programmable gain amp multiplies the input by 1 to 32 times. The device can sample its own offset and gain errors, giving the firmware the info needed to correct the result to a high level of precision. Non-linearity is so-so at +/-20 counts (worst case).
Twin ten-bit DACs run at 1 Msps. And a pair of op amps can do the usual op-amp thing, or act as comparators that interrupt the CPU. They have a typical (no min is listed) gain-bandwidth product of 2.5 MHz and will slew to within 50 mV of ground and Vdd.
The value proposition Microchip is selling is that by including so much decent analog on the MCU one simplifies the external circuitry. It avoids the need for analog power planes and complex routing, and keeps noise of other peripherals away from the sensitive analog.
And the parts start at under $3 in quantity. Eval boards are available as well.