Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
Карта сайта | Пишите нам | В избранное | eng     

Внимание! У нас изменились номера телефонов. Звоните:
(495) 638-88-00, (499) 940-95-75, факс (499) 735-04-91;
+7(909) 638-88-00 и +7(903) 530-10-01 (Билайн).
       о фирме        электроника     обратная связь

Микроэлектронные проекты. Александр Елисеев. Как сделать простой программатор с использованием DELPHI 5


Назначение
Почему DELPHI
Возможности программы
Недостатки
Использованные компоненты
Совместимость
Методология
On-Line консультация
Что дальше ...?
Как сделать простой программатор с использованием
DELPHI 5
Автор: Александр Елисеев.ea@eunet.lt
Инженер информационного отдела компании "Finalas", Вильнюс
Дизайн: Adobe ImageStyler 1.0, Macromedia Dreamweaver 2.01, Ulead COOL 3D 2.0
Назначение

В этом проекте представлена программа предназначенная для программирования чипов фирмы DALLASтипа DS5000и модулей на их основе, и чипов фирмы PHILIPS серии P89C51RA+/RD+. Эти чипы, как известно, имеют встроенный механизм программирования по последовательному протоколу RS232, поэтому для их программирования практически не требуется аппаратная часть. Запрограммировать такие микросхемы можно используя простейшую программу-терминал. Но в данном случае была цель сделать более удобный пользовательский интерфейс и подготовить базовую оболочку для универсального программатора сообщающегося со своей  аппаратной частью через последовательный интерфейс. 

Почему DELPHI

Разработка была выполнена в среде DELPHI 5. Именно благодаря уникальным возможностям этой среды появилась мысль о создании собственного программатора. Уникальность заключается прежде всего в том, что существует огромное количество бесплатных программных компонентов расширяющих возможности прикладной программы. Эти компоненты прекрасно визуализированы и тесно интегрированы с ресурсами (в отличии от MS Visual C++) и большинство имеет открытый исходный код  выполненный в той же среде (в отличии от  MS Visual Basic). 

Возможности программы

Управляющая программа может следующее:

  • Открывать и сохранять файлы в форматах HEX и BIN, при этом делать преобразования из одного в другой.
  • Открывать файлы размером до 64 Mb. При этом работа с файлом не зависит от выбранного для программирования устройства.
  • Позволяет произвольно изменять размер буфера данных .
  • Позволяет просматривать данные в HEX,BIN,DEC,ASCII форматах, а также 8-и или16-и битном виде.
  • Позволяет редактировать данные и производить 8 блочных арифметических операций. Блоки могут выделяться по диапазону или по выделению.
  • Позволяет осуществлять поиск данных и переход по адресу.
  • Расчитывает контрольную сумму блоков данных по 7-и стандартным алгоритмам.
  • Позволяет гибко настраивать формат сетки данных.
  • Позволяет настраивать параметры коммуникационного порта.
  • Запоминает настройки с момента последнего выключения.
  • Не загрязняет регистр Windows. Не использует драйверы третьих лиц. Состоит из одного файла. Запускается сразу без дополнительной инсталяции.

 

Недостатки

Некомерческий характер программы, конечно, способствует появлению в ней многочисленных ошибок о которых хотелось бы услышать со стороны, для чего открыта On-Line консультация. 

Компоненты

Программирование в DELPHI естественно предпологает использование компонентов сторонних разработчиков  В программе были использованы следующие компоненты:

  • Async32 v1.49  от  Varian Software Services NL c известного сайта  Torry Delphi Pages. Для более удобного программирования компонент был несколько переделан и его можно взятьздесь  http://www.finalas.lt/ea/programmer/Downloads/comport.zip. Этот компонент организует управление COM портом.
  • RxLib  с сайта http://www.rxlib.com. Обширный набор очень полезных компонент включая управление меню, сохранение настроек, усовершенствованные ComboBox и т.д.
  • HexGrid компонент собственного производства. Несколько сыроват, но готов к применению. Визуализирует данные в сеточной таблице в различных форматах.
  • CbDigEdit  собственная разработка, наследник TcomboEdit из библиотеки RxLib . Поле для ввода чисел в DEC или HEX нотациях без использования всяких префиксов и суффиксов. Нотации переключаются комбинацией [Alt]-[Arrow Down] . Имеет настраиваемый ограничитель сверху.
  • CRC собственный очень легкий компонент для расчета контрольной суммы. Модуль имеет массив из семи стандартных моделей в контексте модели CRC от  Rocksoft Pty Ltd. Массив может быть дополнен собственными моделями CRC. Для более подробного ознакомления с методикой расчета CRC предлагаю оригинальную статью  Ross N. Williams “A PAINLESS GUIDE TO CRC ERROR DETECTION ALGORITHMS” 
Совместимость

Для того чтобы иметь возможность компиляции исходного кода необходимо установить все перечисленные выше компоненты. Компоненты написанны именно для версии DELPHI 5 и установить их в более старших версиях довольно трудно благодаря политике фирмы  Inprise Corporation. 

Методология построения программы

Центром программы является главная форма содержащая две таблицы данных. Таблицы наследуются от TcustomGrid с добавлением  динамически распределяемого буфера данных и методов работы с ним. Для каждого программируемого типа чипов создается отдельная форма наследуемая от формы  Device_template.dfm. После выбора из меню соответствующего чипа создается его форма и ее владельцем назначается панель в главной форме вследствии чего созданная форма помещается в рамки пространства панели.  Такое решение позволяет с одной стороны все управляющие компоненты держать в одной форме во время работы и одновременно не перегружать ее компонентами во время разработки.
Процесс программирования ведется отдельным потоком расположенным в модуле SendThread.pas с использованием низкоуровневых асинхронных вызовов API ReadFile,  WriteFile дающих максимальный выигрыш от многопоточности.

Рабочая программа доступна в виде исполняемого модуля:altprog_EXE.zip (397 Кб)
И в виде исходного текста: altprog_Source.zip (140 Кб)

Перспективы

Программа уже предусматривает программирование чипов серии AVR AT90S2313 с использованием дополнительной аппаратной части. Однако, она еще достаточно дорога для простого программатора. Следующим этапом проекта будет разработка недорогой аппаратной части универсального программатора.

 Разместите Ваш проект у нас на сайте и его смогут увидеть сотни посетителей в день. Ваши проекты присылайте вебмастеру.
Правила оформления проектов
  1. Необходимо наличие схемы, описания устройства и т.д. (для отдельных проектов - драйвера, программное обеспечение и их описание)
  2. Схемы и другие картинки должны быть в форматах .jpg или.gif. К ним обязательно должны идти подписи, поясняющие, что на данной схеме (картинке) изображено.
  3. Описание устройства - в форматах .doc, .txt или .html.
  4. Проект не должен нарушать чьих-либо авторских прав.
Ваши проекты присылайте вебмастеру
Приглашаем специалистов
В России кризис и увольнения персонала, а в Телесистемах, как обычно, не так как у всех: мы расширяем деятельность, набираем новых сотрудников и ищем новых партнеров.
Изделия для разработчиков
Программатор «PICPROG» «PICPROG» - универсальный промышленный программатор.
Копировщик PIC16x8x Копировщик PIC16x8x - тиражирование в автономном режиме.
Наши телефоны: (495) 638-88-00, (499) 940-95-75, факс (499) 735-04-91, мобильные: (903) 530-10-01 и (909) 638-88-00 (БиЛайн).
E-mail:

Copyright © ООО "Телесистемы", 1997 — 2024    Копируйте на здоровье! За ссылку на www.telesys.ru мы вам будем очень признательны.

Rambler's Top100