Форум: Техническая поддержка

Тема: Win31(Lcard_ad) -> Win98(Lcard_32)

Вы не вошли.

 Поиск | Регистрация | Вход 

Пешков А.Т.
15.11.2001 13:24:40
#1

Гость

Win31(Lcard_ad) -> Win98(Lcard_32)

Имеется ситуация:
1. установлено две карты L-264;
2. была написана программа на Delphi1 под Win31 с
   использованием библиотеки Lcard_ad.dll; 
   программа нормально работает.
   (использована команда KADR из lcard_ad.dll)
3. та же программа была перекомпиллирована в
   Delphi5 под Win98SE с использованием
   Lcard_32.dll;
   в результате при вводе данных с АЦП
   (значения напряжений 0-5V) выдается хаотичный
   набор чисел, причем такое напряжение в
   принципе не может быть измеренно (0-~3000 kV)
   (при этом старая версия программы продолжает 
   нормально работать).
Как это понимать ??
Буду благодарен за любую помощь.

15.11.2001 14:10:29
#2

Сотрудник "Л Кард"
Откуда: Москва
Здесь с 23.04.2014
Сообщений: 3,727

Re: Win31(Lcard_ad) -> Win98(Lcard_32)

Я думаю у Вас что-то с приведением типов данных
16 бит- 32 бит, знаковое- беззнаковое.

Пешков А.Т.
15.11.2001 14:31:59
#3

Гость

Re: Win31(Lcard_ad) -> Win98(Lcard_32)

Что Вы имеете в виду?
Кусок кода отвечающий за считывание данных:
...
d01:array[0..9]  of integer;
d1 :array[1..10] of real;
...
for j:=0 to 9 do c[j]:=CREATE_CHANNEL(j,0,1);
KADR(d01,c,10);
for j:=1 to 10 do d1[j]:=d01[j-1]/2047*10.24;
...

Vladimir
15.11.2001 16:19:16
#4

Гость

Re: Win31(Lcard_ad) -> Win98(Lcard_32)

Попробуй
d01:array[0..9] of SmallInt;
d1 :array[1..10] of double;

Пешков А.Т.
15.11.2001 17:06:15
#5

Гость

Re: Win31(Lcard_ad) -> Win98(Lcard_32)

Vladimir,
благодарю
это и в самом деле помогло.

Контакты

Адрес: 117105, Москва, Варшавское шоссе, д. 5, корп. 4, стр. 2

Многоканальный телефон:
+7 (495) 785-95-25
Факс: +7 (495) 785-95-14

Отдел продаж: sale@lcard.ru
Техническая поддержка: support@lcard.ru

Время работы: с 9-00 до 19-00 мск