ЮТ писал(а):А как она решена то? У меня такая же х...
По какой-то неизвестной причине у товарища vlad-kyiv оказался ATTiny2313A с тактовой частотой внутреннего RC-генератора примерно 6.6 Мгц вместо 4Мгц. В результате этого скорость COM-порта не соответствовала ожидаемой. После многодневного кидания осциллограммами мы все же заставили его работать на нужной частоте.
Технология такая:
1. Читаем байт калибровки и запоминаем его значение (read cal byte2.jpg).
1. Заливаем прошивку echo.rar (периодически выдает символ "U" (0x55) в COM-порт). Подсоединяем COM-порт. Включаем Hyper Terminal с параметрами 9600-N-1. В первую по счету ячейку EEPROM вбиваем запомненное значение и прошиваем EEPROM (change cal byte 2.jpg). Если в Hyper Terminal ничего не отображается, прибавляем (вычитаем) от начального значения калибровки 1 и вновь прошиваем EEPROM, и так до тех пор, пока не появится символ "U" в терминале. Чтобы было понятнее, такой ряд значений (n - начальное значение байта калибровки): n-10, n-9, ... n-1, n, n+1, n+2, ... n+10. После появления "U" запоминаем значение байта калибровки.
У кого есть осциллоскоп, могут прошить фьюз CKOUT и смотреть тактовую частоту на 6-ой ноге МК. Период д.б. 0.25мкс. После окончания калибровки фьюз CKOUT отключить!
2. После удачного первого пункта прошиваем рабочую прошивку эмулятора, учитывающую калибровку (emulator.rar). В 6-ю по счету ячейку EEPROM записываем 0 (разрешение использовать калибровку). В 8-ю по счету ячейку EEPROM записываем значение байта калибровки, полученное на 1 шаге.
.