10 Січня 2011 23:13
Вийшла нова версія програматора avreal — v1.28r6 (Sun 2011-01-09).
- Додано ATmega325A, ATmega329A.
- Додано імена-синоніми для тих контроллерів з літерою «A», які не відрізняються від «не-A» кристалів:
ATmega165A, ATmega645A, ATmega6450A
ATmega169A, ATmega329PA, ATmega649A, ATmega6490A
- avreal/Linux64, адаптери на FT2232*, FT4232H:
Біблотека завантажується по імені libftd2xx.so.0, а не libftd2xx.so, як це було раніше. Це уможливлює встановлення на комп’ютері паралельно старої (потрібної для avreal/Linux64) та нової версій бібліотеки, наприклад, libftd2xx.so.0.4.16 та libftd2xx.so.1.0.0.
avreal/Linux32 може працювати як зі старими, так і з новими версіями бібілотеки.
Читати більше про проблеми з libftd2xx.so.1.0.0 в 64-бітному лінуксі.
- Ключ -k/-K старту програмування по натисканню кнопки на адаптері отримав дві форми з різним порядком етапів роботи avreal.
25 листопадаа 2010 21:13
avreal нормально працював під 64-бітними версіями Windows і раніше. Хто знав, що і як треба робити — ставив собі потрібний драйвер і програмував AVR-ки. Я вже досить давно практично постійно працюю під лінуксом, тому мене ця тема мало цікавила. А час, то є річ ще дивніша, ніж мед у Вінні-Пуха. Як тільки він є — так його відразу нема.
Нарешті я знайшов час і місце2 для того, щоб власноруч перевірити встановлення та роботу звичного для Windows 2000 та Windows XP драйвера DLPortIO під 32-бітною Windows7 та замінника цього драйвера для WindowsXP/64 та Windows7/64. Без цього мені просто важко було б викладати щось у себе на сайті. Програма dd попрацювала як слід, відновлюючи розділи з образів для чергових перевірок встановлення на «чисту» систему тим чи іншим (в тому числі правильним чи неправильним) способом.
В результаті вчора я виклав на сторінці download архіви для двох методів інсталяції DLPortIO-32 (графічний інтерфейс та командний рядок) та архів з DLPortIO-64 (командний рядок). Вже можна викачувати, ставити і працювати.
А я найближчим часом напишу про все це трохи детальніше.
місце2 — це не зноска, це піднесення до другого степеня. Треба було знайти і місце в сенсі комп’ютера, над яким так позбиткуватися, і місце на його жорсткому диску.
Написав:
DLPortIO та 32-bit Windows.
DLPortIO x64 та 64-bit Windows.
12 Жовтня 2010 12:17
Вийшла нова версія програматора avreal — v1.28r5 (Tue 2010-10-12).
- Виправлено помилку synchronisation lost після верифікації для деяких моделей контроллерів та адаптера на FT2232/FT4232.
- Додано ATmega128RFA1
8 Вересня 2010 21:17
Вийшла нова версія програматора avreal — v1.28r4 (Tue 2010-09-07).
На жаль, не знайшлося часу виправити помилку втрати синхронізації, це вже після відпустки робитиму.
Помилку виправлено у версії
1.28r5.
29 Серпня 2010 16:04
Виявилася доволі дивна помилка в avreal 1.28r2 та 1.28r3. При співпадінні умов
- Використовується програматор на базі FT2232/FT4232
- Зайняті верхні два байти флеш-пам’яті (кодом або лічильником стирань)
- В одному виклику avreal виконується робота як з флеш пам’яттю, так і з ф’юзами
- Присутній ключ верифікації -v
для деяких мікроконтроллерів після першої операції верифікації робота обривається на помилці synchronosation lost.
Continue reading ‘Помилки в avreal 1.28r2 та 1.28r3’ »
16 Серпня 2010 23:03
Вийшла нова версія програматора avreal — v1.28r3 (Mon 2010-08-16).
- Виправлено помилку, яка призводила до неможливості роботи з Extended Fuse Byte для мікроконтроллерів ATmega16M1, ATmega32M1, ATmega64M1, ATmega32C1, ATmega64C1.
Ой! Є
неприємні помилки. Вони вилазять не для всіх контроллерів та програматорів, але…
11 Серпня 2010 23:39
Ще одна група запитань, що доволі часто зустрічаються в логах, це запитання про відмінності нових «А-версій» мікроконтроллерів AVR від їх попередників. Шукають «в чому різниця між atmega48p та atmega48pa», «різниця програмування atmega8a та atmega8», або взагалі «перехід з atmega16 на atmega16A».
Вираз «програмування мікроконтроллера» може мати різні значення і лише іноді запитання поставлено хай з використанням сленгу, але однозначно — «прошивка atmega32 та atmega32A».
Continue reading ‘Чим відрізняється ATtiny2313A від ATtiny2313?’ »
5 Серпня 2010 0:27
Під ОС Windows avreal іноді нестабільно працює з LPT. Програмування зрідка може пройти нормально, а може в будь який момент дати збій, наприклад, synchronisation lost.
Причиною таких збоїв може бути періодичне опитування підсистемою Plug-and-Play (PnP) операційної системи Windows порта LPT з метою виявлення підключених пристроїв. Таке опитування проводиться під час завантаження системи, що добре видно по перемигуванню світлодіодів на адаптері програмування, але воно може відбуватися і під час роботи ОС. Біда в тому, що драйвер DLportIO.sys не блокує доступ до LPT від інших програм під час роботи з портом клієнта цього драйвера і підсистема PnP щиро впевнена, що порт не зайнято, тому спокійно лізе перевіряти стан LPT і порушує роботу avreal.
В одному особливо «цікавому» випадку у мене програма стабільно встигала записатися в мікроконтроллер, видати привітання на рідкокристалічний індикатор на HD44780 і почати працювати, але далі в довільні моменти часу перезапускалася. Я пару годин шукав помилку у себе в програмі — непроініціалізований вказівник на функцію чи необроблене преривання, доки не помітив, що перезапуску програми передує перемигування світлодіода активності на адаптері Altera ByteBlaster. Windows при звертанні до порта видавала таку послідовність, яка активувала виходи адаптера, видавала імпульс RESET і знову вимикала адаптер. І в цьому випадку не допомогло б наіть блокування LPT драйвером на час роботи програми, адже avreal в цей час вже завершив роботу.
Щоб позбавитися спричинених PnP проблeм завантажте файл disable-lpt-poll.reg та запустіть його на виконання. Як видно з вмісту файлу, він прописує в реєстрі Windows ключ, який забороняє опитування (poll) під час роботи системи:
REGEDIT4
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Parport\Parameters]
"DisableWarmPoll"=dword:00000001
1 Серпня 2010 17:11
avreal не обробляє fuse з Extended Fuse byte для мікроконтроллерів ATmega16M1, ATmega32M1, ATmega64M1, ATmega32C1, ATmega64C1. При зчитуванні показує для всіх нульові значення (начебто прошиті), запис не виконується.
Виправлено в
avreal 1.28rev3
28 Липня 2010 0:15
Все, про що ви хотіли дізнатися,
але боялися спитати.
Судячи з логів сайту, доволі часто шукають фразу «synchronisation lost», але чомусь досі ніхто не задав запитання про неї у коментарях до сторінки avreal.
Повідомлення «synchronisation lost» означає порушення обміну інформацією з програмованим мікроконтроллером. Обмін по SPI між адаптером програмування та вбудованою в мікроконтроллер апаратурою програмування відбувається так само, як і між двома мікроконтроллерами.
Continue reading ‘avreal synchronisation lost’ »