Embedded processor with 6+ counters?

I'm in a group designing a 3d positioning system for a foot for a class project this semester. We're looking to base our device on some analog devices accelerometers, and hopefully incorporate Bluetooth support (but we may well just use USB to get the data off). The accelerometers have 2-axs PWM output and we'll be using four; does anyone know of any low cost chips with lots of counters, for the sake of getting all this PWM data in parallel?

Reply to
austinv
Loading thread data ...

This may be a good application for a cheap FPGA like a Xilinx Spartan part, or a CPLD next to a microprocessor. Then you can have as many counters as you have room for. Atmel was selling FPGAs with embedded AVR chips on them ('FPSLIC' if I remember correctly) -- I don't know if they're still pushing them or not. If worse came to worst you could multiplex the accelerometer outputs into a few microprocessor timer inputs, then read them one by one, but you'd lose bandwidth.

The Atmel part or an FPGA would be available on an eval board, so you'd just have to figure out programming and configuration. Getting it working may be a project in itself, but that's life...

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google?  See http://cfaj.freeshell.org/google/

"Applied Control Theory for Embedded Systems" came out in April.
See details at http://www.wescottdesign.com/actfes/actfes.html
Reply to
Tim Wescott

Any of the Freescale parts with the Time Processing Unit (TPU) should handle that chore.

Otherwise, if your data collection rates are low, it may be possible to use a digital multplexer to select one of the accelerometers, measure it for a while, then select the next, measure it for a while, etc. etc.

Another trick I've used for very slow monitoring of PWM sensors (one reading each minute or so) is to sample all the inputs at once on a regular basis (in an interrupt routine, perhaps). With each sample, you record whether the particular input bit is high or low. After a few thousand samples, you have an adequate statistical represention of the high and low times of the inputs. That worked fine for a set of greenhouse temperature sensors.

Mark Borgerson

Reply to
Mark Borgerson

I think data rate is approx. 1 KHz and response time of seconds. I would pick the solution below rather than above. You don't want it in interrupt, since you would need a dedicated micro doing only this job.

Reply to
linnix

Freescale MAC7100, sixteen timers each 16 bit, lots of operating modes, such as: input pulsewidth measurement, input period measurement

formatting link

chapter 20

-Lasse

Reply to
langwadt

Use the analog outputs, and a micro with multiple ADCs... how parallel does it need to be? The MSP430 can automagically round-robin the channels for you.

Reply to
larwe

skrev i meddelandet news: snipped-for-privacy@b28g2000cwb.googlegroups.com...

AT91SAM7A3 will get you USB, 16 ADC channels and 9 x 16 bit timers

--
Best Regards,
Ulf Samuelsson
This is intended to be my personal opinion which may,
or may not be shared by my employer Atmel Nordic AB
Reply to
Ulf Samuelsson

And not available for general public... :(

--
WBR, Yuriy.
"Resistance is futile"
Reply to
Yuriy K.

MC9S12xxxx - 8+ counters

--
WBR, Yuriy.
"Resistance is futile"
Reply to
Yuriy K.

huh?

Arrow have 115 mac7111 in stock, and you can order samples of several different parts from the family on the freescale site

-Lasse

Reply to
langwadt

Interesting. That's what the Future rep told me about a year ago.

formatting link

"Please note that the complete listing of MAC7101 devices is available only to Tier 1 Automotive vendors."

formatting link

"Please note that the complete listing of MAC7111 devices is available only to Tier 1 Automotive vendors."

It's a BIG red flag anyway.

--
WBR, Yuriy.
"Resistance is futile"
Reply to
Yuriy K.

This is rather short on specifics, like how many processors you expect to use, and the task partitions ?. For just PWM readout, (frequency?, Duty range ?) you can use 6 channels of capture, and derive the edge times - you do not have to use 6 timers.

So, that allows some small 8 bit uC as well, eg the Silabs C8051F410 has a lot of usefull peripherals for the coal-face stuff for positioning.

-jg

Reply to
Jim Granville

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.