Як зробити простий програматор з використанням DELPHI 5.

У цьому проекті представлена ​​програма призначена для програмування чіпів фірми DALLAS типу DS5000 та модулів на їх основі, та чіпів фірми PHILIPS серії P89C51RA+/RD+. Ці чіпи, як відомо, мають вбудований механізм програмування за послідовним протоколом RS232, тому для їх програмування практично не потрібна апаратна частина. Запрограмувати такі мікросхеми можна за допомогою найпростішої програми-терміналу. Але в даному випадку була мета зробити зручніший інтерфейс користувача і підготувати базову оболонку для універсального програматора сполученого зі своєю апаратною частиною через послідовний інтерфейс.

Розробка була виконана серед DELPHI 5. Саме завдяки унікальним можливостям цього середовища з'явилася думка про створення власного програматора. Унікальність полягає насамперед у тому, що існує величезна кількість безкоштовних програмних компонентів, що розширюють можливості прикладної програми. Ці компоненти чудово візуалізовані та тісно інтегровані з ресурсами (на відміну від MS Visual C++) і більшість має відкритий вихідний код, виконаний у тому ж середовищі (на відміну від MS Visual Basic).

Керуюча програма може наступне:

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

Програмування в DELPHI природно передбачає використання компонентів сторонніх розробників У програмі були використані наступні компоненти:

  • Async32 v1.49 від Varian Software Services NL з відомого сайту Torry Delphi Pages. Для зручнішого програмування компонент був кілька перероблений і його можна взяти тутurl.php?url=Downloads/comport.zip. Цей компонент організує керування COM портом.
  • RxLib із сайту . Великий набір дуже корисних компонентів, включаючи управління меню, збереження налаштувань, вдосконалені 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. Після вибору меню відповідного чіпа створюється його форма і її власником призначається панель у головній формівнаслідок чого створена форма поміщається у межі простору панелі. Таке рішення дозволяє з одного боку всі керуючі компоненти тримати в одній формі під час роботи та одночасно не перевантажувати її компонентами під час розробки. максимальний виграш від багатопоточності.

Робоча програма доступна у вигляді модуля, що виконується: altprog_EXE.zip (397 Кб)

Програма передбачає програмування чіпів серії AVR AT90S2313 з використанням додаткової апаратної частини. Однак вона ще досить дорога для простого програматора. Наступним етапом проекту буде розробка недорогої апаратної частини універсального програматора.

Як зробити простий програматор з використанням DELPHI 5