When the ac button is pressed in a new model car, it doesnt just trigger a relay like the old vehicles. It instead sends a multiplexed bus signal to the computer over the PCI Bus (or 'class 2' if your talking GM) the computer then turns the relay on and can turn it off under different circumstances. (too hot, low/high psi, wot, etc)
I need to make my pic send out that signal. I read the whitepapers for a bunch of different stuff and found out that the bus wire I'm dealing with is a 1 wire send and recieve J1850 VPW
I have programed a test pic to generate the correct timed signals and its set up to read and write... I tell it the byte to send and it does it...
Problem is, the VPW spec requires that an output_high be between 6 and 8 volts. My pic is running off a buffered 5V that happends to be in the car anyway. It looks like I'm going to have to take a 12V lead, cut it down to 7V and then run that into a transistor that my pic controls...
So for a low signal, I ground the pin for X amount of time. For a high, I power the transistor and it sneds the line to the 7V that is required. My pic stays nice and safe and everyone is happy.
I just now need to pull the code on a scope, break it down to binary and then ask my pic to make the same signal.
The problems right now are that
1. I need to cut the voltage down from 12V to 7V
2. Pull the code using a scope (this should be really easy)
3. Round off the shape of the square wave as the spec requires (not sure if that means some sort of filter, and then how to go about that)