Arsip: TComport (Data Serial Ada New Line)

more 8 years ago
exeption_e77or
Hloo
Saya punya problem dengan Comport?
Untuk Mengirim atau pun menerima data dari serial berhasil
tapi masalahnya setiap kali saya terima data serial dan menampilkan
data tersebut ke Memo atau RichEdit pasti ada "New Line"
Contohnya gini dari Mikrokontroller saya kirim :
Dari Sumber Mikro = 43
setelah di terima dan ditampilkan di Memo Atau RichEdit hasilnya seperti ini.
Memo1
4
3
4
3
saya sudah coba menggunkan Hyperterimnal dan hasilnya sama dengan sumber 43;
dan saya dapat solusi dari kode programnya seperti ini:
saya menggunakan C++
AnsiString DataSer
ComPort1->ReadStr(DataSer,Count);
RichEdit2->Text = RichEdit2->Text+DataSer;
ada yang tau ga gimana cara menampung Data serial yang Didalam RichEdit2 ?
soalnya ketika saya mengambil data Referens dari variable DataSer pasti hasilnya ada NewLine lagi..
Tolong Pencerahanya :)
Salam
exeption_e77or :D
more 8 years ago
denmasdanang
coba kesini mas :
http://pascal-id.org/dpr/Forum/viewtopic/7869/subject/help.....-USB-to-SERIAL-mengunakan-ic-FT232-BL-/highlight/comport

more 8 years ago
exeption_e77or
@denmasdanang: coba kesini mas : http://pascal-id.org/dpr/Forum/viewtopic/7869/subject/help.....-USB-to-SERIAL-mengunakan-ic-FT232-BL-/highlight/comportThanks denmasdanang tapi mas saya mau nanya, apa iya data yang kita terima dari serial Comm port itu benar2 ada jedah baris? Thanks in advance adhy

more 8 years ago
exeption_e77or
Oh iya ini simple scripts sya dari Mikro yang hanya mengirim data 43
[code:1:9b00eeb754]
//pengiriman data serial
#include<reg52.h>
#include<stdio.h>
#include<stdlib.h>
void tunda_ms(unsigned int wkt)
{
unsigned int i,r;
for(i=0;i<wkt;i++)
{
for(r=0;r<100;r++);
}
}
void init_intser()
{
EA=1;
ES=1;
PS=1;//perioritas tinggi
}
void Init_SerialT2()
{
//timer 2 Osilator 12 MHz
TCLK = RCLK = 1;
SM0 = 0;
SM1 = 1;
TH2 = 0x5;
TL2 = 0x124;
RCAP2H = 0xff;
RCAP2L = 0xec; //baut rate 19200
SCON = 0x50; // enable serial com mode1 = 8 bit UART
T2CON = 0x34; // timer2 as baud rate generator
REN = 1;
C_T2 = 0;
TR2 = 1;
}
void KirimChar (unsigned char datanya)
{
ES =0;
SBUF =datanya;
while(!TI)
{;}
TI =0;
ES =1;
}
void KirimTeks (unsigned char *teks)
{
char i =0;
while (teks[i] !=0)
{
KirimChar(teks[i]);
i++;
tunda_ms(10);
}
}
void main()
{
init_intser();
Init_SerialT2();
while(1)
{
KirimTeks("43"); //<< data yang dikirim bernilai 43
//KirimChar(234);
tunda_ms(1000);//<< kira2 1 detik
}
}
[/code:1:9b00eeb754]
dengan scripts diatas diterima oleh Com port
dengan kode berikut.
AnsiString DataSer
ComPort1->ReadStr(DataSer,Count);
RichEdit2->Text = RichEdit2->Text+DataSer;
tapi setelah saya mengambil nilai dari DataSer dan ditampilkan di TCart
nilai yang diberikan tidak menunjukan angka 43 tapi 4?
3-nya kemna? :)
[code:1:9b00eeb754]
AnsiString DataSer
ComPort1->ReadStr(DataSer,Count);
//RichEdit2->Text = RichEdit2->Text+DataSer;
unsigned int ch = 0 ;
if (!DataSer.IsEmpty())
{
Shape3->Brush->Color = clRed;
Series1->Add(StrToInt(DataSer),ch,clRed);
ch++;
}
[/code:1:9b00eeb754]
[/code]
more 8 years ago
mas_kofa
coba, data yg kamu kirim dari mikrokontroller akhiri dengan delimiter....sehingga mudah dalam memparsing output nya oleh TComport (berdasarkan delimiter)....

more 8 years ago
exeption_e77or
@mas_kofa: coba, data yg kamu kirim dari mikrokontroller akhiri dengan delimiter....sehingga mudah dalam memparsing output nya oleh TComport (berdasarkan delimiter)....Maaf saya kurang ngerti Dengan Delimiter? yang saya tangkap berarti diberi pembatas yang diakhiri dengan backslash? apa seperti ini Mas
void main()
{
init_intser();
Init_SerialT2();
while(1)
{
KirimTeks("[b]43\n[/b]"); //<< data yang dikirim bernilai 43
//KirimChar(234);
tunda_ms(1000);//<< kira2 1 detik
}
}

more 8 years ago
exeption_e77or
@exeption_e77or:@mas_kofa: coba, data yg kamu kirim dari mikrokontroller akhiri dengan delimiter....sehingga mudah dalam memparsing output nya oleh TComport (berdasarkan delimiter)....Maaf saya kurang ngerti Dengan Delimiter? yang saya tangkap berarti diberi pembatas yang diakhiri dengan backslash? apa seperti ini Masvoid main() { init_intser(); Init_SerialT2(); while(1) { KirimTeks("43\n"); //<< data yang dikirim bernilai 43 //KirimChar(234); tunda_ms(1000);//<< kira2 1 detik } }

more 8 years ago
mas_kofa
delimiter nya berupa apa pun terserah.....mo backslash atau semicolon...terserah...

more 8 years ago
exeption_e77or
@mas_kofa: delimiter nya berupa apa pun terserah.....mo backslash atau semicolon...terserah...oh iya saya sudah... buat delimiter-nya dan hasilnya juga sama mas penggalan codenya seperti ini
void main()
{
init_intser();
Init_SerialT2();
while(1)
{
KirimTeks("43\n"); //<< data yang dikirim bernilai 43
//KirimChar(234);
tunda_ms(1000);//<< kira2 1 detik
}
}
tapi hasilnya juga sama..
[/code]
more 8 years ago
denmasdanang
@exeption_e77or: [quote:f5a9528f02="denmasdanang"]coba kesini mas : http://pascal-id.org/dpr/Forum/viewtopic/7869/subject/help.....-USB-to-SERIAL-mengunakan-ic-FT232-BL-/highlight/comport[/quote:f5a9528f02] Thanks denmasdanang tapi mas saya mau nanya, apa iya data yang kita terima dari serial Comm port itu benar2 ada jedah baris? Thanks in advance adhy:mas adhy jeda baris? tergantung pengiriman dari mikrocontroller, dari code masnya ini
void KirimChar (unsigned char datanya)
{
ES =0;
SBUF =datanya;
while(!TI)
{;}
TI =0;
ES =1;
}
void KirimTeks (unsigned char *teks)
{
char i =0;
while (teks[i] !=0)
{
KirimChar(teks[i]);
i++;
tunda_ms(10);
}
}
menunjukkan data dikirim per karakter, dan memang benar harus ada karakter sufiks/akhiran yang menandai satu paket data terkirim lengkap
kemudian di coding mas nya :
AnsiString DataSer
ComPort1->ReadStr(DataSer,Count);
RichEdit2->Text = RichEdit2->Text+DataSer;
juga harus ditambah condition dimana bila data yang diterima berupa karakter akhiran maka RichEdit2 baru menampilkan data.
thxmore ...
- Pages:
- 1
- 2
reply |
Report Obsolete
Last Articles
- Project Group dalam Lazarus
- FastPlaz Database Explorer
- Release: FastPlaz Super Mom v0.12.22
- PascalClass #3: Web Development with Free Pascal
- Makna Pascal di Pascal Indonesia
- Kulgram : Instalasi Lazarus di Perangkat Berbasis ARM
- PascalClass #1: Analisa Database dan Machine Learning
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
- Mengenal OXYGENE – Pascal For .NET
- PascalTalk #5: UX: Research, Design and Engineer
Last Topic
- PascalTalk #6: (Podcast) Kuliah IT di luar negeri, susah gak sih?
by LuriDarmawan in Tutorial & Community Project more 3 months ago - PascalTalk #5: UX: Research, Design and Engineer
by LuriDarmawan in Tutorial & Community Project more 3 months ago - PascalTalk #4: Obrolan Ringan Seputar IT
by LuriDarmawan in Tutorial & Community Project more 4 months ago - PascalTalk #2: Membuat Sendiri SMART HOME
by LuriDarmawan in Tutorial & Community Project more 4 months ago - PascalTalk #3: RADically Fast and Easy Mobile Apps Development with Delphi
by LuriDarmawan in Tutorial & Community Project more 4 months ago - PascalTalk #1: Pemanfaatan Artificial Intelligence di Masa Covid-19
by LuriDarmawan in Tutorial & Community Project more 4 months ago - Tempat Latihan Posting
by LuriDarmawan in OOT more 1 years ago - Archive
- Looping lagi...
by idhiel in Hal umum tentang Pascal Indonesia more 8 years ago - [ask] koneksi ke ODBC user Dsn saat runtime dengan ado
by halimanh in FireBird more 8 years ago - Validasi menggunakan data tanggal
by mas_kofa in Hal umum tentang Pascal Indonesia more 8 years ago
Random Topic
- Insert Data ke MySQL
by coacoac in Tip n Trik Pemrograman more 13 years ago - Sama kah Delphi dengan Delphi.Net?
by ivan in Hal umum tentang Pascal Indonesia more 14 years ago - Cara Edit,Hapus,Tampilkan Data berfoto???
by camp_sire in Tip n Trik Pemrograman more 13 years ago - gabungin 2 komponen
by esafm in Tip n Trik Pemrograman more 13 years ago - metodi TOPSIS di delphi
by randy_uchiha in Lain-lain more 9 years ago - ngambil image otomatis dari camera digital
by dinox in Multimedia & Graphic Enhancement more 13 years ago - Mengubah SourceCode Delphi menjadi Rumus Biasa
by gormet in Enginering more 13 years ago - help error... lagi
by putukaca in Hal umum tentang Pascal Indonesia more 14 years ago - Cara menambahkan komponent edit
by de27de in Hal umum tentang Pascal Indonesia more 11 years ago - open dialog
by vera in Tip n Trik Pemrograman more 12 years ago