028-Uniprof - програмуємо avr через com порт

Спочатку обов'язково прочитайте огляд UniProf. багато що стане зрозуміліше.
Скачайте програму UniРrof.
UniProf - Программатор для AVR. дивимося avr.nikolaew.org

Крім того, нам потрібен COM програматор. а також, отладочная плата з роз'ємами для підключення програм (для прикладу візьмемо отладочную плату з ATTiny2313). Ось мабуть і все що нам потрібно.

Вікно UniРrof виглядає так:

028-Uniprof - програмуємо avr через com порт

Тепер покроково опишемо сам процес програмування за допомогою COM програматора:

1 Підключаємо програматор до COM порту.

2 Підключаємо програматор до плати мікроконтролера, подаємо харчування на мікроконтролер.

3 Запускаємо UniРrof (якщо ще не запущений), вибираємо в полі «Программатор підключений до" COM порт. Якщо Ви не знаєте номер свого COM порту, просто по черзі переберіть всі. Синім має відобразитися назву мікроконтролера. Для перевірки надійності зв'язку тикаємо кілька разів на червону системну частоту. Якщо на будь-якому етапі випадає таке вікно. то зв'язок ненадійна - ставимо галочку «гальмо» - і перевіряємо заново.

4 Натискаємо кнопку завантажити «HEX». вибираємо потрібний файл-прошивку. У віконці «PROGRAM» з'являться цифри - наша програма.

5 Натискаємо кнопку «Erase» - стираємо мікроконтролер. Якщо відбуваються помилки - ставимо галочку «Гальмо».

6 Натискаємо кнопку «Prog» - записуємо програму в мікроконтролер. Якщо відбуваються помилки - ставимо галочку «Гальмо». повторно стираємо і знову програмуємо. Програма записана, залишилося записати фьюз.

7Обязательно ставимо галочку «Гальмо»! Натискаємо кнопку «FUSE». бачимо віконце, в якому 4 відділення (4 конфігураційних байта контролера). У кожному відділенні натискаємо кнопку «Read» зчитуємо поточні значення (це зменшить ймовірність помилки при введенні нових значень). Вводимо нові значення фьюз. Особливу увагу звертаємо на обведені червоним фьюз. Вони повинні залишитися в такому ж стані, інакше подальше програмування стане неможливим. Натискаємо «Write» в кожному з віконець (перше віконце - захисні біти - можна не чіпати). Готово, фьюз прошиті!

8 Знімаємо харчування з мікроконтролера, відключаємо програматор від плати - мікроконтролер прошитий, пристрій готовий!

- не найден мікроконтролер - перевірте, чи правильно підключено програматора до контролера, перевірте харчування контролера (повинно бути + 5v), спробуєте змінити порт (якщо є кілька);

- не розпізнає контролер - поставте галочку «гальмо», покликавши кілька разів червону системну частоту, поставте керамічний конденсатор на ніжки харчування контролера, якщо довжина шлейфу велика, можливо великі перешкоди заважають - зменшіть довжину шлейфа;

- прошивка записується з помилками - поставте галочку «гальмо», покликавши кілька разів червону системну частоту, поставте керамічний конденсатор на ніжки харчування контролера, якщо довжина шлейфу велика, можливо великі перешкоди заважають - зменшіть довжину шлейфа;

P.S. Потрібно прошити крім Flash ще і EEPROM?
Все просто! Спочатку ставимо галочку EEPROM - з'явиться віконце EEPROM (Галочку «гальмо» потрібно поставити до цього!). Далі відкриваємо HEX-файл, автоматично програма знайде і завантажить EEP-файл (заповняться даними обидва віконця PROGRAM і EEPROM). Якщо юніпроф сам не визначив EEP-файл відкриється діалог вибору файлу. Далі діємо як описано вище. При натисканні кнопки «Prog» програмується і Flash і EEPROM. От і все!

(Visited 12 146 times, 11 visits today)

Навігація по публікаціям

Вітаю! Вирішив спробувати прошити ATTiny2313. До прошивки все було нормально. Після прошивки мк не визначається. Фьюз виставляв так:
CKSEL0 v
CKSEL1 v
CKSEL2 -
CKSEL3 v
SUT0 v
SUT1 -
CKOUT -
CKDIV8 -
RSTDISBL v
BODLEVEL0 -
BODLEVEL1 v
BODLEVEL2 -
WDTON -
SPIEN -
EESAVE -
DWEN v
LB1 -
LB2 -
SELFPRGEN -
Що зробив не так?

Включений зовнішній резонатор до 3 МГц.
Він стоїть? Якщо немає - постав і все запрацює.
І ще:
- CKOUT - тобі потрібен вихід частоти задає генератора на ніжку МК? Якщо немає відключи - постав галку.
- WDTON вачдог таймер потрібен? якщо немає - відключав.

@GetChiper
Спасибі за допомогу! Зовнішній кварц не варто! Чи не знав що у різних програм потрібно за своїм ставити фьюз. Ще раз дякую.

@GetChiper
Поставив часовий кварц з материнки-все одно не запускается.Пробовал з кондером і без. Де ще може бути проблема?

Часовий кварц не підійде. Постав звичайний на 1-3 МГц.

@GetChiper
Поставив кварц на 3.2768 МГц - запустився! Спасибі за допомогу!

Привіт, а чи можна СОМ-програматором Громова і даною програмою прошити чіп atmega8a-au 1024. Просто з Китаю привезли VagTacho 3.01 там чіп atmega8a-au 1024. Чіп визначає як mega8 але після натискання кнопки Prog видає помилку.
Заздалегідь дякую за допомогу.

У підтримці на сайті програматора такого чіпа немає. Але він фактично копія мегі8, потрібно пробувати - як відреагує програма.

Спасибі за відповідь.
Ще питаннячко. У прог-ме chipblasteravr EESAVE = 0 в UniРrof = 1
SPMEN = 0 в UniРrof такого немає.
Як вчинити в цей випадки.

SPMEN - цей найчастіше не потрібен (дозвіл запису в область флеша з програми - самопрограмування), тому просто ігноруйте його

до речі, правильно цей фьюз пишеться SELFPRGEN

EESAVE = 0 в UniРrof = 1? Як бути

Ставте що завгодно, без різниці. Цей фьюз дозволяє або забороняє прати EEPROM при перепрограмірованія кристала.

Схожі статті