Читайте инфу по bootloader for AVR. Имеются тысячи реализаций оного.
>Как я понимаю, я сперва должен послать сигнал сброса на Arduino по USB, а потом пытаться >отправить скетчь. Вот как именно это нужно делать, какой протокол для данных, как это делает, >например, сам avrdude?
Может я чего-то и не зтаю про Ардуино, ведь их могут быть тоже тысячи модификаций, но avrdude не может на прямую перепрограммировать микроконтроллер. Хотя если используются для USB кристаллы FT3232 (вроде бы в старых версиях Ардуино был FT232), то возможно програмирование с использованием SPI интерфейса. Если же вы знаете способ, как заставить avrdude прошивать Arduino, то этот документ может вам пригодиться: http://www.atmel.com/Images/doc0943.pdf
Хотя почитайте еще и этот тоже http://www.atmel.com/Images/doc1644.pdf
Нет. Основная причина: размер символов зависит от размера шрифта. А все остальные размеры вычисляются с помощью обычной математики.
ПС: Чушь написал. Artem_zin прав. Вот описалово.