I designed this for our Arduino based triple power supply. The supply is a bench top linear supply with a 20X4 LCD screen. Displayed on the screen is voltage V1,V2 and V3. Easy enough to monitor with the Arduino A/D converter with a basic voltage divider. However to monitor current we needed a current to voltage monitor, I searched the web and found some current to voltage monitors but there were not cheap, cost was around 30 bucks. My design this cost around $5 USD.
The heart of this circuit is the LMP8603 a 60V Common Mode, 100 x Gain Bidirectional Precision Current Sensing Amplifier. With a very small value resistor to get around the burden voltage. I used a .01 ohm resistor that could measure 0 to 5 amps at 0 to 50mV across the resistor then added the LMP8603 with a gain of 100 so for every amp I would get 1 volt out.
The great thing about this IC, it's bi directional, it can be a high side or a low side configuration. It uses a single supply, A set gain of a hundred with no precision resistor needed like standard op amps.
Resolution of this is around 5V(A) / 1024 (10bit A/D) = 4.8 mA per step, if you need to change the resolution you could always swap out the resistor with a .1 Ohm but you maximum current would only be .5 amps, but resolution would increase to .48 mA per step. For my case I chose the .01 ohm.