Timer/Counter/PWM chip suggestion

I may run out of timer resources on the processor I'm using and have been looking around for an SPI (or I2C) connected device that can:

  • 16 to 24 bit timers
  • 4 or more inputs that can be triggered by rising or falling edges.
Reply to
Dave Boland
Loading thread data ...

Check out Parallax's Propeller chip.

Don

Reply to
Donald Harris

I don't know of any standalone devices nowadays, as most manufacturers seem to think that what they have integrated is always sufficient. (ah, for the days of real I/O chips ;)

As to FPGA/CPLD - what you want would push you toward a FPGA. The largets CPLD I use has 144 usable registers, and doing a couple of counters and prescalers soon uses them up.

All you desire can be done in a FPGA and more, but much depends on your budget. Remember that you'll have to have either a configuration device (sometimes costs more than the FPGA) or have code a processor can run to do it for you. There are lots of options here.

Certainly the Xilinx Spartan 3 series would do everything you want (including quadrature clocks) in either the xxx50 or xxx200 devices. I would see no particular need to exceed those sizes. Spartan 3 is the current 'affordable' line from Xilinx.

I must admit I prefer Xilinx if only because of the tool support, but Altera does similarly complex (and easy to use) devices. I have not used the Altera tools in over 5 years, however, and I don't know if you can currently get free, fully functional versions.

Hope that helps!

Cheers

PeteS

Reply to
PeteS

Is the 16- or 24-bit resolution just on your timers? What resolution on your outputs? A Cypress PSoC would be able to do up to 48MHz or so, but it would be hard pressed to get 4 timers and 4 outputs at the same time. If you don't need them at the same time, you can switch the functions in software.

-Travis

Reply to
Travis Hayes

The propeller Chip has 8 32 bit processors, each with 2 32 bit counters. It can run at 80 MHz from a 5 MHz crystal. You can do timing to 1.25E-8 sec without even using the counters. It will also generate broadcast video or VGA video from each of the processors. A most interesting chip! I have 2 on order.

Don

Reply to
Donald Harris

Thank you all for your responses -- they are all helpful. In the interest of brevity I over-simplified things. There are two separate needs. One is to to measure frequency and the other is to output either a 50% duty-cycle signal, or a PWM signal.

The frequency measurement application can be divided into three parts -- tachometer (a few Hz to a few KHz typically), sensors that output a frequency instead of a voltage (typically 25KHz to 200KHz), and general purpose meter-like function (up to 10 MHz). The priorities are in the order listed. In the case of sensors it is necessary to have at least a 16 bit counter, but a 24 bit would be nice. Four to

8 input channels to cover all frequency measurement needs.

As for quadrature, that can be determined with a D flip flop, but having that function built in would be nice.

Frequency output is not all that important, and the size of the registers can be smaller. This can be done with an additional chip (one for input, the other for output). The PWM freq. really should be up to 1 MHz (goofed on the original note).

Thanks, Dave

Dave Boland wrote:

--
To reply via e-mail, use dzimmerman instead of the reply-to 
ID above.
Reply to
D. Zimmerman

First step is to define the precisons you need - how many digits of frequency, and what step sizes in FreqOut, and PWM Period, and PWM Step increment.

Since you already have a uC, that may dictate larger/smaller candidates.

Most uC have quite vanilla peripherals, that score low grades on things like frequency measurement, or frequency generation. [ one exception is a recently announced ADi ADuC7128 ARM variant, than includes a DDS block as a peripheral :) ]

The most cost effective will be to choose the closest uC ( or multiple uC's ) to your task, and then augment their peripherals with a CPLD.

eg CPLD can do QUAD to Up/Dn & CLK conversion, in few MCells, which broadens your uC choices. CPLD can also do channel MUX, and can range-extend on chip counters.

-jg

Reply to
Jim Granville

Dave,

have a look at the LPC2101/2/3, very inexpensive, have 4 timers, 2 are

16-bit, 2 are 32-bit, has I2C and SPI, so you pick, no quadrature though.

You can get pricing information from Digikey

formatting link
then type in LPC2101 or LPC2103.

This is an ARM7 micro running up to 70 MHz but very low cost starting at $3.15 single pieces and below $2 if you buy 1k pieces.

hth, An Schwob

Reply to
An Schwob in the USA

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.