# AVR458 Charging Li-Ion Batteries with ATAVRBC100 Documentation

### Atmel AVR Application Notes

## Introduction

This documents the software for application note AVR458. This is a charger for Li-Ion batteries, based on ATAVRBC100.

## Compilation Info

This software was compiled with IAR Embedded Workbench, 4.30. To use GCC the source have to be modified.
To make project on IAR EWAVR:
Add the .c files to project (ADC.c, battery.c, main.c, menu.c, OWI.c, PWM.c, time.c and USI.c). Add either LIIONcharge.c or NIMHcharge.c, and update LIIONspecs.h or NIMHspecs.h, and battery.h with the appropriate battery data if needed.
Use device --cpu=tiny861, enable bit definitions in I/O include files, optimization low for debug target and high for release, output format: ubrof8 for Debug and intel_extended for Release.

## Device Info

This application is based on the ATtiny 861, but it is possible to migrate the design to other AVR microcontrollers, such as pin-compatible devices ATtiny 261/461. Low pin count devices such as ATtiny 25/45/85 may also be used, but with reduced functionality.

Required fuse bit settings:

        FUSE BIT  | SETTING
        ----------+--------------------
        CKDIV8    | 1 (unprogrammed)
        CKSEL3..0 | 0010 (internal osc)

## Todo List

Todo:
  - Finalize master-slave communication protocol
  - Implement discharge mode

## Contact Info

For more info about Atmel AVR visit http://www.atmel.com/products/AVR/
For application notes visit http://www.atmel.com/dyn/products/app_notes.asp?family_id=607
Support mail: avr@atmel.com