I have a 2004 F150 xl, 5.4L, 4x4. Was taking it up a high mountain pass the other day and engine started running bad, check gauges came on the warnings in the dash, and noticed no oil pressure. Turned it off and restarted gauges went to normal, but motor ran like it was out of time. Had codes checked and these came up, PO345, PO054, PO325, PO340, and P2270. All of those were pending but the PO345. Changed out both Camshaft Positioning Sensors and checked wiring to them. I have the O2 sensors on order but pickup is still running like it is out of time and dies when you come to a stop with a rough idle. Any suggestions all will be appreciated.