So I guess we can assume that the microcontroller has a separate power supply.
What are you trying to do?
a) measure an absolute voltage from 0V (to, say, 10V)
b) measure an absolute voltage within limits (e.g. 3.7 to 4.3 volts)
c) determine if the voltage is above or below a limit (e.g. 4.15 volts)
(and then the same questions for current)
For options 1 and 2, how much accuracy do you require? Do the analog input on your microcontroller have sufficient resolution?
How much voltage drop across the current sensor is permitted?
My first thought would be to have a low value resistor to measure current (let's say 1 ohm) and use an op-amp to amplify the voltage across this (if required) so that the max current becomes the max analog input voltage, and then use a voltage divider (if required) to bring the battery voltage into range of the microcontroller's analog input.
Issue's you'll need to address include the need for a common supply rail for the controller and the battery, with all the noise implications that may come from that. In addition, you may need a separate + & - supply for an op-amp. An op-amp that allows the inputs to go right to the -ve supply rail may eliminate the need for a split power supply.
The simplest solution would be to place the current limit in the ground lead (thus making the "grounded" end of the battery float slightly above 0V (depending on charge current). With a 1 ohm resistor you would have a full scale reading of about 5A (but your
resistor power dissipation would be a massive 25W and it would be dropping 5V) and assuming an 8 bit resolution, your resolution is around 19.5 mA. I would read the battery voltage from the + terminal of the battery (remembering that the voltage of the battery plus the voltage drop across the current measuring resistor would have to be < 5V). A voltage reading would have to subtract the "current" value, and -- assuming zero charge current -- the resolution would be 19.5 mV. If you need a voltage divider, the resolution decreases by the inverse of the factor that the voltage divider divides. (e.g. if it divides by 2, the resolution is now 39 mV).
So as not to cause damage to your controller you'd want to have series resistors and diodes to the supply rail to prevent the inputs from exceeding 0-5V.
If your A-D has higher resolution, then your voltage and current resolution will be correspondingly better.
If you need more resolution than is easily available from your controller, things get a little more complex -- an option is to measure the time taken to charge a capacitor.