The battery should have enough reserve voltage to be able to crank over the car for a reasonable amount of time, have the battery tested to see if it is OK. Low battery (battery voltage needs to be above 10 volts for sure with the engine running for the computer to work properly) or low coolant level can cause an unstable idle. You need to retrieve codes stored to see what the computer is flagging as being wrong.
Codes are retrieved by turning the ignition key on off on off on in less than 5 seconds and then reading the number of flashes.
There is a company that independent auto repair shops get their information from, this same information is available inexpensively for people that work on their own cars.. The information is year make and model specific, covering repair procedures, torque specifications, fluid capacities and specifications, service bulletins, component locations, wiring diagrams ect.... Alldata is very easy to navigate http://bit.ly/AllData_Repair_Manuals_Online
Look at
http://www.batauto.com/
look at the top right "trouble codes" you may find info there on testing of specific codes for free.