My truck runs fine except when trying to accelerate on hills. When I give it more gas the "Check Engine" light flashes until I decelerate again, then it turns off. If I try giving it more gas (floor it) the engine bogs down and the "Check Engine" light comes on solid and then needs to be reset. The truck runs fine otherwise, the transmission shifts normally and accelerates normally. What's up with this?