Bootloder for AVR
After powering up of AVR - MCU waits for the data from ARM.
While "$" received, AVR strats to receive packets which consit of
##############################################
# $ + Packet # + Size of packet + CRC + Data #
##############################################
When received, AVR calculates CRC of Data just by sum of all bytes
of Data.If CRC equals the received CRC in Packet Header then AVR sends
to UART number of received packet, that means that packet received
correctly and we can receive the next packet.
MAIN RESTRICTION - allow to send only 99 of packets. So the hex file shouldn't be more
then 12627 bytes if more, program need to be changed.
WHAT IS GOING 2 B IMPLEMENTED
LED indication of each packet
Watchdog if nothing is going on
Check every 128 bytes received, and write in flash if the content is different
LED indication of succesfully received firmware
Led indication for waiting time for incoming firmware
Algorithm for flashing firmware
WHAT IS ALREADY IMPLEMENTED AND CHECKED