Thank goodness for the
forums! My 2000 Cherokee Sport was having similar problems - CEL coming on and rough running. Sometimes it would clear up by itself, or if I disconnected the battery, the CEL would reset and everything ran fine.
Recently, the problem got much worse. I thought it might be the O2 sensor going bad, but I bought a code reader and found: P0202 - injector circuit open and the "misfire" code. Thanks to Matthew's post above, problem solved.
Notice that Matthew said the pos(+) circuit to the injector comes of a common circuit and the neg(-) is switched. That means when your ignition is on, one of the wires going to the injector is actually hot and the other is switched by the PCM to the battery neg(-).
So... if the hot wire gets shorted out, it will probably burn a wire, blow a fuse, or fry the PCM - and the injector will always be OFF. If the "other" wire shorts out (and completes the circuit), then your injector is ON all the time! (STUPID Chrysler engineers!!!!) Which might make your engine run really rough, flood the engine, and give you really crappy mileage.
I didn't have a multimeter, so I used a 12v LED from Radio Shack and a 9v battery to check the injectors. All injectors good. Now, with the engine running, check each injector connector with just the LED. (note that LEDs are polarity sensitive) No light on #2. I traced the harness off the back of the engine where it bends over the fuel rail and guess what - the fuel rail had worn through the cheap plastic flex covering and had worn against some of the wires inside. The light on #2 started flashing! (STUPID Chrysler engineers!!!!) Problem solved!
Hope that helps someone else out there.
(Search words p0201 p0202 p0203 p0204 p0205 p0206)