реклама на сайте
подробности

 
 
25 страниц V  « < 13 14 15 16 17 > »   
Reply to this topicStart new topic
> avreal, новая версия (если кому-то это ещё нужно)
ReAl
сообщение Feb 7 2010, 22:25
Сообщение #211


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Ну я замену DlPortWritePortBufferUchar при её отсутствии на цикл с DlPortWritePortUchar всё же сделал.
Мало ли что и как будет развиваться в InpOut32.dll, лучше пусть исходная версия тоже работает.
Пока выложена тестовая версия.

И на InpOut гляну, может лучше просто её поддержать да и всё.

Я собираюсь поставить дома для проверок Win7/64 (т.е. работою как-то до сих пор в XP/32, но нераспределённое место на диске есть, доставлю туда). Заодно mingw-w64 попробую, может тогда avreal64 просто появится :-)




Да, avreal из dlportio.dll импортирует только DlPortWritePortUchar, DlPortReadPortUchar, DlPortWritePortBufferUchar, так что косяки с long/short действительно не должны влиять.

На "родной" dlportio работа через замену DlPortWritePortBufferUchar на цикл с DlPortReadPortUchar садит на моих компьютере и LPT скорость считывания AVR где-то на 5-6%


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
ReAl
сообщение Feb 8 2010, 00:49
Сообщение #212


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(ReAl @ Feb 8 2010, 00:25) *
И на InpOut гляну, может лучше просто её поддержать да и всё.
Или не вижу, или спать пора...
Кажется, тут нет уж собранного драйвера под x64
В binaries only есть инсталлятор драйвера только в папке для win32. С драйвером из этой папки и переименованной в dlportio dll-кой оттуда под XP/32 проверено, работает.

Хотя чего морочить себе голову - с Вашей сборкой под win64 работает ведь :-)
Т.е. можно просто разместить её уменя на страничке, дать линки на эту тему, на указанный сайт и успокоиться.
Что-то будет меняться - тогда и что-то делать.

Но самым правильным в эту минуту будет таки лечь спать

p.s. раз уж зашёл разговор - опрос общественного мнения (нет, не про выборы :-) )
Вот к примеру делаю я под win поддержку работы не тольrо через dlportio.
Эта inpout в оригинльной форме имеет всего лишь другие имена функций, но это тоже нужно как-то указать.
giveio требует несколько другого подхода.
Как лучше указать в ключах способ доступа?
Пусть адрес E800
-pE800 - без указанного метода - dlportio
с методом лучше так
Код
-pE800@giveio
-pE800@inpout
или так wink.gif
Код
-p/giveio/E800
-p/inpout/E800


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
Petka
сообщение Feb 8 2010, 09:26
Сообщение #213


Профессионал
*****

Группа: Свой
Сообщений: 1 453
Регистрация: 23-08-05
Пользователь №: 7 886



Цитата(ReAl @ Feb 8 2010, 03:49) *
p.s. раз уж зашёл разговор - опрос общественного мнения (нет, не про выборы :-) )
Вот к примеру делаю я под win поддержку работы не тольrо через dlportio.
Эта inpout в оригинльной форме имеет всего лишь другие имена функций, но это тоже нужно как-то указать.
giveio требует несколько другого подхода.
Как лучше указать в ключах способ доступа?

Давно назрела необходимость отделить мух от котлет.
В avreal в одну кучу свалены настройки программатора и параметры прошивки (файл с прошивкой, фузы).
Логично в .bat/Makefile указывать ТОЛЬКО параметры а настройки программатора хранить отдельно в конфигурационном файле.
т.е. Если на ноутбуке есть только программатор FT2232 а на ББ программатор LPT, то надо при прошивке одного и того же проекта на ноуте и ББ лезть в .bat/Makefile. Логичнее на ноуте использовать один файл настроек программатора а на ББ другой. А в командной строке задавать только Фузы, Файл прошивки, чип.

Как это может выглядеть: avreal при старте читает дефолтный конфиг (или иначе конфиг дефолтов) в котором может быть заданы (а могут быть и не заданы) некоторые параметры. Потом читает параметры из командной строки, и если есть пересекающиеся атрибуты, то ругается и/или использует то, что задано в командной строке.
Go to the top of the page
 
+Quote Post
ReAl
сообщение Feb 8 2010, 10:41
Сообщение #214


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(Petka @ Feb 8 2010, 11:26) *
Как это может выглядеть: avreal при старте читает дефолтный конфиг (или иначе конфиг дефолтов) в котором может быть заданы (а могут быть и не заданы) некоторые параметры. Потом читает параметры из командной строки, и если есть пересекающиеся атрибуты, то ругается и/или использует то, что задано в командной строке.
Это давно в очереди, но далеко не первоочередное у меня лично, уж извините.
У меня в переменных окружения дома
Код
d:\>set | grep AVREAL
AVREAL_ADAPTER=ft2232:enable=~adbus4,~acbus2:reset=acbus1
AVREAL_PORT=d=DENIS_FT2232D A
(в работе платка, подаренная мне человеком по имени Денис и когда я отлаживал єти ключи я не долго думал, что прописать в EEPROM ;-) )
На работе что-то в духе
Код
AVREAL_ADAPTER=b
AVREAL_PORT=/dev/parport0

и в makefile

Код
ifndef AVREAL_PORT
AVREAL_PORT := 1
endif

ifndef AVREAL_ADAPTER
AVREAL_ADAPTER = b
endif

AVREAL := avreal "-a$(AVREAL_ADAPTER)" "-p$(AVREAL_PORT)" +$(MCU)

Где я сейчас - просто не думаю :-)
И на работе, и дома avreal - это линк на реальную версию, выбранную в данный момент для работы.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
_pv
сообщение Feb 8 2010, 19:32
Сообщение #215


Гуру
******

Группа: Свой
Сообщений: 2 563
Регистрация: 8-04-05
Из: Nsk
Пользователь №: 3 954



Цитата(ReAl @ Feb 8 2010, 06:49) *
Или не вижу, или спать пора...
Кажется, тут нет уж собранного драйвера под x64
В binaries only есть инсталлятор драйвера только в папке для win32. С драйвером из этой папки и переименованной в dlportio dll-кой оттуда под XP/32 проверено, работает.

ээ, похоже что на самом деле там его нет.
изначально dlportio64 брал с понипроговского форума, ссылка выше.
а потом не обнаружив там нужных функций добавлял их в inpout который взял отсюда:
http://logix4u.net/Legacy_Ports/Parallel_P..._XP_64_bit.html
там есть драйвер.
драйвера ставил родным инсталлятором от dlportio, переименовав файлы.

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

так что для пущей совместимости, наверное, лучше использовать функции Inp32 и Out32. они во всех версиях библиотек для inpout32 должны быть.
Ну или действительно оставить как есть раз уж работает smile.gif
Go to the top of the page
 
+Quote Post
ReAl
сообщение Feb 9 2010, 10:08
Сообщение #216


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(_pv @ Feb 8 2010, 21:32) *
так что для пущей совместимости, наверное, лучше использовать функции Inp32 и Out32. они во всех версиях библиотек для inpout32 должны быть.
Так вот и я об этом думаю - тогда с любой заработает.

Цитата(_pv @ Feb 8 2010, 21:32) *
Ну или действительно оставить как есть раз уж работает smile.gif
Я малость приболел, а работа не ждёт, поэтому вернусь к этому вопросу немного позже.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
ptbnfns
сообщение Feb 14 2010, 12:10
Сообщение #217





Группа: Участник
Сообщений: 6
Регистрация: 14-02-10
Пользователь №: 55 471



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

Этих "драйверов" развелось как собак...
Такое впечатление, что каждый автор или любит изобратать велосипед или желает поупражняться в драйверописании - этакий "Hello World" в DDK wacko.gif

И что самое скверное, что разный софт использует разные драйверы !
И для каждого предлагается установить "драйвер"
Достало twak.gif maniac.gif

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

Тоесть DLL сама занимается поиском имеющегося драйвера и работой с ним в соответствии с принятым для конкретно него протоколом.
А приложение умеет работать ТОЛЬКО с этой DLL.
В саму DLL можно насовать сколько угодно функций для работы с разными уже имеющимися приложениями без их переделки.
Единственное неудобство - необходимость переименовывать её в то имя которое данное приложение "знает".

Как вариант - предлагаю odvport.dll
Исходнит прилагается (GPL)

Сообщение отредактировал ptbnfns - Feb 14 2010, 12:11
Прикрепленные файлы
Прикрепленный файл  odvport.zip ( 21.22 килобайт ) Кол-во скачиваний: 153
 
Go to the top of the page
 
+Quote Post
Xenia
сообщение Feb 14 2010, 13:38
Сообщение #218


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(ptbnfns @ Feb 14 2010, 15:10) *
Как вариант - предлагаю odvport.dll
Исходнит прилагается (GPL)

Проблемы в основном не с драйвером, а со способом его инсталляции. DLPORTIO тоже был не плох, но поди установи его! Хитрющий install.exe на большем числе компьютеров не работает. А p95nt на новых опереционках тоже перестает работать. Короче говоря, не код драйвера плох, а слишком стали привередливы требования к инсталляции драйверов. Та же проблема часто встречается при инсталляции драйверов под USB.
А ваш драйвер в этом смысле совершенно не годится, т.к. никаких средств для его инсталляции не предусмотрено.
Go to the top of the page
 
+Quote Post
ptbnfns
сообщение Feb 14 2010, 14:20
Сообщение #219





Группа: Участник
Сообщений: 6
Регистрация: 14-02-10
Пользователь №: 55 471



Да забыл сказать:
у меня уже сейчас есть поддержка работы через:
giveio.sys
dlportio.sys
mcdbio.sys
porttalk.sys
altlpt1 aka Pgdhdlc.sys - драйвер ByteBlaster из MaxPlus
и самое вкусное - вообще без драйвера через недокументированные функции из ntdll.dll

если кто знает ещё - говорите - добавлю!
в ближайшее время по капаю inpout32 и winring0 (просто я прежде о них не слышал - говорю же "как собак...")

по поводу установки - на самом деле там всё очень просто (для XP по крайней мере)
поражает желание авторов этих драйверов делать всё запутанным и сложным (видимо для сбережения "великого тайного знания о доступе к портам" LOL !!! )
так вот - никакие "установщики" нафиг не нужны!
для установки нужно следующее
1)быть "администратором"
2)скопировать файл_драйвера.sys в c:\windows\system32\drivers
3)зарегистрировать драйвер - т.е. добавить службу ядра - это можно сделать двумя способами
а)через API service control manager
б)добавив раздел в реестр. пример для giveio - делаем файл install.reg
Код
REGEDIT4

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\giveio]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"Group"="Extended Base"

и тыкаем в него мышкой
оно - спросит добавить?
мы - ага !
перезагружаемся - готово

обратите внимание на параметр
"Start"=dword:00000003
может быть 2 или 3
2-запуск драйвера при старте системы
3-запуск "по требованию"
к сожалению не все умеют "потребовать" в частности dlportio.dll - не умеет. так, что для него - только "2"

odvport умеет правильно "требовать" так, что с ним драйвер займёт память только при первом обращении.

Сообщение отредактировал ptbnfns - Feb 14 2010, 14:22
Go to the top of the page
 
+Quote Post
ptbnfns
сообщение Feb 14 2010, 16:54
Сообщение #220





Группа: Участник
Сообщений: 6
Регистрация: 14-02-10
Пользователь №: 55 471



Добавил поддержку hwinterface.sys - это драйвер от inpout32
Прикрепленные файлы
Прикрепленный файл  odvport.zip ( 21.44 килобайт ) Кол-во скачиваний: 259
 
Go to the top of the page
 
+Quote Post
Xenia
сообщение Feb 14 2010, 17:09
Сообщение #221


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Цитата(ptbnfns @ Feb 14 2010, 17:20) *
б)добавив раздел в реестр. пример для giveio - делаем файл install.reg
Код
REGEDIT4

[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\giveio]
"Type"=dword:00000001
"Start"=dword:00000003
"ErrorControl"=dword:00000001
"Group"="Extended Base"

и тыкаем в него мышкой
оно - спросит добавить?
мы - ага !
перезагружаемся - готово

обратите внимание на параметр
"Start"=dword:00000003
может быть 2 или 3
2-запуск драйвера при старте системы
3-запуск "по требованию"
к сожалению не все умеют "потребовать" в частности dlportio.dll - не умеет. так, что для него - только "2"

odvport умеет правильно "требовать" так, что с ним драйвер займёт память только при первом обращении.

Ну так и добавьте такой reg-файл в свой архив! А то ведь забудется место на форуме, где вы это написали.
Go to the top of the page
 
+Quote Post
ptbnfns
сообщение Feb 14 2010, 19:31
Сообщение #222





Группа: Участник
Сообщений: 6
Регистрация: 14-02-10
Пользователь №: 55 471



Добавил работу через драйвер WinRing0.sys
+ куча драйверов в архиве вместе с библиотекой
Прикрепленные файлы
Прикрепленный файл  odvport.zip ( 162.38 килобайт ) Кол-во скачиваний: 372
 
Go to the top of the page
 
+Quote Post
ReAl
сообщение Feb 14 2010, 20:04
Сообщение #223


Нечётный пользователь.
******

Группа: Свой
Сообщений: 2 033
Регистрация: 26-05-05
Из: Бровари, Україна
Пользователь №: 5 417



Цитата(ptbnfns @ Feb 14 2010, 14:10) *
Достало twak.gif maniac.gif
"Так отож!"

Цитата(ptbnfns @ Feb 14 2010, 14:10) *
Единственное неудобство - необходимость переименовывать её в то имя которое данное приложение "знает".
Как вариант - предлагаю odvport.dll
Исходнит прилагается (GPL)
Насколько я понял комментарий у меня на сайте и тутошнее - достаточно переименовать её в dlportio.dll, поставить любой из перечисленных драйверов и avreal должен заработать, не заметив подмены.

Альтеровский драйвер, насколько я помню, позволяет пакетировать запросы, что несколько поднимет скорость, но
- вроде бы и так не слишком медленно
- LPT таки уходит и "тонкие оптимизации" как-то ни к чему. Всё равно по скорости проиграет FT2232 :-)

Поэтому Ваша DLL - это отличное универсальное решение.

Цитата
Единственное неудобство - необходимость переименовывать её в то имя которое данное приложение "знает".
Ну ради такого инструмента не грех и добавить загрузку библиотеки с её "родным" именем.

Присоединяюсь к Ксении - было бы удобно иметь reg-файлы для каждого поддерживаемого драйвера.


--------------------
Ну, я пошёл… Если что – звоните…
Go to the top of the page
 
+Quote Post
Xenia
сообщение Feb 14 2010, 21:48
Сообщение #224


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Код
:copy dlportio.dll %SystemRoot%\system32
copy dlportio.sys %SystemRoot%\system32\drivers
regedit.exe dlportio_reg.reg

А почему первая строка закомментарена? Разве dlportio.dll не нужна?
Go to the top of the page
 
+Quote Post
ptbnfns
сообщение Feb 17 2010, 20:39
Сообщение #225





Группа: Участник
Сообщений: 6
Регистрация: 14-02-10
Пользователь №: 55 471



Цитата
Насколько я понял комментарий у меня на сайте и тутошнее - достаточно переименовать её в dlportio.dll, поставить любой из перечисленных драйверов и avreal должен заработать, не заметив подмены.

Так точно!

Цитата
Альтеровский драйвер, насколько я помню, позволяет пакетировать запросы, что несколько поднимет скорость, но
- вроде бы и так не слишком медленно
- LPT таки уходит и "тонкие оптимизации" как-то ни к чему. Всё равно по скорости проиграет FT2232 :-)

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

Цитата
Присоединяюсь к Ксении - было бы удобно иметь reg-файлы для каждого поддерживаемого драйвера.

В архиве из поста №222 они есть.

Цитата
А почему первая строка закомментарена? Разве dlportio.dll не нужна?

Эта строка там только для напоминания. Реально он у меня всегда лежал в той же папке, где avreal ибо больше никто не пользуется.
Повторюсь - для моей DLL нужен только драйвер. (тот - который *.sys)
Go to the top of the page
 
+Quote Post

25 страниц V  « < 13 14 15 16 17 > » 
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 11th July 2025 - 07:38
Рейтинг@Mail.ru


Страница сгенерированна за 0.01463 секунд с 7
ELECTRONIX ©2004-2016