Сложилась тут у меня как-то ситуация, что нечаянно выставив определённым образом CKSEL/CKDIV8 фьюзы в ATtiny13, я заставил микроконтроллер работать на частоте 128кГц/8, т.е. на 16кГц. После таких манипуляций микруха наотрез отказалась прошиваться посредством USBAsp — частота SCK выдаваемая программатором была слишком большая. Даже заветный джампер SlowSCK не помогал.
Обратился я к интернету — нашёл, что последняя версия прошивки USBAsp поддерживает функцию изменения частоты SCK программными средствами avrdude. Однако вот незадача — все имеющиеся у меня версии avrdude не умели этого делать — видно, только недавно появилась поддержка USBAsp в полный рост. Ладно, прошёл на официальный сайт, чтобы скачать последнюю версию бинарника под винду и… обломался. Добрые дяди выкладывают только сурс, и тот под линукс. Про компиляцию под винду сказано буквально три слова, и то, чтоб закомпилить нужен Cygwin. Обгуглив почти весь нет в поисках Windows-версии, я ничего толкового не нашёл и решил попробовать собрать свой бинарник по исходникам.
…процесс компиляции avrdude из-под Cygwin — отдельная история, полная интриги, неожиданных поворотов сюжета и приправленная витиеватыми ругательствами. Поэтому описывать это всё я не буду, скажу только, что у Cygwin инсталлятор на данный момент — редкостное дерьмо, которое можно в цирке показывать за деньги. Короче, к чему это я… Скомпилированную версию avrdude-5.8 я успешно протестировал в комбинации с USBAsp и ура! Программатор действительно изменяет частоту SCK и способен вытащить из комы плохо настроенную железку. Что, я собственно, и сделал с большим облегчением.
Ну и разумеется выложил я дудку для всеобщей благодати и процветания, можете забирать :-)
Download: Avrdude 5.8 for Windows