1. Простой программатор для AT89C2051 "на скорую руку" с использованием ATMega8

  2. AT89C2051

    ATMega8

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

Схема, прошивка переделана с ATMega32 на ATMega8, сегодня проверено в железе еще раз, всё работает и шьётся. В программаторе за ненадобностью не реализованы функции Verify, Blank check и установка Lock bits. Функция Verify избыточна, т.к. проверка происходит по ходу записи.

В комплект поставки входит принципиальная схема программатора, проект для IAR с исходниками (на C) и сама прошивка для ATMega8, проект в IntelliJ Idea с исходниками программатора (на Java).

Обмен программатора с компьютером происходит через последовательный порт (USART in и USART out на схеме). Т.к. на моём комтьютере COM-портов нету, я использовал преобразователь RS232-USB, собранный на FT232RL (отсюда). Cкорость обмена с компьютером по COM-порту 9600-8n1.

Принципиальная схема контроллера

Принципиальная схема программатора

Принципиальная схема в формате Splan7: (доступно зарегистрированным пользователям)

Исходный код прошивки

Версия v2.0 от 15.03.2014: (доступно зарегистрированным пользователям)

Прошивка

Версия v2.0 от 15.03.2014: (доступно зарегистрированным пользователям)

Фюзы для меги необходимо выставить следующие:
H-Fuse: 0xDD
L-Fuse: 0xE3

Частота внутреннего генератора при таких фюзах - 4MHz.

Прошивал мегу с помощью широко известного программатора USBasp софтом Khazama AVR Programmer.

Протокол программирования AT89C2051 описан в даташите, ссылка на который есть ниже.

Программатор

Архив с проектом программатора в IntelliJ Idea

Версия v2.0 от 15.03.2014: (доступно зарегистрированным пользователям)

Для работы с COM-портом из программы на Java, необходимо использовать вот эту библиотеку. Инструкция по установки есть внутри в файле INSTALL.

Эта библиотека расчитана на работу в 32-bit среде Java, поэтому на 64-bit Windows надо отдельно ставить 32-bit Java и запускать из-под неё, иначе будем получать сообщение "Can't load IA 32-bit .dll on a AMD 64-bit platform thrown while loading gnu.io.RXTXCommDriver".

Дисклаймер: Всё это добро предлагается "как есть", Автор не отвечает за полную или частичную неработоспособность изделия, не берет на себя никаких обязательств по поддержке или развитию проекта. На вопросы буду отвечать по мере возможности и при наличии свободного времени.

Даташиты

Добавить комментарий

Filtered HTML

  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Строки и параграфы переносятся автоматически.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.

Plain text

  • HTML-теги не обрабатываются и показываются как обычный текст
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Строки и параграфы переносятся автоматически.
CommentFile
Максимальный размер файла: 5 МБ.
Разрешённые типы файлов: jpg png.
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.
CAPTCHA на основе изображений
Введите код с картинки