avreal та LPT в Windows

З точки зору AVReAl поняття «Windows» розпадається на дві родини операційних систем.

Системи родини Windows 9X, наприклад, Windows 98, не вимагають встановлення драйвера доступу до LPT. При роботі в такій системі avreal працює з портами напряму.

Як досі поширена Windows XP, так і Windows 7 належать до другої родини — Windows NT. Для них потрібен драйвер DLPortIO, встановлення якого описано раніше окремо для 32-бітних та 64-бітних систем.

Для всіх версій Windows в командному рядку необхідно вказувати номер LPT або базову адресу порта, наприклад, -p1, -p378. При цьому номер порта є лише скороченням стандартної адреси, як це сказано в описові ключа -p. Вважається, що LPT1/2/3 мають адреси 378/278/3BC.

Якщо LPT-порт знаходиться на нестандартних адресах, наприклад, використовується плата розширення PCI-LPT (PCI-Express LPT, PCMCIA-LPT), базову адресу можна дізнатися у властивостях порта в диспетчері пристроїв.

Картинки показано для Windows 7, але для Windows XP порядок дій відрізняється практично лише декором діалогів.

Натисніть кнопку «Пуск» та в контекстному меню кнопки «Комп’ютер» виберіть «Kерування».

W7-computer-manage

В діалозі Керування комп’ютером виберіть Диспетчер пристроїв, розкрийте гілку Порти COM та LPT.
Знайдіть свою LPT-плату і в її контекстному меню виберіть Властивості, на закладинці Ресурси побачите базову адресу плати.

W7-device-manager-lpt

У даному випадкові для avreal необхідно вказати ключ -pE800.

Розподіл адрес пристроїв на шині PCI виконується BIOS-ом під час завантаження комп’ютера.
Базова адреса PCI-LPT порта на даному комп’ютері залежить від його апаратної конфігурації і однакова для Windows та Linux. Наприклад моя плата ST-Lab I-152 на мікросхемі MosChip MCS9835CV в домашньому комп’ютері має адресу 0xE800 для різних версій Windows та Linux.
Але в іншому комп’ютері ця ж сама плата отримала адресу 0xB800.


Дивіться також про avreal та LPT в Linux

7 Responses to “avreal та LPT в Windows”

  1. Alex коментує:

    avreal/WIN32 – AVR controllers programmer by Redchuk Alexandr
    v1.28r14 (Aug 5 2013 20:11:52) http://real.kiev.ua/avreal
    bug-reports, suggestions and so on mail to avreal@real.kiev.ua
    Command:
    +tiny13 -pEC00 -v prj1.hex
    Can’t resync

    FAILED
    Reset pin released

    Собственно вот

    • ReAl коментує:

      Ага, с LPT все нормально. Вопрос в том, на какую тактовую зашит микроконтроллер в прошлый раз, т.е. какие фьюзы. Возможно, высоковата частота работы программатора. Откуда берётся питание?

      Кстати! А какие «5 проводков»?
      Они же бывают разные. avreal без ключей типа адаптера подразумевает старый FBPRG, а по интернету бродят «5 проводков», совместимые по распайке LPT то с STK, то с ByteBlaster, но без шинника. С ними тоже можно работать, но нужно указать соответствующие ключи.

      • Alex коментує:

        http://www.getchip.net/posts/delaem-lpt-programmator-dlya-avr-mikrokontrollerov/
        Вот этот собирал. Если я все правильно понял, то некоторые пины не совпадают с теми, что в Вашей схеме!
        RESET у вас на 6м выводе. У меня на 9м
        SCK на 8м. У меня на 6м.
        1й раз я его прошил с помощью Uniprof по инструкции со статьи. Потом дома настраивал купленную карту PCI и шил в PonyProg, т.к. больше нигде не увиделся LPT. Фьюзы не трогал. Потом еще раз шил в понипрог и тогда же попробовал прочесть и записать Security and configuration bits.
        Верификация проходит успешно.
        Дело в том, что кое как сейчас в схеме контроллер работает, но не так как положено. И не понимаю, то ли косяк в схеме, то ли…

        • ReAl коментує:

          Эта схема — «безшинниковый» аналог STK200/STK300, там ниже об этом сказано.
          В командную строку avreal нужно добавить -as
          Т.е.

          avreal32-1.28r14.exe -as +tiny13 -pEC00 -v prj1.hex

          Если микроконтроллер загнано на низкие частоты, то может понадобиться ещё -o100

  2. Alex коментує:

    ЗДравсвуйте! Проблемка. Материнка P5QL. Отсутствует на ней LPT. Имеется STLAB PCI-LPT карточка, естественно адрес порта нестандартный.
    http://img692.imageshack.us/img692/5329/7h53.jpg
    Программатор 5 проводков.
    Запрос:
    avreal32-1.28r14.exe +tiny13 -pEC00 -v prj1.hex
    RESET PIN RELEASED.

    На этом программаторе была зашита программа в этот же МК ATtiny13, но на ноуте со встроенным LPT(прошивал с помощью Uniprof). На том же ноуте AvReal также не увидел МК.

    Начитался, что PCI-LPT очень коряво работают с программаторами и прошивальщиками…Подскажите, как еще попробовать поднять avreal!

    Ponyprog настроил, верификацию HEX и прошитого МК проходит. То есть, работает адекватно!
    Такие вот настройки изменял и добавлял:
    AutoDetectPorts=NO
    LPTPorts=378,EC00,EC07

    • ReAl коментує:

      Здравствуйте!
      А в чём, собственно, проблема? RESET PIN RELEASED — это стандартное сообщение в конце работы с адаптером без шинника, просто говорит о том, что программатор отпустил ножку сброса и контроллер предоставлен самому себе. Сообщений об ошибках тут нет.
      avreal с PCI-LPT работает давно и уверенно, проверялось на разных типах плат, включая производившуюся в Киеве на микросхеме EPM7128. Командная строка правильная для данной карточки в данных условиях. Кстати, на ST-LAB карточке я и проверяю работу с PCI-LPT, хотя именно 1.28r14 мог проверить только на обычноми набортном LPT.

      Сейчас я далеко от всего этого и проверить дополнительно именно 1.28r14 не могу, доберусь до плат с AVR через несколько дней.
      Покажите полностью, что выводится с той же командной строкой, но к ней добавьте ключ -%.

Leave a Reply

[flagcounter image]