16 Вересня 2010 14:18
Після короткої відповіді на питання про різницю між новими версіями мікроконтролерів tinyAVR/megaAVR з літерою ‘A’ та їх попередниками я вирішив детальніше розглянути різницю між ними з точки зору програміста. Не претендую на повноту, але при підготовці матеріалу переглянуто було не лише Migrating Notes, але і документацію на відповідні мікроконтролери.
Continue reading ‘“A” and “not-A” AVRs’ »
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?’ »
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’ »
21 Травня 2010 0:18
Знадобилося тут додати функціоналу в зроблені колись “технологічні” пульти. Плати були зроблено зовсім давно під ATmega8, саме в ці було запаяно ATmega168, але там вже було зайнято більше, ніж три чверті коду. Пару підходів — і вже маємо запас всього 10%. Вихід на перший погляд простий — поставити мікроконтроллер з вдвічі більшим об’ємом флеша і надовго забути про проблеми.
Заходжу на сайт Imrad, де колись бачив 328-мі, хоч і по не дуже приємній ціні. Оскільки це не серійний виріб, то ціна не дуже й важлива. Але… Їх нема! Сайт Biakom — нема!!
Ну якщо вже просто забігти і взяти однак неможливо — передаю естафету комплектатору. Він пішов обдзвонювати по своєму списку і знайшов на останньому дзвінку (треба було знизу починати).
В Rainbow ATmega328P-AU знайшлися по ціні близько 25грн при “партії” в п’ять штук. Це було пару тижнів тому, але я не поспішав писати, поки не перевірив, що мікроконтроллери “справжні”, адже вже встиг прочитати про підробки і вже не знав, чи радіти низькій ціні. Тоді по сайту у них на складі було трохи більше семисот штук, на момент написання цього повідомлення – майже шість сотень. Кому вони потрібні — поспішайте!
20 Квітня 2010 12:37
Вийшла нова версія програматора avreal — v1.28r2 (Mon 2010-04-19).
- Виправлено помилку верифікації для елемента внутрішнього списку фрагментів коду, що перетинає межу 64К слів (ATmega2560, ATmega2561) – проявлялася лише на певним чином зроблених hex-файлах, мені після avr-gcc такі жодного разу не траплялися.
- Прибрано помилку, яка призводила до краху програми у випадку, коли з ключем -a нема ключа -p або +chip (наслідок неуважної правки в 1.28r0 “вже непотрібно вказувати +chip”)
- Додано контроллери ATmega164A, ATmega324A, ATmega1284, ATmega328, AT90pwm81
- Додано імена-синоніми для тих контроллерів з літерою “A”, які не відрізняються від “не-A” кристалів:
ATmega8A, ATmega16A, ATmega32A,
ATmega64A, ATmega128A,
ATmega48A, ATmega88A, ATmega168A,
ATmega48PA, ATmega88PA, ATmega168PA,
ATmega164PA, ATmega644A, ATmega165PA,
ATtiny261A, ATtiny461A, ATtiny861A
- При відсутності функції блочного запису байтів в dlportio.dll (її емуляторі) використовується власна функція з побайтовим виводом.
- win32-версія – вилучено динамічне лінкування функції FT_Reload бібліотеки ftd2xx.dll, програма не залежить від її наявності в бібілотеці.
4 Березня 2010 8:43
При використанні ключа -a без хоча б одного з ключів -p чи +chip програма “падає” (“виконала неприпустиму операцію …” і так далі).
Вважаю цю помилку не критичною, бо при правильному використанні в комбінаціях -a -p або -a +chip програма працює нормально, а при неправильному нічого не ламає ні в мікроконтроллері, ні в операційній системі. Нова версія програми для виправлення цієї помилки випускатися не буде, виправлення буде додано пізніше в чергову версію.
Виправлено в
avreal 1.28rev2