Anda di halaman 1dari 8

LAPORAN WORKSHOP SISTEM ANTARMUKA

Novanna Rahma Zani – 1103181047


PRAKTIKUM 10
Judul : Lab10 – Sending a text file
Tanggal : 26 Mei 2020

TUJUAN
Mahasiswa dapat melakukan pembacaan data pada file text.

PENDAHULUAN
Sebuah file pada sistem komputer merupakan serangkaian byte satu demi satu. Secara
umum, setiap file dapat disebut sebagai binary file, tetapi jika data di dalamnya hanya berisi teks
(huruf, angka, dan simbol lain yang sering dipakai dalam tulisan, dan jika terdiri dari baris, maka
dapat dianggap sebagai file teks. Pada praktikum ini, anda akan mencoba membaca isi dari file
teks dan mengirimnya melalui saluran komunikasi serial PC anda untuk diterima oleh perangkat
lain. Untuk kasus ini, perangkat lain digantikan oleh aplikasi penerima lain seperti YAT.

PERALATAN
1. Satu unit komputer dengan Visual Studio 2012 dan aplikasi com0com
2. Aplikasi penerima

PROSEDUR
1. Menjalankan Visual Studio 2012 lalu memilih menu File → New → Project. Membuat
project baru menggunakan Windows Form App. Mengatur nama dan lokasi.
2. Dengan menggunakan Toolbox, tambahkan groupBox textBox, label, comboBox,
statusStrip, serialPort, openFileDialog, listBox, dan button seperti pada Gambar 1.

Gambar 1. Tampilan form


Novanna Rahma Zani - 1103181047

3. Menambahkan namespace berikut pada program.


using System.IO;

4. Klik ganda pada form dan ketikkan kode program berikut.


private void Form1_Load(object sender, EventArgs e)
{
String[] portList = System.IO.Ports.SerialPort.GetPortNames();
foreach (String portName in portList)
comboBox1.Items.Add(portName);
}

5. Klik ganda pada button “Connect” dan ketikkan kode program berikut.
private void button1_Click(object sender, EventArgs e)
{
try
{
serialPort1.PortName = comboBox1.Text;
serialPort1.BaudRate = Int32.Parse(comboBox2.Text);
serialPort1.NewLine = "\r\n";
serialPort1.Open();
toolStripStatusLabel1.Text = serialPort1.PortName + " is connected.";
}
catch (Exception ex)
{
toolStripStatusLabel1.Text = "ERROR: " + ex.Message.ToString();
}
}

6. Klik ganda pada button “Close” dan ketikkan kode program berikut.
private void button2_Click(object sender, EventArgs e)
{
serialPort1.Close();
toolStripStatusLabel1.Text = serialPort1.PortName + " is closed.";
}

7. Klik ganda pada button “Pilih file” dan ketikkan kode program berikut.
private void button3_Click(object sender, EventArgs e)
{
Novanna Rahma Zani - 1103181047

if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
pilihFile = openFileDialog1.FileName;
label4.Text = pilihFile;
}
}

8. Tambahkan variable berikut pada program agar dapat diakses di dalam class.
private string pilihFile = "";

9. Klik ganda pada button “Kirim” dan ketikkan kode program berikut.
private void button4_Click(object sender, EventArgs e)
{
string baris;
int counter = 0;
listBox1.Items.Clear();
TextReader txt = new StreamReader(pilihFile);
while ((baris = txt.ReadLine()) != null)
{
listBox1.Items.Add(baris);
counter++;
serialPort1.WriteLine(baris);
}
toolStripStatusLabel1.Text = "Sending " + counter.ToString() + "-
line(s)";
txt.Close();
}

10. Siapkan aplikasi com0com.

11. Jalankan aplikasi penerima, anda dapat menggunakan YAT, kemudian buka koneksi
serial.

12. Jalankan aplikasi yang telah anda buat dengan memilih menu Debug → Start Debugging.
Pilih port serial yang berpasangan dengan YAT dan buka komunikasi serial dengan menekan
tombol “Connect”. Pilih salah satu file teks di komputer anda dengan menekan tombol “Pilih
Novanna Rahma Zani - 1103181047

file”. Kemudian tekan tombol “Kirim”. Perhatikan bahwa isi file teks yang anda pilih telah
terkirim ke aplikasi penerima.

Gambar 2. Contoh aksi


DATA PERCOBAAN
Hasil percobaan prosedur :
1. Membuat Tampilan Form

Gambar 2. Tampilan Form


Novanna Rahma Zani - 1103181047

Gambar 3. Hasil percobaan program


2. Program lengkap :
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
Novanna Rahma Zani - 1103181047

using System.Text;
using System.Windows.Forms;
using System.IO; //untuk mekanisme input output

namespace Lab10
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
//identifikasi baudrate
comboBox2.Items.Add("9600");
comboBox2.Items.Add("14400");
comboBox2.Items.Add("19200");
comboBox2.Items.Add("38400");
comboBox2.Items.Add("56000");
comboBox2.Items.Add("57600");
comboBox2.Items.Add("76800");
comboBox2.Items.Add("115200");

private void Form1_Load(object sender, EventArgs e)


{
//identifikasi port pada form
String[] portList = System.IO.Ports.SerialPort.GetPortNames();
foreach (String portName in portList)
comboBox1.Items.Add(portName);
}

private void button1_Click(object sender, EventArgs e)


{
//button connect
button1.Text = "Connect";
if (serialPort1.IsOpen == true)
{
serialPort1.Close();
toolStripLabel1.Text = serialPort1.PortName + " is closed.";
button1.Text = "Connect";
}
else
{
serialPort1.PortName = comboBox1.Text;
serialPort1.BaudRate = Int32.Parse(comboBox2.Text);
serialPort1.NewLine = "\r\n";
serialPort1.Open();
toolStripLabel1.Text = serialPort1.PortName + " is connected.";
Novanna Rahma Zani - 1103181047

button1.Text = "Disconnect";
}
}

private void button2_Click(object sender, EventArgs e)


{
//button close
this.Close();
}

private void Form1_FormClosing(object sender, FormClosingEventArgs e)


{
//konfirmasi saat user mengakhiri aplikasi atau close app
DialogResult confirm = MessageBox.Show("Are you sure to close the app?",
"Close Application", MessageBoxButtons.YesNo);
if (confirm == DialogResult.No) e.Cancel = true;
}

private string pilihFile = ""; //variable class

private void button3_Click(object sender, EventArgs e)


{
//button choose file
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
pilihFile = openFileDialog1.FileName;
label1.Text = ChooseFile;
}
}

private void button4_Click(object sender, EventArgs e)


{
string baris;
int counter = 0;
listBox1.Items.Clear();
TextReader txt = new StreamReader(pilihFile);
while ((baris = txt.ReadLine()) != null)
{
listBox1.Items.Add(baris);
counter++;
serialPort1.WriteLine(baris);
}
toolStripLabel1.Text = "Sending " + counter.ToString() + "-line(s)";
txt.Close();
}
}
}
Novanna Rahma Zani - 1103181047

TUGAS
Cobalah untuk menampilkan informasi lain seperti ukuran file atau jumlah huruf yang terkirim.
Jawab :

Anda mungkin juga menyukai