Subject: Re: help with digital dashboard/logger
X-Newsreader: Forte Agent 1.91/32.564
Date: Sat, 26 Oct 2002 03:47:22 GMT
NNTP-Posting-Date: Fri, 25 Oct 2002 21:47:22 MDT
Why not use a better chip other than the 16f84? The PIC 18Fxxx is has
much more goodies on board so you don't need as much code. It is also
much faster and have more memory. Programs are much easier to write
because the memory is not banked. They don't cost much more than the
16f84 at digikey.
A single chip should easily be able to do everything you want. You
don't need the lm2917's to measure rpm. You can measure the time
between pulses to calculate the speed. The same can be done for the
injector pulse widths. You don't really need to use interrupts. You
can just poll the pins continuously in a big program loop. Just set
up one timer to accurately keep track of the time.
The 18fxxx has built in A-D converters, serial ports and timers, so
you don't need to do them in software.
On 25 Oct 2002 15:04:26 GMT, email@example.com (Impakt242) wrote:
>This is my first post and first crack at a PIC circuit (or any circuit for that
>matter). I apologise for the length but i would like to explain what im trying
>I basically want to build a device that can display some data from the engine
>sensors on an LCD screen and also transmit the data out using an RS232 port.
>I have already got it to display and log various voltages (using a PIC16F84 and
>2 input 8 bit a-d converter) from some sensors such as Throttle Position
>Sensor, air flow meter, and battery voltage (using a simple voltage divider
>Now i also want to add the functionality to display injector duty cycle, rpm,
>speed, and also have extra analog ports for other sensors in the future, such
>as a MAP sensor. Some digital inputs would be nice, and can easily be added
>using unused input pins. All analog inputs will be between 0 and 5v.
>I was thinking of creating the circuit with the following components.
>* One PIC (F84) to display and log the analog voltages using a 8 input 8 bit
>a/d converter wired in 'microwire' configuration (one i/o used between pic and
>* 2 LM2917 freq-voltage converters to read in the speed and rpm (sending output
>to a/d converter, PIC will convert output voltage to meaningful data)
>* and another PIC which is dedicated to calculating the duty cycle and sending
>the output serially to the first PIC, or even generating a PWM output which can
>be sent to the a/d converter also.
>I understand that there are circuits and sample code to do all these things,
>but is it possible to do all of these things (8 analog inputs through a/d
>converter, bus for LCD screen, rs232 i/o, duty cycle monitor, rpm monitor,
>speed monitor) all on the one PIC?
>The speed sensor output varies from 4Hz upwards to around 200Hz (if that), the
>injector pulse width would be in the tens of milliseconds, and the tacho output
>would be in hundreds of Hz per second.
>I imagine that this PIC would need one interrupt for each the rpm, speed and
>injector pulse, and also make use of the in built timers. Either that or do
>each input and frequency input in series, which means it would wait for a pulse
>and slow down the display and logger. I think this is a little too much to ask
>of one PIC, since it needs to count 3 different frequency inputs of very
>different ranges. Am i wrong in thinking this?
>So can it all be done using one PIC or is it better to use dedicated ICs and
>let the main PIC process the incoming data and display/log it?
>Are there any other recommendations to make it cheaper to build or more
>The main use for the device is to log data for tuning, diagnostics, and maybe
>for a bit of circuit work.
>Thanks for your time reading this.