Особливості програматору
Поняття та характеристика програматора. USB програматор мікроконтролерів, сумісній з AVR910. Програматор для PIC, AVR і мікросхем пам'яті. Внутрішньосхемний USB-програматор-відладчик. Реалізація принципової схеми та розрахунок елементів і вузлів схеми.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | курсовая работа |
Язык | украинский |
Дата добавления | 07.06.2015 |
Размер файла | 1,6 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
1. Огляд та аналіз аналогів обє'кту проектування
Принцип незворотного зміни зв'язків в інтегральних мікросхемах електричним способом був вперше реалізований фірмою Radiation (США) в 1996 р. в запам'ятовуючому матриці постійного запам'ятовуючого пристрою (ПЗП). У 1970 р. фірма Harris conductor (США) випустила перше закінчену програмований ПЗУ (ППЗУ) ємністю 512 біт, а з 1972 р. почалося масове виробництво аналогічних ППЗУ багатьма провідними фірмами. З 1976 р. розвивається новий тип пристроїв із змінними зв'язками - БІС довільній логіки: програмовані логічні матриці, мультиплексори тощо, однак ППЗУ до цих пір залишаються найбільш масовими пристроями цього виду.
Програмовані ПЗУ є результатом удосконалення класичної схеми напівпровідникового ПЗП з масочний програмуванням. Найпростіше ПЗУ містить запам'ятовуючий матрицю, що складається з шин рядків і стовпців, дешифратори адреси рядків і стовпців і підсилювачі зчитування.
Програматор - апаратно-програмний пристрій, призначений для запису інформації в постійне запам'ятовуючий пристрій.
Класифікація програматорів
За типом мікросхем :
1.Програмуючі мікросхеми ПЗУ (ПЗП з ультрафіолетовим стиранням, ППЗУ, флеш-пам'ять);
2. Програмуючі внутрішню пам'ять мікроконтролерів;
3. Програмуючі ПЛІС;
Універсальні програматори можуть підтримувати всі перераховані вище типи.
За складністю :
1. Програматори які підключається до COM-або LPT-порту. Наприклад, самий простий програматор для мікросхем AVR - це кабель із шести проводів і чотирьох резисторів.
2. Складніші програма тори, які містять свій мікроконтроллер. Подібні програматори зручні тим, що після роботи переводять свої виходи в Z-стан, і запрограмоване пристрій можна випробовувати, не відключаючи програматора. Такі програматори, як правило, працюють з одним-двома родинами мікросхем.
У конструкторських бюро , лабораторіях і на виробництві застосовуються універсальні програматори. Оскільки в таких пристроях кожен із виводів роз'єму (а цих виводів може бути до сотні) може подавати на мікросхему напруги від 0 до 27 В з точністю в 0,1 вольт і частотами до 40 МГц, універсальні програматори бувають дуже дорогі - до декількох тисяч доларів . Зате при появі нової мікросхеми достатньо додати її підтримку на програмному рівні.
По підключенню мікросхеми :
1.Параллельний.
2.Внутрішньосхемний.
Паралельні програматори містять роз'єм, в який і вставляється програмована мікросхема. Внутрішньосхемні придатні тільки для тих мікросхем, в яких підтримується внутрішньосхемне програмування, але дозволяють прошивати мікросхему, не виймаючи її з пристрою.
За підключенням до комп'ютера:
Перші програматори були автономними - для набору прошивки була клавіатура або комутаційна панель. З поширенням ПК такі програматори були повністю витіснені підключаються до комп'ютера - спеціальна програма (яка також називається програматором) передає прошивку з комп'ютера, а програматор залишається тільки записати її в пам'ять мікросхеми.
Для підключення програматорів можуть застосовуватися:
1.Послідовний порт.
2.Паралельний порт.
3.Спеціалізірована інтерфейсна плата (ISA або PCI).
4. USB.
5.Ethernet.
Варто зауважити, що в самих простих паралельних і послідовних программаторах керуючому ПО доводиться безпосередньо управляти логічним рівнем на виводах порту. Таке пряме управління в Windows заборонено, це обходиться установкою спеціалізованого драйвера; через адаптери USB > COM bitbang-програматори працюють вкрай повільно (одиниці-десятки байт в секунду). Мікроконтролерного програматори повністю підтримують протокол COM-або LPT-порту й тому вільні від цих недоліків. програматор мікросхема відладчик
Спеціалізовані плати зрідка застосовувалися до появи USB, так як дозволяли досягти максимальних швидкостей обміну даними. Втім, одночасно вони робили програматор стаціонарним.
Сучасні програматори підключаються через USB (лише прості дешеві конструкції використовують COM-або LPT-порти). Високопродуктивні промислові програматори використовують Ethernet.
За додатковими функціями :
(Тут зазначені як апаратні, так і програмні функції.)
1.Наявність програмного забезпечення під поширені платформи зазвичай під Windows і Linux.
2. Перевірка правильності підключення ще до спроби стерти мікросхему.
Перевірка справності програматора.
3. JTAG-адаптери, придатні одночасно як для програмування, так і
для налагодження прошивок.
4. Польові програматори мають компактні розміри і містять внутрішню пам'ять для зберігання прошивки. Такі програматори призначені для обслуговування техніки прямо в місцях її встановлення (часом важкодоступних).
5. Вбудований HEX-редактор, що дозволяє відкоригувати записану в мікросхемі інформацію.
6. Можливість самостійного оновлення прошивки самого програматора.
7. Можливість одним натисканням кнопки виконати деяку послідовність дій - наприклад, стерти, проконтролювати стертость, записати, перевірити правильність запису і встановити конфігураційні біти (так зване автоматичне програмування).
8. У программаторах для масового програмування може застосовуватися скриптова мова, на якому можна реалізувати, наприклад, автоінкремент серійних номерів - таким чином, кожна мікросхема буде мати унікальний номер.
1.1 Програматор ,який підключається до паралельного порту
Програматори, що підключаються до паралельного порту, відрізняються простотою і надійністю. Найпростіший програматор, який дозволяє програмувати мікросхеми AVR, містить всього три резистора. Весь алгоритм паралельного каналу зв'язку реалізується в комп'ютері програмним шляхом.
Рис1.Схема программатора з підключенням до паралельного порту.
Ця схема сумісна з програматором системи STK200/300.
Пропонований програматор призначений тільки для роботи в послідовному режимі і передбачає внутрішньосхемне програмування. Від найпростішої схеми на трьох резисторів дана схема відрізняється наявністю захисного буфера на мікросхемі 74НС244. Ця мікросхема представляє собою два чотирьохканальний керованих буфера.
Управління кожним з буферів проводиться за допомогою входу З. Сигнал логічного нуля на цьому вході відкриває відповідний буфер, і сигнали з входів буфера надходять на його виходи. Сигнал із входу I0 надходить на вихід О0, сигнал з входу I1 на вихід O1 і так далі. Якщо на вхід З подати логічну одиницю, буфер закривається, і всі його виходи переходять у високоімпен-дансний стан.
Програматор підключається до LPT-порту комп'ютера за допомогою роз'єму X1. Саме через цей роз'єм на схему надходять керуючі сигнали від комп'ютера. Через роз'єм Х2 на програматор може подаватися зовнішнє живлення. До відлагоджуючої схеми програматор підключається за допомогою роз'єму Х3.
У процесі програмування програма управління програматором включає буфери DD1.1 і DD1.2, а потім організує обмін інформацією з програмованою мікросхемою за допомогою наступних сигналів:
MSIO, MOSI, SCK (відповідно до алгоритму передачі даних);
RESET (переклад мікросхеми в режим програмування і скидання).
По закінченні процесу програмування обидва буфера закриваються. Після цього програматор не заважає роботі схеми, до якої він підключений.
1.2 USB програматор мікроконтролерів AVR і AT89S, сумісній з AVR910
Цей пристрій підтрімує послівній і посторінковій запис, що вікорістовується при програмуванні МК сімейства AVR, і побайтно запис для МК AT89S53 і AT89S8252 сімейства AT89S. Таким чином, за допомогою програматора можна програмуваті всі існуючі МК сімейства AVR і МК AT89S53 і AT89S8252 сімейства AT89S за підтримки ціх МК з боку керуючого програмного забезпечення, встановленого в комп'ютері. Програматор виконаний на основі драйвера від Objective Development і повністю сумісній по командах з орігінальнім програматором AVR910 від ATMEL. Видалення "зайвих", на перший погляд, деталей може призвесті або до неправильного функціонування програматора, або до виходить з ладу порту USB комп'ютера.
Рис2. Схема програматора мікроконтролерів AVR і AT89S.
Роз'єм Х1 з'єднують стандартним кабелем з одним з тих, що є в комп'ютері гнізд порту USB. Плавка вставка FU1 служить для захисту ліній живлення цього порту від випадкового замикання по ланцюгах програматора. Діоди VD1 і VD2 - звичайні випрямляючі з прямим падінням напруги 0,6 ... 0,7 В - призначені для зниження напруги мікроконтроллера DD1 до 3,6 В. Згідно документації, він може працювати при такій напрузі живлення з тактовою частотою до 14 МГц. Роз'єм Х2 з'єднують з роз'ємом ISP програмованого пристрою або з панеллю програмованої мікросхеми, напруга живлення на яку подається окремо. На контакт 3 роз'єму Х2 виведені прямокутні імпульси з частотою 1 МГц для "пожвавлення" МК, у якого було помилково запрограмовані розряди конфігурації (fuses), що відповідають за тактування. Цей сигнал генерується постійно і не залежить від режиму роботи програматора.
Світлодіоди HL1 і HL2 сигналізують про поточні дії програматора - відповідно про читанні інформації з пам'яті програмованого мікроконтролера і про запис в неї. Світлодіод HL3 включений, коли на програматор подано живлення. Резистори R11-R15 призначені для узгодження рівнів сигналів МК DD1 з діючими в зовнішніх ланцюгах. Перемичку S1 при початковому програмуванні МК DD1 встановлюють в положення "Мод." (протилежне її положенню на схемі). Підключивши до гнізда Х2 зовнішній програматор, виконують завантаження керуючої програми в МК. Після цього перемичку слід повернути в показане на схемі положення "Норм.". Для нормальної роботи завантаженої програми необхідно, щоб в МК DD1 були запрограмовані (встановлені в 0) розряди конфігурації SPIEN, CKOPT, SUT0 і BODEN, а частково залишено встановленими в 1. Зазвичай в МК АТmega8, отриманих безпосередньо від виробника, розряд SPIEN вже запрограмований. Встановивши перемичку S2, можливо знизити тактову частоту інтерфейсу SPI МК DD1 приблизно до 20 кГц. Це необхідно для програмування МК сімейства AVR, тактіруемих від внутрішнього генератора частотою 128 кГц. При відсутньої перемичці S2 інтерфейс SPI працює з частотою близько 187,5 кГц. Це дозволяє програмувати МК з мінімальною тактовою частотою 570 кГц (сімейств ATtiny і ATmega), 750 кГц (сімейства AT90S) і 7,5 МГц (сімейства AT89S). Знімати та встановлювати перемичку S2 можна "на ходу", тому що при кожному зверненні до інтерфейсу SPI програма МК DD1 перевіряє її наявність. Не рекомендується цього робити лише при запущеному процесі запису - читання програмованого МК, що може призвести до спотворення запису або читання інформації.
Програмування МК при використанні утиліти AVRProg v.1.4 з пакету AVR Studio займає разом з верифікацією 10 ... 30 с в залежності від обсягу пам'яті і тактової частоти. Програматор був успішно протестовано і з програмами ChipBlasterAVR v.1.07 Evaluation, CodeVisionAVR, AVROSP. Були запрограмовані МК AT89S53, AT89S8252, AT90S2313, AT90S8515, ATtiny13, ATtiny26, ATtiny45, ATtiny2313, ATmega48, ATmega8, ATmega8515, ATmega8535, ATmega16, ATmega32, ATmega64, ATmega128, AT90CAN128.
Програма AVRDUDE виявилася з даними програматором несумісною, вона не відпрацьовує коректно всі команди протоколу AVR910. При першому підключенні виготовленого програматора з правильно запрограмованим МК DD1 до комп'ютера операційна система знайде новий пристрій - AVR910 USB Programmer. Необхідно зауважити, що цього не відбудеться, якщо номінальна частота резонатора ZQ1 в программатор відрізняється від 12 МГц. Це пов'язано з особливостями роботи USB і програми МК DD1
Виявилося що програма AVRProg здатна працювати тільки з портами СОМ 1-COM4. Змінити номер порту можна за допомогою "Диспетчера пристроїв" Windows, виконавши послідовність: "AVR910 USB Programmer-> Властивості-> Параметри порту-> Додатково-> Номер-> СОМ-порту". Інсталяція програматора в системі Windows 2000 не відрізняється, в принципі, від описаної вище для Windows XP.
1.3 Програматор для PIC, AVR і мікросхем пам'яті
Пропонований програматор працює під управлінням програми PonyProg , що розповсюджується безкоштовно. Якщо обмежитися програмуванням МК PIC і мікросхем пам'яті, можна скористатися також програмами IC-Progl05 [2] і WinPic800 . поширюваними на тих же умовах.
Програмування 18-вивідних МК PIC і 20-вивідних AVR проводиться без будь-яких комутацій. Досить встановити МК в призначену для нього панель і вибрати його тип у меню використовуваної програми. При необхідності потрібні панелі можна встановити додатково або підключати потрібні для програмування виводи МК до спеціального гнізда в програматорі. Цей же роз'єм використовується при внутрішньосхемному програмуванні.
Крім МК пристрій дозволяє програмувати мікросхеми пам'яті з послідовним інтерфейсом, наявні в меню використовуваних програм. Для подібних мікросхем з інтерфейсом I2С в програматорі передбачена панель.
До початку процесу програмування і після його завершення напруга живлення програмованої мікросхеми відключено, що дає змогу безпечно встановити мікросхему в панель, а потім витягти її.
Перш ніж розглядати роботу програматора докладно, згадаємо деякі особливості програмування МК сімейств PIC і AVR. Номери МК різних типів можна знайти в технічній документації.
Щоб перевести в режим програмування МК сімейства PIC, потрібно подати на його вивід MCLR напругу 12 ... 14 В. Обмін інформацією з пристроєм, керуючим програмуванням, відбувається через двонаправлений вивід DATA. Імпульси, що синхронізують обмін, надходять на виводи CLOCK.
МК сімейства AVR підвищеної напруги не вимагають. Вони переходять в режим програмування при низькому логічному рівні на виводи RESET. При цьому необхідно, щоб до відповідних виводів МК був підключений кварцовий резонатор. Інформація приймається через вивід MOSI, а передається через висновок MISO. Вхід синхронізуючих імпульсів - вивід SCK.
Рис.3 Принципова схема програматора PIC, AVR і мікросхем пам'яті.
Схема програматора зображена на рис. 3, її найбільш істотна відмінність від прототипу полягає у використанні для зв'язку з СОМ-портом комп'ютера мікросхеми МАХ232СРЕ (DA2) - спеціалізованого перетворювача рівнів RS232-ТТЛ. Це дозволило автору виконати всі вимоги по рівнях переданих сигналів і навантажувальної здатності ліній порту і значно поліпшило надійність роботи пристрою.
Щоб надто не навантажувати СОМ-порт, передбачено живлення програматора та програмованої мікросхеми тільки від зовнішнього джерела. Його постійне (15 В) або змінна (10 ... 12 В) напруга поступає в програматор через діодний міст VD1, який служить випрямлячем змінної напруги.
Інтегральний стабілізатор DA1 живиться напругою 5 В перетворювач рівня DA2. Світлодіод HL1 сигналізує про включення живлення. Стабілізатор DA3 на 12 В - керований. Він включений при високому логічному рівні напруги на керуючому вході 4 і вимкнений при низькому рівні. Цю властивість використано для керування напругою, що переводять МК сімейства PIC в режим програмування. Про увімкнене живлення програмованої мікросхеми сигналізує світлодіод HL2.
Дуже важливим є правильний вибір ємності конденсатора С7 на виході стабілізатора DA3. При занадто великому її значення напруга, що переводить МК сімейства PIC в режим програмування, після включення стабілізатора буде наростати недостатньо швидко, що приведе до збою. Встановлювати конденсатор С7 дуже маленькою ємності або зовсім відмовлятися від нього не можна - це призводить до самозбудження стабілізатора і робить неможливим програмування .
Діод VD2 обмежує до безпечного значення від'ємну напругу, яка може надійти на керуючий вхід стабілізатора DA3 з контакту 3 роз'єми XS1 (лінії TXD СОМ-порту). Вузол на транзисторі VT2 формує сигнал RESET для МК сімейства AVR.
Вузол на транзисторах VT1 і VT3 розділяє наявну в МК сімейства PIC двобічної лінію DATA на дві односпрямовані. Під назвами MOSI і MISO ці ж односпрямовані лінії використовуються при програмуванні МК сімейства AVR.
Для аналогічного перетворення в був застосований логічний инвертор на одному транзисторі. Проте його практичне використання виявило досить велике число збоїв, причина яких, на думку автора, - недостатня затримка інформаційного сигналу на лінії DATA щодо синхронізуючого на лінії CLOCK. Додавання другого інвертора збільшило затримку і усунуло збої, однак "зайву" інверсію доводиться компенсувати відповідної налаштуванням керуючої програми.
1.4 USB програматор AVR910
Програматор виконаний на основі драйвера від Objective Development і повністю сумісний по командах з оригінальним AVR910 від ATMEL. Опис оригінальної схеми програматора можна взяти в Application Note AVR910: In-System Programming, а список підтримуваних команд можна подивитися в Application Note AVR109: Self Programming
Початкова схема пристрою виглядає наступним чином:
Рис 4.Принципова схема USB програматора AVR910.
Світлодіоди VL1, VL2 сигналізують про поточні дії програматора, і, відповідно, позначають режими читання та запису. Світлодіод VL3 служить для сигналізації подачі живлення на програматор. Резистори R10 - R14 призначені для узгодження рівнів сигналів контролера програматора та програмованого контролера. За допомогою J3 LOW SCK можливо знижувати тактову частоту порту SPI МК програматора до ~ 20 кГц. За розімкнутого перемикача (далі джампер) частота SPI нормальна, при замкнутому - знижена. Перемикати «джампер» можна "на ходу", так як керуюча програма МК программматора перевіряє стан лінії PB0 при кожному зверненні до порту SPI. Не рекомендується перемикати «джампер» при запущеному процесі запису / читання програмованого МК, тому що, швидше за все, це призведе до спотворення операції запису / читання. Даний «джампер» введений для можливості програмування МК AVR, тактованих від внутрішнього генератора 128 кГц.
Схема була дещо перероблена, до неї внесені наступні зміни.
Живлення МК здійснюється від USB, але не через діоди, як у вихідній схемі, а через LDO стабілізатор LM1117 на 3.3В. Треба зауважити , що при таких напругах живлення (як 3.3 В тут, так і 3.6 У у вихідній схемі) і частоті кварцу 12 МГц Atmel не гарантує стійку роботу своїх МК. Тим не менш, варто враховувати таку можливість. Ще раз: чим більше напруга живлення (в межах до 5В, природно), тим вища ймовірність того, що контролер запуститься і буде стійко працювати, тому багато хто відмовляється від LDO на користь двох діодів.
В обидві ланцюга живлення МК (VCC і AVCC) введені додаткові LC-фільтри у вигляді SMD-індуктивностей на 10мкГн і конденсаторів 0.1 мкФ, крім того, на платі з'явився додатковий «джампер», що дозволяє живити цільову плату від програматора напругою 5В або 3.3 В. У ланцюг живлення цільової плати також включена індуктивність і встановлений діод 1N4148, що перешкоджає попаданню напруги живлення з цільовою плати на програматор. Оскільки на діоді має місце падіння напруги, то напруга живлення плати буде менше заявленого на величину цього самого падіння. Залежно від діода та деяких інших умов теоретично воно може знизитися настільки, що його не вистачить для нормального функціонування цільової плати. Для зменшення ефекту використовують діод Шотткі.
Зник «джампер» NORM / MOD, призначений для введення програматора в режим оновлення прошивки, замість цього на платі встановлений повноцінний роз'єм для програмування МК програматора (роз'єм має дещо нестандартний вигляд і являє собою контактну гребінку PLS-6, на яку виведені наступні сигнали в послідовності MOSI- MISO-SCK-Reset-Vcc-GND. У такій же послідовності ці сигнали розташовані на виводах МК ATMega16 в корпусі DIP-40, саме звідти я її і "змалював".
1.5 Внутрішньосхемній USB-програматор-відладчик PICkit2
Зовні - не позбавлений вишуканості компактний брелок, насправді - програматор початкового рівня PICkit2. Його випускає компанія Microchip для внутрішньосхемного програмування більшості доступних на ринку Flash-контролерів власного виробництва. Програматор також може використовуватися як засіб налагодження послідовних протоколів.
Для початку освоєння і практичного застосування мікроконтролерів розробнику необхідний доступний інструментарій. Компанія Microchip Technology Inc. випускає недорогий програматор початкового рівня PICkit2, схема і програмне забезпечення у вихідних кодах якого викладені на сайті www.microchip. com/pickit2. Розглянемо особливості і можливості цього USBпрограмматора.
Програматор PICkit2 з'єднується з комп'ютером по широко поширеній інтерфейсу USB (програматор побудований на базі контролера PIC18F2550 USB 2.0). Через USB-порт також здійснюється оновлення прошивки програматора, тобто при необхідності PICkit2 може оновити своє програмне забезпечення без застосування додаткових програматорів. Використання інтерфейсу USB дозволило відмовитися від додаткового джерела живлення і одержувати живлення безпосередньо від USB-порту комп'ютера.
Програматор PICkit2 служить для внутрішньосхемного програмування більшості Flash мікроконтролерів Microchip і з появою нових мікроконтролерів список підтримуваних пристроїв постійно розширюється.
Зовнішній вигляд програматора pickit2
Рис 5.Типова схема внутрішньосхемного програмування
1.6 USB Програматор SPI
Оригінальну схему програматора розробив PROTTOSS. Проте у неї є деякі недоліки. Перший полягає в тому, що оригінальний програматор працює не з AVR Studio, а з більш ранньої програмою, підтримку якої Atmel вже припинила. Також з програматора прибрано можливість т. н. "Внутрішньосхемного" програмування, яке дозволяє програмувати мікроконтролер AVR безпосередньо в робочій схемі. Причин відмови від внутрішньосхемного програмування декілька. По-перше, це перевантаження робочої схеми додатковими проводами і «джампера». По-друге, при програмуванні МК повинен використовуватися кварцовий резонатор. Таким чином, схема программатора була модифікована так, що він сам подає на програмований МК живлення і тактовий сигнал, але підтримує тільки МК з 28 виводами.
Рис. 6. Схема USB програматора
Цей програматор працює по інтерфейсу USB. В схемі присутні два контролери, тому що не можна просто підключити роз'єм USB до контролера і «залити» програму, так як USB і ISP - це зовсім різні протоколи. Тому нам і потрібен ще один контролер, який з одного боку буде приймати дані по USB, а з іншого - відправляти їх до програмованого контролера по ISP. У даній схемі в якості "перехідника" використовується МК Mega8. Справа в тому, що код програматора не вміщується в 4 кілобайт пам'яті Mega48, зате підходить в Mega8, яка має аж 8 кілобайт) .
Розглянемо схему докладніше. Зліва ми бачимо конектор USB з пронумерованими виходами. У даній схемі діоди використовуються тільки для пониження напруги приблизно до 3 вольт. Мікроконтроллер працює від зовнішнього джерела живлення.
Так як використовується USB, потрібно, щоб контролер працював на чатоті 12 МГц, а добитися цього можна тільки за допомогою кварцового резонатора. Кварц також є і у програмованого контролера, тому що в процесі програмування не можна використовувати внутрішній осцилятор.
Обидва контролера впаюються не прямо на плату, а за допомогою панельок. Тобто, на плату припаюється тільки панельки, а в неї потім вставляється потрібна мікросхема. По-перше, це універсально, а по-друге, виводи мікросхеми не перегріваються при пайці .
2. Проектно-конструкторський розділ
2.1 Синтез та аналіз структурної схеми об'єкту проектування та її опис
Структурна схема програма тора рис.7, складається з USB конектора, мікроконтроллера(МК), підвищую чого перетворювача напруги (ППН), комутатора (К) та конектора(ISP) для підключення панелі програмуємої мікросхеми.
USB - конектор до ЕОМ.
МК - мікроконтроллер.
ППН - підвищуючий перетворювач напруги.
К - комутатор.
ISP - конектор до програмуємого пристрою.
Рис. 7. Структурна схема програматора для мікроконтроллерів сімейства PIC і мікросхем Flash пам'яті.
Робота програма тора реалізується наступним чином..
З ЕОМ , через USB порт подається програмуючий сигнал, мікроконтроллер виконує перетворення сигналу з інтерфейсу USB - у інший послідовний інтерфейс програмування МК. Півищуючий перетворювач напруги підсилює напругу з 5 В до 13 В, так як для програмування деяких мікросхем потрібна напруга до 13 В. Комутатор виконує комутацію напруги програмування. Через ISP конектор , програмуючий сигнал подається на програмуємий пристрій
2.2 Реалізація принципової схеми та розрахунок елементів і вузлів схеми
Конструктивно пристрій складається з двох функціональних блоків: цифрова частина, та DC-DC підвищуючий перетворювач.
Живлення схеми здійснюється за рахунок інтерфейсу USB (який дозволяє навантажувати до 500 мА ; +5 В)
У функції цифрової частини входить перетворення сигналу з інтерфейсу USB - у інший послідовний інтерфейс програмування МК (I2C, SPI…), крім того для керування індикатора роботи програма тора HL1, та DC-DC підвищуючого перетворювачем (для програмування відключає вхідну напругу програмування при неактивному програматорі). Така додаткова функція ще дозволяє заощадити електроенергію, якщо пограмування проводиться з переносного ЕОМ, та зручно підєднувати схему програматора до програмуємого пристроя, так як вона знеструмлена.
У якості цифрової частини використаємо мікроконтроллер PIC18F2550.
Основні параметри
Ядро |
PIC18 |
|
F,МГц |
від 0 до 48 |
|
Память: Flash,кБ |
32 |
|
Память: RAM,кБ |
2 |
|
Память: EEPROM,кБ |
0.25 |
|
I/O (макс.),шт. |
35 |
|
Таймери: 8-бит,шт |
1 |
|
Таймери: 16-бит,шт |
3 |
|
Таймери: Каналів ШИМ,шт |
1 |
|
Таймери: RTC |
Нема |
|
Інтерфейси: SPI,шт |
1 |
|
Інтерфейси: USB,шт |
1 |
|
Аналогові входи: Розрядів АЦП,біт |
10 |
|
Аналогові входи: Каналів АЦП,шт |
13 |
|
Аналогові входи: Аналоговий компаратор,шт |
2 |
|
VCC,В |
від 2 до 5.5 |
|
ICC,мА |
25 |
|
TA,°C |
від -40 до 125 |
|
Корпус |
DIP-40 QFN-44 SOIC-44 |
Рис. 8. Блоксхема мікроконтроллера
У якості DC-DC підвищую чого перетворювача використаємо мікросхему LM2577S-ADJ, яка представляє собою підвищуючий ШІМ контролер, з вмонтованим силовим ключем, та з мінімальним числом зовнішніх компонентів. Вихідна напруга перетворювача задається зовнішнім подільником. Схема має захист від короткого замикання та перевантаження. У роботі використано ІС у корпусі (Т02635) для поверхневого монтажу.
Опишемо основні технічні параметри LM2577S-ADJ :
- Мінімальна вхідна напруга - 3,5 В;
- Максимальний вихідний струм - до 1,5 А ;
- Частота перетворювача - 52 кГц;
- Вихідний струм - до 100 мА;
Для розрахунку згідно ТЗ , вхідна напруга DC-DC перетворювача - 5 В; Вихідна напруга - 13 В. Задається вихідна напруга перетворювача подільником напруги R3, R4.
Розрахуємо необхідні номінали резисторів:
Приймемо =2 кОм
Оскільки у вимірюваному колі R3; R4 протікає струм<100 мкА, то використаємо метало- плівкові резистори MF 0.125 Вт.
- що задовольняє вибраному типу;
Для повірки навантаженості перетворювача по струму повинно виконуватись :
1,5 А - максимальний вхідний струм, наша схема споживає 0,8 А , що задовільняє нас.
Розрахуємо параметри індуктивності L1:
Для цього розрахуємо робочий цикл D ; який в межах (0?D?0,9).
Де UF - спад напруги на діоді VD1 у прямому напрямку. Для мінімізації витрат у перетворювачі використовуємо діод Шоткі, зі спадом напруги 0,5 В.
Розрахуємо постійни струм через індуктивність при певному навантаженні:
Індуктивність дроселя L1:
З такими параметрами вибираємо індуктивність Renco ,
RL1954.
Елементи R2, R6 - утворюють компенсаційне коло :
Розрахуємо елементи :
R2 вибираємо типу MF 0,105 Bт , 4 кОм.
Ємність вихідного фільтра С7 визначається :
Вибираємо тип С7 , з урахуванням максимальнох вихідної напруги , з 2-х кратним запасом: ESR 220 mFЧ 25 B;
Компенсаційна ємність С6:
Вибираємо тип - керамічний конденсатор X7R 27 нФЧ50 В.
Розрахунок блокуючих ємностей С1, С5 :
Виробник ,згідно документації на мікросхему, рекомендує в беспосередній близькості до входу LM2577 установити керамічну ємність 0.1 мФ та електролітичну 47 мФ.
С1 - ESR 47 mFЧ16 B
C5 - X7R 0.1 mFЧ50 B
Діод Шоткі VD1 вибираємо виходячи з робочої частоти вихідного струму , та вихідної напруги .
Вибираємо з двохкратним запасом: VD1 - IN5818 .
Оптопара U1 використовується для комутації напруги програмування та гальванічної розвязки між виходом та мікроконтроллером .
Для цього використовуємо оптопару РС817, яка дозволяє комутувати струми до 150 мА , та напругу до 30 В.
Обмеження струму світло діода оптопари здійснюється резистором R8 на значення 5мА:
Розсіювана потужність
R8 -
Вибираємо тип R8 - MF 0.125 Вт ; 640 Ом;
Аналогічно розраховуємо струмообмежуючі резистори R5, R9 для червоного світлодіода( індикатори режиму роботи програматора):
Резистор R1 - використовується для підтяжки виводу Reset. МК
DD1: Вхідний струм 100 мА
тип R1 MF 0.125 Вт. 5 кОм.
Конденсатори С3, С4 - обв'язка тактового кварцового генератора МК, для полегшення процесу запуску. Номінал їх використовується згідно рекомендацій виробника МК у межах 15-30 пФ.
Вибираємо С4, С3 - керамічні X7R 15 пФЧ50 В.
Резистори R6, R7 - струмообмежуючі, на випадок короткого замикання. у сигнальній лінії. Дублюють струмове обмеження МК, так як МК обмежує вихідний струм на 20 мА на кожен вихід.
З запасом по потужності вибираємо R6, R7 - MF 0.125 Вт 250 Ом.
Рис. 9. Принципова схема програматора для мікроконтроллерів сімейства PIC і мікросхем Flash пам'яті.
Висновки
В даному курсовому проекті була поставлена задача провести аналіз аналогів програматора для мікроконтроллерів сімейства PIC і мікросхем Flash пам'яті. Я проаналізував переваги та недоліки різних аналогів обєкту досліджень, виконав синтез структурної та принципової схеми програматора для мікроконтроллерів сімейства PIC і мікросхем Flash пам'яті, а також провів розрахунок елементів схеми та вибір номіналів електрорадіоелементів, в результаті чого спроектував структурну та принципову схему програма тора з параметрами :
- інтерфейс - USB 2.0;
- напруга програмування - 13В;
- вхідна напруга - 5В;
Програматор призначений для програмування мікроконтроллерів сімейства PIC (AVR, ATMEL),та мікросхем Flash пам'яті , через інтерфейс USB 2.0 з напругою програмування 13 В.
Список використаної літератури
1. Бокуняев А.А., Борисов Н.М., Варламов Р.Г. Справочная книга конструктора - радиолюбителя. Под ред. Чистякова Н.И. - М.: Радио и связь, 1990.
2. ГОСТ 2.702-75. Правила выполнения электрических схем.
3. Интегральные микросхемы. Справочник. Под ред. Тарабрина Б.В. - М.: Энергоатомиздат, 1985.
4. Муренко Л.Л. Программаторы запоминающих и логических интегральных микросхем. - М.: Энергоатомиздат, 1988.
5. www.masterkit.ru.
6. www.gelezo.com.
7. http://easyelectronics.ru/usb-programmator-avr-usbasp.
Размещено на Allbest.ru
Подобные документы
Створення схеми електричної принципової годинника-будильника-термометра з ІЧ ПК. Призначення проектуємого пристрою. Розробка структурнї та електричної принципової схеми пристрою та програми тестування роботи пристрою, розрахунок надійності його роботи.
курсовая работа [935,6 K], добавлен 23.03.2009Створення схеми електричної принципової МР-3 програвача – приставки до ПК, структурної та загальної схеми. Призначення проектуємого пристрою. Принцип роботи окремих ВІС. Розробка програми тестування роботи пристрою, розрахунок надійності його роботи.
курсовая работа [527,4 K], добавлен 24.03.2009Розробка принципової електричної схеми системи управління конвеєрною лінією, яка складається з трьох послідовних конвеєрів. Реалізація алгоритму роботи на мові сходинкових діаграм LD. Розробка керуючої програми для мікроконтролерів Zelio Logic та ОВЕН.
курсовая работа [230,2 K], добавлен 15.06.2015Короткий опис мікроконтролера ATmega6450, його особливості та опис виводів. Розробка принципової схеми стенду. Написання програми на мові СІ при використанні програмного середовища CodeVisionAVR. Перепрограмування мікроконтролера ATmega6450 сімейства AVR.
курсовая работа [491,2 K], добавлен 15.05.2013Опис великої інтегральної схеми пристрою множення. Аналіз розв’язків поставленої задачі, розробка принципової електричної схеми, логічної моделі і тесту перевірки, розрахунок швидкодії. Тестування з використанням пакету прикладних програм OrCAD 9.1.
курсовая работа [5,0 M], добавлен 22.02.2010Розробка структурної схеми. Опис основних елементів мікропроцесора. Вибір підходящої структури процесорного елемента та його опис. Реалізація пристрою управління. Розробка мікропрограми та загальний алгоритм виконання процесором команди SBR Rm, B.
контрольная работа [83,6 K], добавлен 04.06.2009Пакет P-CAD 2001 з набором програм для інженера. Створення умовного графічного зображення (УГП) елемента, посадкового місця для нього. Створення схеми електричної принципової, виготовлення для неї плати друкованої. Розробка топології друкованої плати.
курсовая работа [2,1 M], добавлен 18.09.2010Функції арифметико-логічного пристрою - виконання операцій над числами, що надходять до нього, за сигналами з пристрою керування. Правила переводу чисел з однієї системи числення в іншу. Розроблення алгоритму; функціональна і принципова електричні схеми.
курсовая работа [1,0 M], добавлен 27.04.2014Поняття та принципи роботи аналогових обчислювальних машин, особливості їх дії. Порядок та етапи програмування задач на АОМ, моделювання лівої та правої частини рівняння. Методика розрахунку елементів схеми, визначення параметрів із погрішністю.
курсовая работа [93,5 K], добавлен 12.05.2009Технології і схемотехніки великих інтегральних мікросхем. Мікропроцесор як програмно-управляючий пристрій для обробки цифрової інформації і керування процесом цієї обробки. Розробка електричної принципової схеми модуля на базі 8-розрядного мікропроцесора.
курсовая работа [554,8 K], добавлен 26.03.2009