Как прочитать 8MHz Calibration Byte в PonyProg?

Volante24
Vad64:

Можно через скрипт.

А конкретно синтакс команды не приведете? А то я точного описания не нашел, а то, что пробовал “по аналогии”, не срабатывало.

Или залезть в исходник PonyProg, он открыт.

Он, наверное, на C, а я его не знаю…

PigTail:

Ага, понятненько, я то думал Вы программу заливаете в микроконтроллер… 😃

И то, и другое. Это две совсем разные задачи. Просто, когда зашла речь о железе, пришла мысль задать и второй вопрос, имеющий отношение к перехвату обмена данными.

Vad64
Volante24:

А конкретно синтакс команды не приведете? А то я точного описания не нашел, а то, что пробовал “по аналогии”, не срабатывало.

В понипроге вообще-то есть встроенная справка

READ-CALIBRATION <address>[mem][osc_index]

Description:
Read the internal oscillator calibration value from the AVR and write it to a location in the buffer at the specified address (and memory type DATA or PROG). The osc_index argument specify which calibration value should be read since some AVR have several oscillator frequencies. The osc_index argument is available only from the 2.06c version
Example:
SELECTDEVICE ATMEGA128
READ-CALIBRATION 0x100 DATA 3
Read the oscillator calibration value for 8MHz frequency

Только модификаторы DATA и PROG, вроде, разницы не делают

Volante24
Vad64:

В понипроге вообще-то есть встроенная справка

READ-CALIBRATION <address>[mem][osc_index]

Description:

Example:
SELECTDEVICE ATMEGA128
READ-CALIBRATION 0x100 DATA 3
Read the oscillator calibration value for 8MHz frequency

Только модификаторы DATA и PROG, вроде, разницы не делают

Именно это я и делал, следуя приведенному описанию. Только заменил ATMEGA128 на ATTINY26 (одно из того, что я упоминул, как “по аналогии”). Вот оно и не работало, выдавало одно и тоже значение, что и вообще без DATA. Даже если написать DATA 27 – все то же число. Может, PonyProg чего-то не знает про ATTINY26, и не нужно было заменять с ATMEGA128? Этого я не пробовал…

Вряд ли все calibration байты на моем контроллере в точности совпадали! Так что я расцениваю это как то, что команда не работает так, как должна. Могу, конечно, еще поэкпериментировать, но как то вроде здесь особого простора и нет…

Может быть, какая точно команда исполняется для данного МК, прописано в каком-нибудь конфигурационном файле PonyProgа? Что это за файл и как выглядит соответствующая строка?

Vad64

Выполняю файл
SELECTDEVICE ATTINY26
READ-CALIBRATION 0 PROG 0
READ-CALIBRATION 1 PROG 1
READ-CALIBRATION 2 PROG 2
READ-CALIBRATION 3 PROG 3

и вижу появление в начале буфера 4х разных байт калибровки

Volante24
Vad64:

Выполняю файл

и вижу появление в начале буфера 4х разных байт калибровки

Отлично! Попробую именно это, наверное, я делал что-нибудь “немного неправильно”.