Kaskus

Tech

ghanxAvatar border
TS
ghanx
[ASK] Program data logger delphi7
Selamat siang Agans Master Delphi,

Agans mohon bimbingannya, ane baru belajar delphi7 tanpa basic programming. Ane udah cek gugel tp blm nemu, ane juga kagak punya temen yg bisa delphi.
Ceritanya ane mau bikin program data logger dengan beberapa sensor. Ane buat halaman setting sensor, isinya sensor 1-2-3-dst.
Cekbox "Aktifkan" untuk mengaktifkan setingan port-koreksi-konekan.
Cekbox "Read" untuk membaca data yang masuk dari sensor 1 jika di cek maka bisa baca jika uncek maka disable memo dan clear.
Tombol "Apply" untuk ketika dipencet maka bacaan yang dari sensor akan masuk ke tab "Display".

Yang sudah ane lakukan:
Ane udah bisa kirim-terima data untuk port sensor1.
Saat ane kirim data =>
Ketika cekbox read dicek maka memo1 akan memunculkan data yg dikirim.
Pada tab "Display" di box Edit sensor1 juga menerima bacaan data masuk.
Data yang masuk masih nyambung antara data 1 dan data ke n, tidak terpisah beda baris/enter.
Contoh:
data1data2data3
bukan:
data1
data2
data3
Ketika cekbox read di uncek maka memo1 akan clear bacaan dan disable.
Tapi ketika ane kirim data lagi ketika ter-uncek read di memo1 masih terbaca data masuknya.
Tombol Apply ane belum kasih program apapun.

Spoiler for Tampilan program:



Jadi ane inginnya bikin programnya kayak gini gans:
Saat serial port terkonek, data yang masuk tidak langsung terbaca ke memo1(di tab Sensor) dan box Edit sensor1(di tab Display),
tapi harus melalui proses cekbox read dan tombol Apply.
Saat cekbox read di cek maka memo1 akan tertampil bacaan data masuk(date,time,data), tapi box Edit sensor1 tidak boleh muncul karena harus melalui klik tombol Apply.
Saat cekbox read di uncek maka memo1 akan disable-berubah warna-tidak menampilkan bacaan data.
Saat cekbox read di uncek dan tombol Apply di klik maka bacaan data tidak akan muncul di memo1 dan hanya muncul di box Edit sensor1 dan muncul tanggal dan waktu di box edit tanggal-wakktu di tab Display.
Bacaan data baik yang muncul di memo1 ataupun box Edit sensor1 adalah data raw, jika box Edit Constant diisikan angka maka data raw yang masuk akan
terkoreksi dan yang muncul di  memo1 ataupun box Edit sensor1 data yang telah terkoreksi.
Sekalian tanya gan klo mengubah waktu yang ingin ditampilkan bagaimana caranya yah misal ane mau nampilin waktu lokal dan waktu UTC.

Program ane msih sederhana untuk terima data dan cekbox read.

procedure TForm1.CbRead1Click(Sender: TObject);
begin
if CbRead1.Checked = true then
  begin
    Memo1.Enabled:=true;
    Memo1.Color:=clWindow;
  end
else
if CBRead1.Checked = false then
  begin
    Memo1.Enabled:=false;
    Memo1.Color:=cl3DLight;
    Memo1.Clear;
  end
end;


procedure TForm1.Port1Sensor1RxChar(Sender: TObject; Count: Integer);
var datamasuk1:string;
begin
    Port1Sensor1.ReadStr(datamasuk1,count);
    Memo1.Text:=Memo1.Text+datamasuk1;
    Ed4Sensor1.Text:=Ed4Sensor1.Text+datamasuk1;
end;
nona212Avatar border
nona212 memberi reputasi
1
786
0
GuestAvatar border
Komentar yang asik ya
GuestAvatar border
Komentar yang asik ya
Komunitas Pilihan