Показать сообщение отдельно
  #13  
Старый 19.12.2009, 15:08
Аватар для s0Creator
s0Creator s0Creator вне форума
Местный
 
Регистрация: 20.02.2008
Адрес: Московская область
Сообщения: 420
Репутация: 884
По умолчанию

Полистал ТО.
Откуда Вы взяли $307 ?
Или я не то руководство скачал, или читайте первую часть.
Там сказано:
Цитата:
1. Включить аналоговое питание. Сделать задержку 100-200 мс.
2. Включить режим записи.
3. Установить номер программируемого канала (номер бан-
ка) и число точек в периоде.
4. Произвести запись информации в банк данных путем
последовательной записи 16-ти разрядных данных.
5. Если необходимо использовать другие каналы (банки
данных), повторить П.3 и П.4
6. Установить номер программируемого канала нулевым (если
режим чтения должен начаться с нулевого канала) или дру-
гим, если этот канал должен обновлятся первым - сделать
программирование номера канала необходимо для сброса
счетчика адреса ОЗУ).
8. Включить режим чтения ОЗУ.
И приведен пример на турбопаскале для ISO

Т.е. делается примерно так:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
  i: Integer;
begin
  // очищаем
  ibcClearControllerList();
  ibcClearInterfaceList();

  OpenInterf := ibcOpenInterface(0, 115200, 0); // открываем интерфейс
  memo1.Lines.Add('OpenInterf := ' + IntToStr(OpenInterf)); // проверим подключение

  OpenContr := ibcOpenController(OpenInterf, $1, $300, $30F); // открчваем контроллер
  memo1.Lines.Add('OpenContr := ' + IntToStr(OpenContr)); // проверим подключение

  ibcControl(true); // включаем шину

  sleep(200); // задержка

  Vkluc := ibcWritePort($301, $01); // подаем питание и включаем запись

  sleep(200); // задержка

  Vkluc := ibcWritePort($303, $10); //  выбираем адр. канала и кол-во точек в периоде

  Vkluc := ibcWritePortW($304, $0000); // запись в ОЗУ
  Vkluc := ibcWritePortW($304, $1000); // запись в ОЗУ
  Vkluc := ibcWritePortW($304, $2000); // запись в ОЗУ
  Vkluc := ibcWritePortW($304, $3000); // запись в ОЗУ
  Vkluc := ibcWritePortW($304, $4000); // запись в ОЗУ
  Vkluc := ibcWritePortW($304, $5000); // запись в ОЗУ

  Vkluc := ibcWritePort($301, $01); // включаем запись
  Vkluc := ibcWritePort($303, $10); //  выбираем адр. канала и кол-во точек в периоде
  Vkluc := ibcWritePort($301, $03); // включаем чтение

  // отключаем шину
  ibcControl(false); // это не обязательно сдесь
end;
После каждой строчки можете написать лог
типа
Код:
if Vkluc then
  memo1.Lines.Add('...')
 else
  memo1.Lines.Add('...');
Сообщите что из этого получилось - мне проверить негде
Ответить с цитированием