Arsip: Interface dg port parallel 2

more 15 years ago
coacoac
seperti yg saya tanyakan pada post yang lalu "Interface dg port parallel"..listing program yang saya buat kayak gini, tapi tidak dapat menjalankan output ..ada yang tau dimana ya kesalahannya??? plizzz halp me !
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SmallPort, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
SmallPort1: TSmallPort;
ButtonBuka: TButton;
ButtonTutup: TButton;
procedure strobe;
procedure ButtonBukaClick(Sender: TObject);
procedure ButtonTutupClick(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
tampung: byte;
const
LPT_Data= $378;
LPT_Status= $379;
LPT_Kontrol= $37A;
implementation
{$R *.dfm}
procedure delay(lama:LongInt);
var
ref : LongInt;
begin
ref:=gettickcount;
repeat
Application.ProcessMessages;
until ((gettickcount - ref) >= lama)
end;
procedure TForm1.strobe;
begin
tampung:=SmallPort1.ReadByte(LPT_Kontrol);
tampung:=tampung and $FE;
SmallPort1.WriteByte(LPT_Kontrol,tampung);
end;
procedure TForm1.ButtonBukaClick(Sender: TObject);
begin
strobe;
if (tampung= $6F) then //tombol 1
begin
SmallPort1.WriteByte(LPT_Data, $01);
delay(100);
end
else
if (tampung= $5F) then //tombol 2
begin
SmallPort1.WriteByte(LPT_Data, $02);
delay(100);
end
else
begin
SmallPort1.WriteByte(LPT_Data, $00);
delay(100);
end;
end;
procedure TForm1.ButtonTutupClick(Sender: TObject);
begin
strobe;
if (tampung= $3F) then //tombol 3
begin
SmallPort1.WriteByte(LPT_Data, $04);
delay(100);
end
else
if (tampung= $FF) then //tombol 4
begin
SmallPort1.WriteByte(LPT_Data, $08);
delay(100);
end
else
begin
SmallPort1.WriteByte(LPT_Data, $0F);
delay(100);
end;
end;
end.

more 15 years ago
coacoac
pesan erornya tdk ada..tetapi pada saat keadaan ini terpenuhi
if (tampung= $6F) then //tombol 1
dia tidak mau menjalankan peintah ini...
SmallPort1.WriteByte(LPT_Data, $01);
jadi pada saat tombol button saya klik maka perintah ini yan jalan
else
begin
SmallPort1.WriteByte(LPT_Data, $00);
delay(100);
end;
tetapi jika 'tampung' terpenuhi dia tidak mau menjalankan perintah yang dibawahnya..
more 15 years ago
ImanD
klo dilihat dari pernyataan @coacoac saat tombol 1 ditekan justru nilai tampung bukan $6F jadinya dia loncat ke ELSE, coba sebelumnya di trace dulu az variable tampung masukan ke Add Watch klo ngga di showmessage az.

more 15 years ago
coacoac
sudah ketemu masalahnya...makasih ya atas masukannya ternyata ada yang harus ditambah
procedure TForm1.ButtonBukaClick(Sender: TObject);
begin
tampung:=SmallPort1.ReadByte(LPT_Status); //tambahan
strobe;
if (tampung= $6F) then //tombol 1
begin
SmallPort1.WriteByte(LPT_Data, $01);
delay(100);
end
else
if (tampung= $5F) then //tombol 2
begin
SmallPort1.WriteByte(LPT_Data, $02);
delay(100);
end
else
begin
SmallPort1.WriteByte(LPT_Data, $00);
delay(100);
end;
end;
procedure TForm1.ButtonTutupClick(Sender: TObject);
begin
tampung:=SmallPort1.ReadByte(LPT_Status); /tambahan
strobe;
if (tampung= $3F) then //tombol 3
begin
SmallPort1.WriteByte(LPT_Data, $04);
delay(100);
end
else
if (tampung= $FF) then //tombol 4
begin
SmallPort1.WriteByte(LPT_Data, $08);
delay(100);
end
else
begin
SmallPort1.WriteByte(LPT_Data, $0F);
delay(100);
end;
end;
end.
more ...
- Pages:
- 1
reply |
Report Obsolete
Last Articles
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 2 years ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 2 years ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 3 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 10 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 10 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 10 years ago
Random Topic
- [tips] Perintah SQL -> LIMIT untuk MS SQL.
by cyber_hecker in MsSQL more 15 years ago - Convert String
by syntax_error in Tip n Trik Pemrograman more 15 years ago - Sinkronisasi Database
by delphi1st in Tip n Trik Pemrograman more 16 years ago - Mendapatkan Nilai CPUID?
by agustik in Tip n Trik Pemrograman more 15 years ago - FIFO
by ags606 in Hal umum tentang Pascal Indonesia more 16 years ago - trouble network database
by ImanD in MySQL more 14 years ago - enkripsi
by strike_set in Tip n Trik Pemrograman more 15 years ago - mhn bantuan bisa akses kode ascii untuk "CTRL & ALT
by ard33 in Enginering more 15 years ago - Kritik buat artikel...........
by EkoIndri in Kritik & Saran more 17 years ago - transfer file antar server
by mas_kofa in Bedah Kasus more 14 years ago