|
Заблокировалась ATtiny13A, В чем причина? |
|
|
|
Jan 4 2016, 09:41
|
Частый гость
 
Группа: Участник
Сообщений: 95
Регистрация: 5-08-10
Пользователь №: 58 763

|
Добрый день. Помогите пожалуйста разобраться. Возникла проблема при программировании м-сх ATtiny13A, работающей от внутреннего генератора. Фьюзы у нее были такие, и я их не менял:
Я записал новую программу, в которой применил коэф-т деления генератора на 256. Программа записалась и правильно работает, но контроллер перестал читаться и я больше не могу его перепрограммировать. Подскажите, что могло произойти и как избежать этого в дальнейшем?
|
|
|
|
|
 |
Ответов
|
Jan 4 2016, 12:34
|
Частый гость
 
Группа: Участник
Сообщений: 95
Регистрация: 5-08-10
Пользователь №: 58 763

|
Спасибо за ответы. Цитата(kovigor @ Jan 4 2016, 15:29)  Попробуйте затактировать МК от внешнего генератора (не от кварца, а именно от генератора), после чего прочитать и изменить Fuses ... Пробовал затактировать от внешнего генератора 100 кГц. К сожалению, не помогло, не получалось прочесть ни Flash, ни фьюзы. Цитата(adnega @ Jan 4 2016, 13:57)  Попробуйте понизить частоту SCK при программировании до минимума. Спасибо, помогло! Я программирую программой PonyProg2000, и в файле PonyProg2000.ini с помощью Блокнота изменил строку SPIBusSpeed=NORMAL на SPIBusSpeed=VERYSLOW. После этого все стало замечательно читаться - и Flash, и фьюзы. Уважаемый adnega, не могли бы объяснить, в чем была причина, ведь раньше все читалось и при скорости NORMAL ?
|
|
|
|
|
Jan 4 2016, 16:03
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(asc2000 @ Jan 4 2016, 15:34)  Уважаемый adnega, не могли бы объяснить, в чем была причина, ведь раньше все читалось и при скорости NORMAL ? Частота ядра должна быть в несколько раз выше частоты SCK при программировании. Цитата 17.6 Serial Programming: Depending on CKSEL fuses, a valid clock must be present. The minimum low and high periods for the serial clock (SCK) input are defined as follows: Low: > 2 CPU clock cycles for fck < 12 MHz, 3 CPU clock cycles for fck >= 12 MHz High: > 2 CPU clock cycles for fck < 12 MHz, 3 CPU clock cycles for fck >= 12 MHz Но я по опыту помню: когда понижал частоту до минимума в малопотребляющих применениях, нужно было перепрошивать на очень низкой частоте.
|
|
|
|
|
Jan 5 2016, 11:51
|
Частый гость
 
Группа: Участник
Сообщений: 95
Регистрация: 5-08-10
Пользователь №: 58 763

|
Цитата(adnega @ Jan 4 2016, 20:03)  Частота ядра должна быть в несколько раз выше частоты SCK при программировании. Это понятно. Цитата(adnega @ Jan 4 2016, 20:03)  17.6 Serial Programming: Depending on CKSEL fuses, a valid clock must be present. The minimum low and high periods for the serial clock (SCK) input are defined as follows: Low: > 2 CPU clock cycles for fck < 12 MHz, 3 CPU clock cycles for fck >= 12 MHz High: > 2 CPU clock cycles for fck < 12 MHz, 3 CPU clock cycles for fck >= 12 MHz Это тоже понятно. Значит, в режиме программирования имеют значение только установки фьюзов CKSEL, и не имеет значения фьюз CKDIV8 ? Цитата(adnega @ Jan 4 2016, 20:03)  Но я по опыту помню: когда понижал частоту до минимума в малопотребляющих применениях, нужно было перепрошивать на очень низкой частоте. А вот это не совсем понял. Как именно вы понижали частоту до минимума? Использовали внутренний генератор 128 кГц? Или каким-то иным способом?
|
|
|
|
|
Jan 5 2016, 12:32
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(asc2000 @ Jan 5 2016, 14:51)  Это тоже понятно. Тогда, может, проясните, что такое fck в документации? Цитата(Александр1 @ Jan 5 2016, 15:21)  Запрограммированный бит CKDIV8 (0) делит тактовую частоту на 8 независимо от установки CKSEL. На самом деле запрограммированный CKDIV принудительно устанавливает CLKPS == 0011, что соответствует делителю /8. Незапрограммированный CKDIV принудительно устанавливает CLKPS == 0000, что соответствует делителю /1. Можно поменять CLKPS в программе (независимо от бита CKDIV), чтобы получить другую частоту.
|
|
|
|
Сообщений в этой теме
asc2000 Заблокировалась ATtiny13A Jan 4 2016, 09:41 adnega Цитата(asc2000 @ Jan 4 2016, 12:41) и я б... Jan 4 2016, 09:57    Александр1 Цитата(asc2000 @ Jan 5 2016, 14:51) ... в... Jan 5 2016, 12:21     asc2000 Цитата(Александр1 @ Jan 5 2016, 16:21) Пр... Jan 5 2016, 15:33      adnega Цитата(asc2000 @ Jan 5 2016, 18:33) Насче... Jan 5 2016, 15:57      Александр1 Цитата(asc2000 @ Jan 5 2016, 18:33) Насче... Jan 6 2016, 09:01     Александр1 Цитата(adnega @ Jan 5 2016, 15:32) На сам... Jan 5 2016, 13:11      adnega Цитата(Александр1 @ Jan 5 2016, 16:11) Да... Jan 5 2016, 13:24   asc2000 Цитата(adnega @ Jan 4 2016, 20:03) Depend... Jan 6 2016, 23:56    adnega Цитата(asc2000 @ Jan 7 2016, 02:56) Но ве... Jan 7 2016, 06:22     asc2000 Цитата(adnega @ Jan 7 2016, 10:22) Вот ес... Jan 7 2016, 12:56      adnega Цитата(asc2000 @ Jan 7 2016, 15:56) Ведь ... Jan 7 2016, 17:01       asc2000 Цитата(adnega @ Jan 7 2016, 21:01) Если п... Jan 7 2016, 20:52 Ga_ry CKDIV8 это просто какая-то "засада" заче... Jan 5 2016, 23:06 adnega Цитата(Ga_ry @ Jan 6 2016, 02:06) CKDIV8 ... Jan 6 2016, 07:37  Ga_ry Цитата(adnega @ Jan 6 2016, 09:37) Дык, д... Jan 6 2016, 14:31   adnega Цитата(Ga_ry @ Jan 6 2016, 17:31) Думаю х... Jan 6 2016, 15:44 rx3apf В имеющемся под рукой экземпляре даташита на tiny1... Jan 8 2016, 18:25 nagisa Цитата(asc2000 @ Jan 4 2016, 17:41) Я зап... Apr 11 2016, 08:39
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|