патент
№ RU 89915
МПК H04L12/00

ПРОГРАММАТОР AVR-МИКРОКОНТРОЛЛЕРОВ СЕМЕЙСТВ ATmega И ATtiny

Авторы:
Анкудинов Константин Александрович Акиншин Николай Степанович Анкудинов Александр Иванович
Все (10)
Номер заявки
2009132202/22
Дата подачи заявки
27.08.2009
Опубликовано
20.12.2009
Страна
RU
Как управлять
интеллектуальной собственностью
Чертежи 
3
Реферат

Программатор AVR-микроконтроллеров семейств ATmega и ATtiny, содержащий LPT-порт, микросхему 47НС244 с подтягивающим резистором, сигнальное устройство на двух светодиодах и двух ограничительных резисторах, кварцевый генератор на кварцевом резонаторе и двух конденсаторах, стабилизатор напряжения на биполярном транзисторе, кремниевом стабилитроне, балластном резисторе и двух конденсаторах фильтра, панели DIP-8, DIP-14 и две панели DIP-20 для программирования двадцати типов микроконтроллеров семейства ATtiny, отличающийся тем, что в устройство введены панель DIP-28 для программирования микроконтроллеров ATmega8, ATmega8L, ATmega48, ATmega48V, ATmega88, ATmega88V, ATmega168, ATmega168V, первая панель DIP-40(1) для программирования микроконтроллеров ATmega16, ATmega16L, ATmega32, ATmega32L, ATmega164, ATmega164V, ATmega324, ATmega324V, ATmega644, ATmega644V, ATmega8535 и ATmega8535L, вторая панель DIP-40(2) для программирования микроконтроллеров ATmega162, ATmega162V, ATmega8515 и ATmega8515L, второй кварцевый резонатор с удвоенной резонансной частотой и переключатель кварцевых резонаторов.

Формула изобретения

Программатор AVR-микроконтроллеров семейств ATmega и ATtiny, содержащий LPT-порт, микросхему 47НС244 с подтягивающим резистором, сигнальное устройство на двух светодиодах и двух ограничительных резисторах, кварцевый генератор на кварцевом резонаторе и двух конденсаторах, стабилизатор напряжения на биполярном транзисторе, кремниевом стабилитроне, балластном резисторе и двух конденсаторах фильтра, панели DIP-8, DIP-14 и две панели DIP-20 для программирования двадцати типов микроконтроллеров семейства ATtiny, отличающийся тем, что в устройство введены панель DIP-28 для программирования микроконтроллеров ATmega8, ATmega8L, ATmega48, ATmega48V, ATmega88, ATmega88V, ATmega168, ATmega168V, первая панель DIP-40(1) для программирования микроконтроллеров ATmega16, ATmega16L, ATmega32, ATmega32L, ATmega164, ATmega164V, ATmega324, ATmega324V, ATmega644, ATmega644V, ATmega8535 и ATmega8535L, вторая панель DIP-40(2) для программирования микроконтроллеров ATmega162, ATmega162V, ATmega8515 и ATmega8515L, второй кварцевый резонатор с удвоенной резонансной частотой и переключатель кварцевых резонаторов.

Описание

[1]

Полезная модель относится к области микроконтроллерной схемотехники, а именно к устройствам оперативного невнутрисхемного программирования современных 8-ми разрядных AVR-микроконтроллеров семейств ATmega и ATtiny, которые обладают наилучшим соотношением функциональные возможности/стоимость/быстродействие/энергопотребление.

[2]

Известен аналог - «Программатор для микроконтроллеров AVR», схема которого представлена в приложении 1 к данному описанию заявляемой полезной модели. Этот аналог описан в книге: В.Н.Баранов. Применение микроконтроллеров AVR: схемы, алгоритмы, программы. - М.: «Издательский дом Додека-XXI», 2006.-288 с. на рис.50 стр.251.

[3]

В схему аналога (см. приложение 1) входят: параллельный LPT - порт (DB-25M), через который программатор подключается к персональному компьютеру; защитный буфер на микросхеме 74НС244 (КР1533АП5), которая представляет собой два четырехканальных управляемых буфера и позволяет согласовать сигналы LPT - порта с микроконтроллером; штепсельный разъем IDC-10 с контактами (MISO - 1, VDD - 2, SCK - 3, MOSI - 4, RESET - 5 и GND - 6), который всякий раз необходимо подключать к плате, где и будет работать программируемый микроконтроллер. Такое программирование является внутрисхемным программированием.

[4]

Недостатками аналога являются:

[5]

1. Хотя аналог позволяет программировать все AVR-микроконтроллеры, но платы всех встраиваемых технических приложений обязательно должны иметь штепсельный разъем IDC-10 (см. приложение 1 - аналог) с контактами MISO (контакт - 1), VDD (контакт - 2), SCK (контакт - 3), MOSI (контакт - 4), RESET (контакт - 5) и GND (контакт - 6) для внутрисхемного программирования микроконтроллеров. А для того, чтобы обеспечить возможность внутрисхемного программирования, необходимо при разработке схемы на микроконтроллере соблюдать следующее правило: на четыре входа микроконтроллера, используемые при внутрисхемном программировании (MISO, SCK, MOSI, RESET), не должны поступать никакие мешающие сигналы, то есть к этим входам могут быть подключены только входы внешних микросхем, а не их выходы и т.д., что существенно повышает габаритные и уменьшает функциональные возможности встраиваемых технических приложений. Следовательно, плата микроконтроллера обязательно должна иметь штепсельный разъем для внутрисхемного программирования и часть выводов микроконтроллера нельзя использовать в его алгоритме работы. Поэтому применение аналога для программирования микроконтроллеров серийных партий высокотехнологичных технических приложений приводит к необходимости выбора микроконтроллера с большим числом выводов и установки штепсельного разъема, что увеличивает стоимость и габариты устройства.

[6]

2. Кроме того, в серийных и малосерийных партиях высокотехнологичных технических приложений микроконтроллер программируется только один раз. Целесообразно заранее запрограммировать и проверить микроконтроллеры на программаторе без внутрисхемного программирования и затем установить их во встраиваемые технические приложения, что значительно снизит габариты и стоимость, повысит функциональные возможности встраиваемых технических приложений. Таким образом, при серийном производстве применение программатора - аналога с внутрисхемным программированием является неоправданным и вредным.

[7]

Известен прототип - Патент на полезную модель №85779 РФ. Бюл. №22 за 2009 год. «Программатор AVR-микроконтроллеров семейства ATtiny» // Акиншин О.Н., Акиншин Н.С., Анкудинов К.А., Анкудинов А.И., Глаголев О.А. и др. Схема прототипа представлена в приложении 2 к данному описанию. В табл.1 представлена цоколевка AVR-микроконтроллеров семейства ATtiny.

[8]

Таблица 1
№,ппATtinyDIPVCC (+)GND(-)MOSIMISOSCKRESETXTAL1XTAL2
1.85V884567123
2.85884567123
3.45V884567123
4.45884567123
5.25V884567123
6.25884567123
7.15L884567123
8.12L884567123
9.12V884567123
10.12884567123
11.84V14114789423
12.8414114789423
13.44V14114789423
14.4414114789423
15.24V14114789423
16.2414114789423
17.26L2056,161231078
18.262056,161231078
19.2313202010171819154
20.2313V202010171819154

[9]

Прототип включает в себя: LPT-порт; микросхему 47НС244, включающую два четырехканальных управляемых буфера и подтягивающий резистор; сигнальное устройство на двух светодиодах и двух ограничительных резисторах; кварцевый генератор на кварцевом резонаторе (4 МГц) и двух конденсаторах; компенсационный стабилизатор напряжения на биполярном транзисторе, кремниевом стабилитроне, балластном резисторе и двух конденсаторах фильтра; панель DIP-8 для программирования микроконтроллеров ATtiny85V, ATtiny85, ATtiny45V, ATtiny45, ATtiny25V, ATtiny25, ATtiny15L, ATtiny12L, ATtiny12V и ATtiny12; панель DIP-14 для программирования микроконтроллеров ATtiny84V, ATtiny84, ATtiny44V, ATtiny44, ATtiny24V и ATtiny24; первую панель DIP-20(1) для программирования микроконтроллеров ATtiny26L и ATtiny26; вторую панель DIP-20(2) для программирования микроконтроллеров ATtiny2313V и ATtiny2313, которые представлены в табл.1, причем, что положительно, программирование является оперативным и невнутрисхемным.

[10]

В прототипе устранены оба недостатка аналога, но опыт эксплуатации прототипа выявил два существенных его недостатка;

[11]

1. AVR-микроконтроллеры семейства ATtiny значительно уступают по критерию функциональной полноты AVR-микроконтроллерам семейства ATmega. Прототип не позволяет программировать AVR-микроконтроллеры семейства ATmega.

[12]

2. Кроме того, в прототипе, даже при программировании AVR-микроконтроллеров семейства, ATtiny возникают сбои при программировании микроконтроллеров на современных многоядерных или с тактовой частотой процессора 1,5 ГГц и более персональных компьютерах.

[13]

Предлагаемой полезной моделью решаются задачи:

[14]

- оперативного невнутрисхемного программирования и проверки результатов программирования AVR-микроконтроллеров как семейства прототипа ATtiny, приведенных в табл.1 (их 20 штук), так и семейства ATmega, представленных в табл.2 (их 24 штуки), с целью дальнейшей их установки в соответствующие серийные партии высокотехнологичных встраиваемых технических приложений;

[15]

- обеспечения возможности совместной работы полезной модели как с устаревшими, так и с современными многоядерными или с тактовой частотой процессора 1,5 ГГц и более персональными компьютерами.

[16]

Основные результаты анализа возможностей программирования рассматриваемых микроконтроллеров, проведенного по книге:

[17]

А.В.Евстифеев «Микроконтроллеры AVR семейства Mega». - М.: Издательский дом «Додэка-XXI», 2007. - 592 с.: ил. (Серия «Программируемые системы»), представлены в табл.2, где в первом столбце указаны порядковые номера двадцати четырех AVR-микроконтроллеров семейства ATmega.

[18]

Таблица 2
№п/пATmegaDIPVCC(+)GND(-)MOSIMISOSCKRESETXTAL1XTAL2
182878,221718191910
28L2878, 221718191910
3482878, 221718191910
448V2878, 221718191910
5882878, 221718191910
688V2878, 221718191910
71682878, 221718191910
8168V2878, 221718191910
916401011, 3167891312
1016L401011, 3167891312
1132401011, 3167891312
1232L401011, 3167891312
13164401011, 3167891312
14164V401011, 3167891312
15324401011, 3167891312
16324V401011, 3167891312
17644401011, 3167891312
18644V401011, 3167891312
198535401011, 3167891312
208535L401011, 3167891312
2116240402067891918
22162V40402067891918
23851540402067891918
248515L40402067891918

[19]

Например, в табл.2 порядковому номеру 10 соответствует AVR-микроконтроллер ATmega 16L (далее по 10-й строке следует): 40-выводной в DIP-корпус; VCC(+) - вывод 10; GND(-) - выводы 11 и 31; MOSI - вывод 6; MISO - вывод 7; SCK - вывод 8; RESET - вывод 9; XTAL1 - вывод 13 и XTAL2 - вывод 12. Таким образом, табл.2 содержит всю информацию о выводах AVR-микроконтроллеров семейства ATmega, необходимую для их программирования и использованную при разработке полезной модели.

[20]

Поставленная задача достигается тем, что в программатор AVR-микроконтроллеров семейств ATmega и ATtiny, содержащий LPT-порт, микросхему 47НС244 с подтягивающим резистором, сигнальное устройство на двух светодиодах и двух ограничительных резисторах, кварцевый генератор на кварцевом резонаторе и двух конденсаторах, стабилизатор напряжения на биполярном транзисторе, кремниевом стабилитроне, балластном резисторе и двух конденсаторах фильтра, панели DIP-8, DIP-14 и две панели DIP-20 для программирования двадцати типов микроконтроллеров семейства ATtiny введены, панель DIP-28 для программирования микроконтроллеров ATmega8, ATmega8L, ATmega48, ATmega48V, ATmega88, ATmega88V, ATmega168, ATmega168V, первая панель DIP-40(1) для программирования микроконтроллеров ATmega16, ATmega16L, ATmega32, ATmega32L, ATmega164, ATmega164V, ATmega324, ATmega324V, ATmega644, ATmega644V, ATmega8535 и ATmega8535L, вторая панель DIP-40(2) для программирования микроконтроллеров ATmega162, ATmega162V, ATmega8515 и ATmega8515L, второй кварцевый резонатор с удвоенной резонансной частотой и переключатель кварцевых резонаторов.

[21]

За счет введения в программатор AVR-микроконтроллеров семейств ATmega и ATtiny одной панели DIP-28, двух панелей DIP-40(1) и DIP-40(2) для установки микроконтроллеров семейства ATmega, второго кварцевого резонатора с удвоенной резонансной частотой и переключателя кварцевых резонаторов при сохранении достоинств прототипа получены следующие новые результаты, обеспечивающие оперативное невнутрисхемное программирование и проверку результатов программирования:

[22]

- 28 - выводных AVR-микроконтроллеров семейства ATmega в панели DIP-28: ATmega8, ATmega8L, ATmega48, ATmega48V, ATmega88, ATmega88V, ATmega168, ATmega168V;

[23]

- 40 - выводных AVR-микроконтроллеров семейства ATmega в двух панелях DIP-40: ATmega16, ATmega16L, ATmega32, ATmega32L, ATmega164, ATmega164V, ATmega324, ATmega324V, ATmega644, ATmega644V, ATmega8535, ATmega8535L, ATmega162, ATmega162V, ATmega8515 и ATmega8515L;

[24]

- совместную работу без сбоев программатора AVR-микроконтроллеров семейств ATmega и ATtiny как с устаревшими, так и с современными многоядерными или с тактовой частотой процессора 1,5 ГГц и более персональными компьютерами.

[25]

Таким образом, в результате принятых мер полезной моделью устраняются все недостатки прототипа, то есть обеспечивается возможность серийного оперативного невнутрисхемного программирования AVR-микроконтроллеров семейств ATmega и ATtiny при использовании всех существующих образцов персональных компьютеров, с целью последующей установки микроконтроллеров в серийные образцы высокотехнологичных встраиваемых технических приложений, где они и должны выполнять свои рабочие функции.

[26]

На фиг. изображена принципиальная электрическая схема устройства (полезной модели) - «Программатор AVR-микроконтроллеров семейств ATmega и ATtiny».

[27]

Программатор AVR-микроконтроллеров семейств ATmega и ATtiny (см. фиг.) включает в себя: LPT-порт (DB 25M) 1, который подключается к компьютеру и имеет контакты 4 - (DATA2), 5 - (DATA3), 6 - (DATA4), 7 - (DATA5), 8 - (DATA6), 9 - (DATA7), 10 - (АСК), 2 и 12, 3 и 11 перемкнуты для опознавания программатора управляющей программой компьютера; микросхему 2 марки 74НС244 - два четырехканальных управляемых буфера; первое сигнальное устройство на резисторе 3 и светодиоде 4 и второе сигнальное устройство на резисторе 5 и светодиоде 6, предназначенные для визуального контроля записи и считывания информации микроконтроллера, соответственно; элементы кварцевого генератора, состоящего из двух конденсаторов 7 и 8, переключателя 9 и двух кварцевых резонаторов 10 (4 МГц) и 11 (8 МГц); компенсационный стабилизатор напряжения на 5 В, состоящий из балластного резистора 12, кремниевого стабилитрона 13, регулирующего транзистора 14, низкочастотного и высокочастотного конденсаторов фильтра 15 и 16, соответственно; подтягивающий резистор 17, обеспечивающий режим записи информации в микроконтроллер; панель DIP-8 18 для установки и прграммирования 8-выводных AVR-микроконтроллеров ATtiny85V, ATtiny85, ATtiny45V, ATtiny45, ATtiny25V, ATtiny25, ATtiny15L, ATtiny12L, ATtiny12V и ATtinyl2; панель DIP-14 19 для установки и программирования 14-выводных AVR-микроконтроллеров ATtiny84V, ATtiny84, ATtiny44V, ATtiny44, ATtiny24V, ATtiny24; первую панель DIP-20(1) 20 для установки и программирования 20-выводных AVR-микроконтроллеров ATtiny26L, ATtiny26; вторую панель DIP-20(2) 21 для установки и программирования 20-выводных AVR-микроконтроллеров ATtiny2313V, ATtiny2313; панель DIP-28 22 для установки и программирования 28-выводных AVR-микроконтроллеров ATmega8, ATmega8L, ATmega48, ATmega48V, ATmega88, ATmega88V, ATmega168, ATmega168V; первую панель DIP-40(1) 23 для установки и программирования 40-выводных AVR-микроконтроллеров ATmega16, ATmega16L, ATmega32, ATmega32L, ATmega164, ATmega164V, ATmega324, ATmega324V, ATmega644, ATmega644V, ATmega8535, ATmega8535L; вторую панель DIP-40(2) 21 для установки и программирования 40-выводных AVR-микроконтроллеров ATmega162, ATmegal62V, ATmega8515 и ATmega8515L; панели 18, 19, 20, 21, 22, 23 и 24 с одноименными сигналами (MOSI, SCK, XTAL1, XTAL2, RESET, MISO, VCC и GND) электрически соединены, так например, по сигналу MOSI электрически соединены: вывод 5 панели 18, вывод 7 панели 19, вывод 1 панели 20, вывод 17 панели 21, вывод 17 панели 22, вывод 6 панели 23 и вывод 6 панели 24 и т.п.

[28]

Программатор AVR-микроконтроллеров семейств ATmega и ATtiny (см. фиг.) работает следующим образом. Микроконтроллер, подлежащий программированию, вставляется в соответствующую панель программатора 18, 19, 20, 21, 22, 23 или 24. LPT-порт 1 программатора подключается к LPT-порту персонального компьютера. Для современных компьютеров (многоядерных или с тактовой частотой процессора 1,5 ГГц и более) переключатель 9 программатора устанавливается в правое по схеме положение (это соответствует частоте 8 МГц), а в противном случае - в левое по схеме положение (4 МГц). На компьютере устанавливается одна из известных управляющих программатором программ (например, управляющая программа «IC-Prog» с сайта http://www.ic-prog.com или управляющая программа «PonyProg» с сайта http://www.lancos.com). Далее в управляющую программу заносится полученный любым из известных способов НЕХ-файл алгоритма работы микроконтроллера. Затем управляющая программа подает сигналы на LPT-порт 1 программатора и последний, в процессе программирования, включает и выключает верхний и нижний буферы микросхемы 2, чем организует обмен информацией управляющей программы с программируемым микроконтроллером:

[29]

1. Под воздействием тактового сигнала SCK входные данные MOSI, а в них входят НЕХ-файлы памяти программ flash и памяти данных eeprom для программируемого микроконтроллера, записываются в микроконтроллер.

[30]

2. Под воздействием тактового сигнала SCK выходные данные микроконтроллера MISO, а в них входят НЕХ-файлы памяти программ flash и памяти данных eeprom запрограммированного микроконтроллера, выводятся для контроля и записываются в управляющую программу компьютера.

[31]

3. Команда RESET переводит микроконтроллер в режим программирования, далее в режим контроля результатов программирования, и при благоприятном исходе осуществляет сброс схемы - микроконтроллер запрограммирован.

[32]

Таким образом, введение в полезную модель: панели DIP-28 для программирования микроконтроллеров ATmega8, ATmega8L, ATmega48, ATmega48V, ATmega88, ATmega88V, ATmega168, ATmega168V, первой панели DIP-40(1) для программирования микроконтроллеров ATmega16, ATmega16L, ATmega32, ATmega32L, ATmega164, ATmega164V, ATmega324, ATmega324V, ATmega644, ATmega644V, ATmega8535 и ATmega8535L, второй панели DIP-40(2) для программирования микроконтроллеров ATmega162, ATmega162V, ATmega8515 и ATmega8515L, второго кварцевого резонатора с удвоенной частотой (8 МГц) и переключателя кварцевых резонаторов обеспечило возможность:

[33]

- серийного оперативного невнутрисхемного программирования и проверки результатов программирования AVR-микроконтроллеров семейства ATtiny - 20 типов и семейства ATmega - 24 типа, с целью последующей установки их в серийные образцы высокотехнологичных встраиваемых технических приложений, где они и должны выполнять свои функции по заданному алгоритму работы.

[34]

- совместной работы без сбоев программатора AVR-микроконтроллеров семейств ATmega и ATtiny как с устаревшими, так и с современными многоядерными или с тактовой частотой процессора 1,5 ГГц и более персональными компьютерами.

Как компенсировать расходы
на инновационную разработку
Похожие патенты