Как сделать простой программатор для pic-ов и avr-ов

Как сделать простой программатор для pic-ов и avr-ов

Материал взят с журнала РАДИО 2007, №10

Н у вот и настало то время, когда и мне пришлось взяться за изучение МК. К этому подвинула статья Автоматическое ЗУ на Atmega16A Тут и без всякого раздумья стало понятно, что нужно срочно собирать программатор. Листая журнал РАДИО, нашел приемлемую схему для себя. Ниже приводится описание с журнала.

Предлагаемый программатор работает под управлением программы PonyProg [1], распространяемой бесплатно. Если ограничиться программированием МК PIC и микросхем памяти, можно воспользоваться также программами IC-Prog и WinPic800, распространяемыми на тех же условиях.
Программирование 18-выводных МК PIC и 20-выводных AVR производится без каких-либо коммутаций. Достаточно установить МК в предназначенную для него панель и выбрать его тип в меню используемой программы. От установки панелей для всех МК этих семейств автор сознательно отказался, так как в любительской практике они используются редко. При необходимости нужные панели можно установить дополнительно или подключать требующиеся для программирования выводы МК к предусмотренному в программаторе разъему. Этот же разъем используется при внутрисхемном программировании.
Кроме МК, устройство позволяет программировать микросхемы памяти с последовательным интерфейсом, имеющиеся в меню используемых программ. Для подобных программ с интерфейсом I2C в программаторе предусмотрена панель.
До начала процесса программирования и по его завершении напряжение питания программируемой микросхемы отключено, что дает возможность безопасно установить микросхему в панель, а затем извлечь ее.
Прежде чем рассматривать работу программатора подробно, вспомним некоторые особенности программирования МК семейств PIC и AVR. Номера упоминаемых далее выводов МК различных можно найти в технической документации.
Чтобы перевести в режим программирования МК семейств PIC, требуется подать на его вывод MCLR напряжение +12…14 В. Обмен информацией с устройством, управляющим программированием, происходит через двунаправленный вывод DATA. Синхронизирующие импульсы обмен импульсы поступают на вывод CLOCK.
МК семейства AVR повышенного напряжения не требуют. Они переходят в режим программирования при низком логическом уровне на выводе RESET. При этом необходимо, чтобы к соответствующим выводам МК был подключен кварцевый резонатор. Информация принимается через вывод MOSI, а передается через вывод MISO. Вход синхронизирующих импульсов – вывод SCK.
Схема программатора изображена на рис. 1. Ее наиболее существенное отличие от прототипа [1] заключается в использовании для связи с COM-портом компьютера микросхемы МАХ232СРЕ (DA2) – специализированного преобразователя уровней RS232 – ТТЛ. Это позволило выполнить все требования по уровням передаваемых сигналов и нагрузочной способности линий порта и значительно улучшило надежность работы устройства.

Чтобы излишне не нагружать COM-порт, предусмотрено питание программатора и программируемой микросхемы только от внешнего источника. Его постоянное напряжение (15 В) или переменное (10…12 В) напряжение поступает в программатор через диодный мост VD1, служащий выпрямителем переменного напряжения или приводящий постоянное к правильной полярности.
Интегральный стабилизатор DA1 питает напряжением 5 В преобразователь уровней DA2. Светодиод HL1 сигнализирует о включении питания. Стабилизатор DA3 на 12 В – управляемый. Он включен при высоком логическом уровне напряжения на управляющем входе 4 и выключен при низком уровне. Это свойство использовано для управления напряжением, переводящим МК семейства PIC в режим программирования, и напряжением питания программируемой микросхемы, которое получают из 12 В с помощью интегрального стабилизатора DA4. О включенном питании программируемой микросхемы сигнализирует светодиод HL2.
Очень важен правильный выбор емкости конденсатора С7 на выходе стабилизатора DA3. При слишком большом значении напряжение, переводящее МК семейства PIC в режим программирования, после включения стабилизатора будет нарастать недостаточно быстро, что приведет к сбою. Устанавливать конденсатор С7 слишком маленькой емкости или вовсе отказаться от него нельзя – это приведет к самовозбуждению стабилизатора и сделает программирование невозможным.
Диод VD2 ограничивает до безопасного значения отрицательное напряжение, которое может поступить на управляющий вход стабилизатора DA3 с контакта 3 разъема XS1 (линии TXD COM-порта). Узел на транзисторе VT2 формирует сигнала RESET для МК семейства AVR.
Узел на транзисторах VT1 и VT3 разделяет имеющуюся в МК семейства PIC двунаправленную линию DATA на две однонаправленных для компьютера. Под названиями MOSI и MISO эти же однонаправленные линии используются при программировании МК семейства AVR.
Для аналогичного преобразования в [1] был применен логический инвертор на одном транзисторе. Однако его практическое использование выявило довольно большое число сбоев, причина которых, по мнению автора, — недостаточная задержка информационного сигнала на линии DATA относительно синхронизирующего на линии CLOCK. Добавление второго инвертора увеличило задержку и устранило сбои, однако «лишнюю» инверсию приходится компенсировать соответствующей настройкой управляющей программы, о чем будет сказано далее.
Используя для управления программированием программу PonyProg, следует выбрать в соответствующем ее окне программатор «SI Prog I/O» и задать инверсию сигналов в соответствии с табл. 1. Программа WinPic при работе в ОС windows XP позволяет программировать только МК семейства PIC и микросхем памяти. Однако в ОС Windows 98 МК этой программой не программируются. С программой IC-Prog ситуация обратная. При настройке обеих программ должен быть выбран программатор “JDM Programmer”. Инверсию сигналов задают в соответствии с табл. 2. (для WinPic) и табл. 3. (для IC-Prog).

Наличие нескольких во многом равноценных управляющих программ дает возможность пользоваться программатором даже при возникновении проблем в работе с одной из них. Например, МК, отсутствующий в списке доступных одной программе, может быть найден в списке другой.
Так случилось при попытке запрограммировать МК PIC16F628A. В списке программы PonyProg имеется лишь PIC16F628 на экране монитора появляется сообщение «Неизвестный тип микроконтроллера». Даже если проигнорировать это сообщение, попытки не только запрограммировать, но и просто прочитать содержимое памяти МК положительного результата не дают. Однако в списках программ WinPic800 и IC-Prog нужный МК есть, его программирование с помощью этих программ выполняется без замечаний.

1. Lanconelly C. PonyProg – serial device programmer
2. Gijzen B. IC-Prog Prototype Programmer
3. Font S. Software for PIC programming Windows 95/98/NT/2000/ME/XP compatible

Все ясно и понятно как «божий день», остается за малым, а может быть не малым, воплотить все дела паяльником. Далее привожу фото-обзор как я создавал программатор:

Разметил размер будущей платы, использую так называемые «макетные платы» , как то еще не приспособился к печатным платам, поэтому пользуюсь макетками.

При сборке предыдущей статьи Светодинамическое устройство «LED-подарок девушке» как то подумал «а что если покрасить плату в черный цвет?» смотрится креативненько))) плату покрасил и в этот раз.

В от и собрал. В отличии от оргинала, не стал впаивать панельки под МК, а впаял разъем в виде «штырьков» без понятия как они называются правильно))) Разъем для подключения адаптера с переменкой 15 В использовал от модема TP-Link и выключатель питания от него же. Диодный мост взял КЦ407.

Настало время проверить. Установил прогу PonyProg, запустил ее, появилось окно в котором требуется «. произвести калибровку». Жмем «Yes»

«Настройка платы программатора» находится в верхнем меню «Установка». Жмем «Проверка» если все нормально, то появится окошко «Тест Ок»

Теперь можно записывать или считывать прошивку с МК или микросхем памяти. Как раз на работу принесли усилок фирмы BBK вот понадобилось проверить микруху памяти 24С02. Подключил микруху к соответствующим выводам на разъеме, подключил программатор к COM-порту компа, включил питание, считал/записал прошивку вот и все. Так же проверил микруху 24С04 все работает. МК PIC и AVR еще не проверял, но т.к. нужно потихоньку собирать ЗУ на Atmega16A скоро будем «шить» )))

Как сделать простой программатор для pic-ов и avr-ов

  • ШДК
  • Статьи
    • Схемы
      • Arduino
      • Управление шаговыми двигателями
      • Металлоискатели
      • разное
      • для Авто
      • разное на микроконтроллерах
      • всё на таймере NE555
      • Конструктор схем
      • Осциллографы
      • Измерительная аппаратура
      • Роботы
      • Световые эффекты,управление светом
      • Термостат
      • Инверторы и преобразователи
      • Защиты от перепадов напряжения
      • Паяльные станции
      • Аудио
      • Дозиметры
      • Часы
      • Выключатели, переключатели,ИК,РФ
      • Таймеры
      • КУБ светодиодный
    • Программаторы
      • PIC microchip
      • AVR ATmega и ATtiny
      • Общее
    • Электрические двигатели
      • машины постоянного тока
      • машины переменного тока
    • Генераторы
      • генератора независимого возбуждения
      • синхронный генератор
    • Авто-инжектор
      • Элементы ЭСУД, описание
    • Законы электротехники
      • Основные законы из ТОЭ и др.
    • Конкурсные работы 2015
    • Конкурсные работы 2014
    • Конкурсный работы 2013
    • Конкурсные работы 2012
  • Скачать
    • Программирование
    • Электрические расчеты
    • Электрические программы
    • Справочник
    • Книги по релейной защите
    • Авто
    • Библиотека электромонтера
    • Журналы
      • Everyday Practical Electronics
      • Радио
      • Радиоаматор
      • Радиолюбитель
      • Радиоконструктор
      • Схемотехника
      • Радио Хобби
      • Радиомир
      • Ремонт и сервис
      • Электрик
      • Elektor Electronics
    • Разное
      • Книги, разные
      • Программы,разные
  • Ссылки
    • Сайты связанные с электричеством
    • Авто сайты
  • Видео
    • Самоделки
    • Обучение Arduino
    • дуга,разряд,пожар.
    • Обучающие видео ролики
    • P-CAD Schematic
    • РОБОТЫ
    • Техническое обслуживание компьютера
    • Изготовление печатных плат
  • Проекты
    • Заказать прошивку
    • Регистрация программистов
    • С миру по байту
  • Информация
    • О сайте
    • Реклама
    • Добавить статью
    • Обратная связь
    • Обмен банерами
  • Электроника из Китая
  • В помощь студенту
    • Электрические машины
    • Эксплуатация релейной защиты
Читайте также  Радиоуправление тремя нагрузками на rf-модулях с применением микроконтроллеров

Работает с любым COM-портом, не перегружая по току COM-порт компьютера, так как MAX232 не представляет опасности для COM-порта.
Поддерживается распространёнными программами IC-PROG, Pony Prog и другими, как программатор JDM.
Программатор подключается к COM-порту компьютера, через стандартный кабель-удлинитель COM-порта (DB9M — DB9F) или непосредственно к конвертору USB – COM.
Для питания программатора должен использоваться стабилизированный источник питания напряжением от +16v до +24,0v.
На плате программатора имеются светодиоды, указывающие режим работы программатора (POWER, VPP, RXD и TXD).
Разъёмы для шлейфов ICSP.

Правильно собранный программатор не нуждается в настройке и начинает работать сразу.

Распиновка ICSP в pic

Для корректной установки программы IC-PROG, на компьютер под управлением Windows XP, ознакомьтесь с файлом ic-prog.pdf.
Схема программатора: в файле «csh_Prog_AVR&PIC» (sPlan_v6.0).
Печатная плата: в файле «pcb_Prog_AVR&PIC» (Sprint-Layout_v4.0).

Скачать печатку чуть модернизированная (номиналы деталей подписаны, принаведении курсора появится надпись элемента)

Ильяшенко С. Н. г. Брест
73! Brest, EW3CS ew3cs@mail.ru

Собрал Nikolai4, вот ,что получилось:

Заместо 74LS00 поставил К555ЛА3 (полный аналог)

Электролиты С1,3,4,5 =1мкФ

Заместо КТ315 поставил КТ3102, КТ814 с любой буквой

Для подключения столь большого разнообразия к одному сокету ZIF пришлось поставить dip переключатели.

Программу использую IC-PROG скачать с драйвером и инструкцией версия 1,06В (последняя).

Схема подключения ICSP к ZIF панельке через DIP переключатель

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

скачать пины в программаторе.xls

Протестировал с микроконтроллерами:

(список будет пополняться)

dip 8: pic12f675

dip 14: pic16f630

dip 18: pic16f628

dip 28: pic16f73

dip 28: Atmega 8

PLCC 44: AT90S4414

Для программирование Atmega8 нужны следующие вывода :

минус 8 и 22 ноги можно (нужно) соединить, для экономии проводов

всего 6 выводов в переключателе, два переключателя собраны вместе физически но не электрически, в каждом переключателе три вывода, получаются нормально разомкнутые и замкнутые контакты в каждом переключателе.

Недавно надо было прошить AT90S4414 в корпусе PLCC 44, добавлена была панелька и с помощью программы PonyProg2000 (с IC-prog тоже работает) успешно прошился МК. Ниже на фото привожу необходимые контакты для программирования и еще нужен кварц на 4мГц.

Программатор своими руками ChipStar-Janus

2021-07-06 Дата последнего обновления программы: 2021-07-06
Автор: Тиком — разработчик и производитель программаторов ChipStar

Двуликий Янус

Мы решили назвать этот программатор «Янус«.

Почему так? Потому что в римской мифологии Янус — это двуликий бог дверей, входов и выходов, а также начала и конца. Какая связь? Почему наш программатор ChipStar-Janus двуликий?

  • C одной стороны, этот программатор — простой. Распространяется как бесплатный проект, его можно легко изготовить самому.
  • C другой стороны, он разработан фирмой, длительное время профессионально занимающейся разработкой и производством различной радиоэлектронной аппаратуры, в том числе программаторами.
  • C одной стороны, этот программатор — простой, с первого взгляда имеет не сильно впечатляющие характеристики.
  • C другой стороны, работает совместно с профессиональной программой (кстати, точно такой же, как и остальные профессиональные программаторы ChipStar).
  • C одной стороны, мы предлагаем этот программатор для свободной бесплатной сборки.
  • C одной стороны, мы его продаем и в готовом виде, как обычный бюджетный продукт.
  • C одной стороны, на самодельный программатор не распространяется гарантия (что естественно).
  • C одной стороны, если вы его смогли собрать, то и отремонтировать сможете, да и программатор настолько простой, что ломаться, собственно, нечему.
  • C одной стороны, это простой внутрисхемный программатор.
  • C одной стороны, через простые адаптеры расширения он поддерживает программирование NANDFLASH и других микросхем уже «в панельке».

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

Что нас побудило разработать этот программатор.

Есть великое множество простых специализированных программаторов, пригодных для самостоятельного изготовления.

Есть множество дешевых китайских программаторов в уже готовом виде.

Есть немало любительских разработок, часто по качеству превосходящих последние.

Казалось бы, в чем смысл очередной поделки?

Мы длительное время занимаемся разработкой производством и поддержкой универсальных программаторов, в основном специального назначения. У нас богатый опыт работы с самыми разными микросхемами. Часто к нам обращаются люди уже собравшие, а часто и купившие, какой-нибудь из выше названных «изделий». Нашим специалистам часто без смеха/слез/ужаса (нужное подчеркнуть) невозможно смотреть на схемные решения, качество сборки и, особенно, на программное обеспечение этих приборов. Ладно когда программатор стоит «три копейки», купил, что-то работает, что-то не работает, зато деньги не большие. Но часто соотношение цена/возможности таких приборов у нас вызывают, мягко говоря, удивление. Хочется воскликнуть: это столько не стоит!

Кроме всего выше названного есть особая категория программаторов, пригодных для самостоятельного изготовления — это программаторы (точнее, схемы программаторов и программное обеспечение), разработанные специалистами фирм производящих микросхемы (в основном микроконтроллеры). Такие программаторы спроектированы вполне профессионально, в их схемотехнике нет «ляпов». Они поддерживают все заявленные микросхемы. Но есть два «маленьких» недостатка: перечень программируемых микросхем весьма ограничен (что вполне понятно) и программное обеспечение весьма спартанское — никаких лишних функций, как правило — только стереть, записать, верифицировать. Часто даже функции чтения микросхемы нет.

Нам стало обидно, что наш многолетний опыт полноценно используется только в такой узкой области, как программаторы специального назначения, поэтому мы решили поделиться своими знаниями с широкой публикой.

Итак, программатор ChipStar-Janus в начальной конфигурации — это внутрисхемный программатор. В таком режиме он поддерживает микроконтроллеры PIC и AVR фирмы Microchip, некоторые микроконтроллеры архитектуры MCS51, микроконтроллеры фирмы STMicroelectronics и еще ряд других, а также микросхемы последовательной памяти с интерфейсом I2C (в основном серия 24). К разъему расширения программатора можно подключить простейшие адаптеры и начать программировать микросхемы памяти «в панельке».

Сейчас реализовано программирование «в панельке»:

  1. микросхемы последовательной памяти (Serial EPROM) с интерфейсом I2C (серия 24xx);
  2. микросхемы последовательной флэш памяти (Serial FLASH) с интерфейсом SPI (SPI Flash);
  3. микросхемы последовательной памяти (Serial EPROM) с интерфейсом MW (серия 93xx);
  4. микросхемы NAND FLASH;

Программатор и программное обеспечение поддерживает технологию самостоятельного добавления микросхем в три клика. Пока реализовано добавление микросхем NAND и I2C. В самое ближайшее время планируется реализовать эту технологию для микросхем MW (серия 93xx) и AVR. Таким образом, вы получаете не просто программатор, а мощный инструмент для самостоятельной работы.

Три способа получить программатор ChipStar-Janus

1-й способ:
Собрать программатор самому полностью

Способ подходит тем, у кого есть время, опыт и желание, но ограничены финансовые возможности. Или просто интересно.

  1. Прочитать условия использования самостоятельно собираемого программатора.
  2. Прочитать инструкцию по сборке программатора.
  3. Скачать полную документацию на программатор.
  4. Скачать информацию для изготовления печатных плат программатора.
  5. Изготовить печатные платы.
  6. Закупить необходимую комплектацию для сборки программатора согласно спецификации.
  7. Зарегистрироваться на сайте обязательно как новый пользователь по этой ссылке!
  8. Войти в личный кабинет и скачать программное обеспечение для программатора и прошивку для микроконтроллера.
  9. Записать (залить, загрузить) полученную прошивку в микроконтроллер. Для этого нужен программатор. Вот незадача, мы же его еще не сделали! Как быть? Можно одолжить у кого-нибудь программатор или попросить записать прошивку в микроконтроллер. Если это невозможно, то вам лучше воспользоваться вторым способом.
  10. Правильно собранный программатор сразу начнет правильно работать. Для функционального контроля воспользуйтесь программой JanusCheker.
Читайте также  Преобразователь фазного напряжения в унифицированный токовый сигнал

2-й способ:
Собрать программатор самому, купив готовую печатную плату и прошитый микроконтроллер

Способ аналогичен предыдущему, только вы избавите себя от самых трудноосуществимых операций: изготовления печатных плат и прошивки микроконтроллера без программатора.

  1. Прочитать условия использования самостоятельно собираемого программатора.
  2. Прочитать инструкцию по сборке программатора.
  3. Скачать полную документацию на программатор.
  4. Купить набор для сборки (готовую печатную плату и микроконтроллер с уже записанной прошивкой).
  5. Закупить необходимую комплектацию для сборки программатора согласно спецификации
  6. Зарегистрироваться на сайте как обычный пользователь готового программатора по этой ссылке. Для этого в регистрационной форме нужно указать серийный номер и дату прошивки полученного вами микроконтроллера.
  7. Войти в личный кабинет и скачать программное обеспечение для программатора.
  8. Правильно собранный программатор сразу начнет правильно работать. Для функционального контроля воспользуйтесь программой JanusCheker.

Как видите, этот путь значительно короче. Готовая плата выпускается только в варианте для компонентов поверхностного монтажа, как на фотографии готового программатора. Если вы выбрали этот способ, пройдите по ссылке и закажите комплект для сборки программатора ChipStar-Janus.

3-й способ:
Купить готовый программатор

Проще всего купить готовый программатор. Этот случай ничем не отличается от покупки любого другого нашего программатора.

Что мы еще планируем сделать для развития программатора ChipStar-Janus

1. Расширить возможности самостоятельного добавления микросхем, добавив:

  • Микросхемы памяти c протоколом MWсерии 93xx.
  • Микросхемы памяти c SPI интерфейсом.
  • Микросхемы памяти DataFlash.
  • Микроконтроллеры AVR семейств Mega и Tiny.

2. Выпустить дополнительные модули для превращения программатора в измерительную лабораторию:

  • Мультиметр.
  • Логический анализатор.

Что еще имеет смысл купить или сделать своими руками для программатора ChipStar-Janus

  1. Адаптер для программирования микросхем NAND.
  2. Адаптер для программирования микросхем последовательной памяти с интерфейсами I2C и SPI.
  3. Адаптер для программирования микросхем последовательной памяти с интерфейсом MW (93 серия).

Часто спрашивают

ChipStar-Janus это готовый программатор, а ChipStar-Janus/KIT это набор основных деталей для сборки программатора ChipStar-Janus.

Посмотреть и отредактировать можно программой CAM350.
CAM350® является стандартом де-факто для проверки, оптимизации и генерации данных для эффективного управления изготовлением печатных плат.

Правильно собранный программатор ChipStar-Janus сразу будет правильно работать. Ищите ошибку монтажа или неисправный компонент. Проверить функционирование программатора можно с помощью программы JanusCheker.
Всегда используйте программное обеспечение и документацию самой последней версии!

Ошибки нет. Все так и должно быть.

Правильное включение диода VD6 показано в документации. Рисунок диода VD6 на печатной плате первой версии нанесен неверно. Включение программатора с неправильно запаянным диодом не приведет к выходу его из строя.

Никаких. Микроконтроллер нужно правильно прошить высоковольтным алгоритмом записи в соответствии со спецификацией Microchip.

Все необходимые fuses интегрированы внутрь прошивки (файл .hex) в соответствии со спецификацией Microchip. Программатор ОБЯЗАН правильно читать фусес из файла прошивки.
Если программа используемого программатора не умеет прочитать фусес из файла, то их нужно выставить вручную как показано здесь: «Биты конфигурации (фусес) для прошивки микроконтроллера программатора ChipStar-Janus/KIT»

Да. Только придется отпаять VD6 (он препятствует подаче высокого напряжения программирования 12V на вывод MCLR процессора). Соединение с программатором необходимо произвести в соответствии со схемой для внутрисхемного программирования и инструкцией используемого программатора.

Нет. Нужно использовать PIC18F25K50.

На странице с описанием программатора Chipstar-Janus об этом написано: зарегистрироваться нужно обязательно как новый пользователь по этой ссылке!

На странице с описанием программатора Chipstar-Janus об этом написано: зарегистрироваться нужно обязательно как новый пользователь по этой ссылке!

Посмотреть другие вопросы о программаторе ChipStar-Janus

Простейший программатор для ATmega8

В современных электронных схемах все чаще и чаще применяются микроконтроллеры. Да что там говорить, если сегодня не найти даже обыкновенную елочную гирлянду без микроконтроллера внутри — он задает различные программы иллюминации.

Я впервые столкнулся с микроконтроллерами, когда собирал свой первый импульсный металлоискатель Клон. Вот тогда-то и выяснилось, что контроллер без прошивки — это просто кусок пластмассы с ножками.

А чтобы залить нужную прошивку в АТМЕГу, никак не обойтись без программатора. Далее мы рассмотрим две самые простые и проверенные временем схемы программаторов.

Схема первая

С помощью этого программатора можно прошивать практически любой AVR-контроллер от ATMEL, надо только свериться с распиновкой микросхемы.

СОМ-разъем на схеме — это «мама».

На всякий случай привожу разводку печатной платы для атмеги8 (скачать), хотя такую примитивную схему проще нарисовать от руки. Плату перед печатью нужно отзеркалить.

Файл печатной платы открывать с помощью популярной программы Sprint Layout (если она у вас еще не установлена, то качайте 5-ую версию или лучше сразу 6-ую).

Как понятно из схемы, для сборки программатора потребуется ничтожно малое количество деталек:

Вместо КТ315 я воткнул SMD-транзистор BFR93A, которые у меня остались после сборки микромощных радиомикрофонов.

А вот весь программатор в сборе:

Питание (+5В) я решил брать с USB-порта.

Если у вас новый микроконтроллер (и до этого никто не пытался его прошивать), то кварц с сопутствующими конденсаторами можно не ставить. Работа без кварцевого резонатора возможна благодаря тому, что камень с завода идет с битом на встроенный генератор и схема, соответственно, тактуется от него.

Если же ваша микросхема б/у-шная, то без внешнего кварца она может и не запуститься. Тогда лучше ставьте кварц на 4 МГц, а конденсаторы лучше на 33 пФ.

Как видите, я кварц с конденсаторами не ставил, но на всякий случай предусмотрел под них места на плате.

Заливать прошивку лучше всего с помощью программы PonyProg (скачать).

Прошивка с помощью PonyProg

Заходим в меню Setup -> Calibration -> Yes. Должно появиться окошко «Calibration OK».

Далее Setup -> Interface Setup. Выбираем «SI Prog API» и нужный порт, внизу нажимаем «Probe», должно появиться окно «Test OK». Далее выбираем микроконтроллер «Device -> AVR micro ATmega8».

Теперь втыкаем микроконтроллер в панельку программатора, и подаем питание 5 вольт (можно, например, от отдельного источника питания или порта ЮСБ). Затем жмем Command -> Read All.

После чтения появляется окно «Read successful». Если все ок, то выбираем файл с нужной прошивкой для заливки: File -> Open Device File. Жмем «Открыть».

Теперь жмем Command -> Security and Configuration Bits и выставляем фьюзы, какие нужно.

Тщательно все проверяем и жмем «OK». Далее нажимаем Command -> Write All -> Yes. Идет прошивка и проверка. По окончании проверки появляется окно «Write Successful».

Вот и все, МК прошит и готов к использованию!

Имейте в виду, что при прошивке с помощью других программ (не PonyProg) биты могут быть инверсными! Тогда их надо выставлять с точностью до наоборот. Определить это можно, считав фьюзы и посмотрев на галку «SPIEN».

Схема вторая

Еще одна версия программатора, с помощью которого можно залить прошивку в микроконтроллер АТМЕГа (так называемый программатор Геннадия Громова). Схема состоит всего из 10 детатей:Диоды можно взять любые импульсные (например, наши КД510, КД522). Разъем — «мама». Питание на МК (+5В) нужно подавать отдельно, например, от того же компьютера с выхода USB.

Читайте также  Усилители мощности. окончание начала

Все это можно собрать навесным монтажом прямо на разъеме, но если вы крутой паяльник и знаете, что такое smd-монтаж, то можете сделать красиво:

Алгоритм прошивки с помощью программатора Громова

Программатор с установленной микросхемой подключаем к СОМ-порту компьютера, затем запускаем Uniprof, затем подаем питание на микроконтроллер. И первым делом проверяем, читаются ли фьюз-биты.

Если все ок, выбираем файл с нужной прошивкой и жмем запись.

Будьте предельно внимательны и осторожны, потому что если глюканет при записи фьюзов, то МК либо на выброс, либо паять схему доктора (а она сложная). Если поменяете бит SPIEN на противоположный — результат будет тот же (к доктору).

Как сделать простой программатор для PIC-ов и AVR-ов

  • Характеристики
  • Программирование PIC-ов
  • Программирование AVR-ов
  • Структура конфигурационных файлов
  • Файл программы(zip архив 446 KB)

Бесплатные программаторы, которые можно найти в интернете безнадежно отстают от разработчиков чипов и не предлагают способов быстрой модернизации для программирования новых микроконтроллеров.

В данном случае была сделана попытка разработать программную оболочку в рамках которой легко было бы наращивать возможности по программированию различных чипов хотя бы для предопределенных семейств.

Программатор характеризуется тем, что:

  • Испытан под Windows 98, Windows Me, Windows 2000 c процессорами Celeron, AMD Duron, AMD Athlon T, Pentium III до частоты 1000 МГц
  • Программирование ведется через порт RS232
  • Программа не требует инсталяции и дополнительных драйверов.
  • Программирует микроконтроллеры семейства PIC (отладка производилась на PIC16F84 и PIC16F877) по последовательному протоколу и микроконтроллеры семейства AVR (отладка производилась на AT90S8535)
  • Предостовляет возможность самостоятельно добавлять новые чипы из указанных семейств с идентичным протоколом программирования с помощью конфигурационных файлов.
  • Позволяет произвольно менять структуру и содержание меню программируемых чипов и информационных полей связанных с программируемым чипом.
  • Позволяет загружать и редактировать бинарные и HEX файлы, выполнять блочные операции с данными, расчет CRC по нескольким алгоритмам
  • Позволяет индивидуально программировать различные области чипа (память программ, память данных, биты опций, биты защиты)

Рис.1. Окно програмной оболочки Программирование PIC-ов Рис.1. Схема программатора PIC-ов

Особой оригинальностью не отличается поскольку в основном повторяет схему из известного программатора PonyProg. Следует уделять внимание уровню сигнала на выводе CLOCK чипа, он не должен быть меньше 4 В при высоком уровне, что может случиться при неправильном подборе стабилитрона

Рис.2. Схема программирования AVR-ов

Здесь показан способ как организовать программирование AT90S8535 прямо на плате с помощью RS232 и небольшого аппаратного дополнения. Микросхема DD1 служит для изоляции сигналов программирования от чипа в режиме работы. Разводка микросхемы показана в колодке c расположением контактов типа PGA44. Испытания показали, что большинство микросхем AT90S8535 и AT90S8515 можно программировать при частоте кварца 11,0592 МГц.

Структура конфигурационных файлов

Конфигурационные файлы имеют расширение chp и должны находиться в директории программы. Программа при запуске производит поиск в своей директории всех конфигурационных файлов и их объединение во внутреннем буфере. Идея таких файлов взята из программатора ComPic и немного изменена. Каждому чипу соответствует своя секция. Возможность наследования свойств не предусмотренна, так как это ухудшает прозрачность описания.

Пример структуры конфигурационного файла для PIC16F84

Param_4_Content=Oscilator | FOSC | CONFIG
Param_4_Choice1=RC oscillator (11)
Param_4_Choice1_icon=8
Param_4_Choice1_data=xxxxxxxxxxxx11
Param_4_Choice2=HS oscillator (10)
Param_4_Choice2_icon=8
Param_4_Choice2_data=xxxxxxxxxxxx10
Param_4_Choice3=XT oscillator (01)
Param_4_Choice3_icon=8
Param_4_Choice3_data=xxxxxxxxxxxx01
Param_4_Choice4=LP oscillator (00)
Param_4_Choice4_icon=8
Param_4_Choice4_data=xxxxxxxxxxxx00

Param_5_Content=ID | ID | ID
Param_5_Choice1=0000

Дата публикации: 2004-02-15
Прочтено: 37133
Версия для печати: