Hi, so the main reason I got in the Arduino world is this project. I'm trying to make the Arduino control the ignition of 4 spark plugs, 4 injectors and a servo to open the throttle body. It would read a signal from the pickup coil, a temperature sensor, an oxygen sensor and an air mass sensor, and the speed from both wheels. Aditionally there would be a 3-position switch (1-2-3) to allow for on the go map changes.
The spark plugs are connected to 2 ignition coils, so each pair sparks at the same time (one is compressed, the other has finished the exhaust phase and will start intake). I thought of writing to the EEPROM information on what's the next pair of plugs to go off, after each cycle - I'm not sure if this is possible.
That information could also be used to know what's the next injector to open.
I'm a bit lost on how to connect the pickupcoil, because ideally it would give me a digital 0/1 value, so that as soon as it turned 1 the cycle would beging, but it operates at 12v so I can't connect it directly to a digital pin.
Also, the wheel speed sensor would send a signal up to 5kHz (at a bit over 210mph). Can the Arduino read this properly? Will this affect the code? Can I convert the signal to a variable voltage input (0Hz=0V; 5kHz=5V)?
This is a very basic (and very inclomplete) sketch of the idea, without the wheel speed sensors or any of the injection related stuff - so this would only provide a ride-by-wire functionality, the 3-position switch and control the ignition pulses.
So, my doubts are:
Wheel speed sensor outputing 5kHz, is this a straigh connect of the signal cable to an analog pin?
Pickup coil, works on 12v and I don't have any idea on how to process the signal.
Can the code write to EEPROM? How do I save information from getting erased on reset?