Microsoft Foundation Classes (MFC), merupakan sebuah pustaka kelas (class library) dalam bahasa C++ yang dikembangkan oleh Microsoft Corporation. MFC menyediakan kerangka kerja dan kelas-kelas yang mempermudah dan mempercepat para pemrogram untuk membangun aplikasi Windows dengan menggunakan bahasa C++, baik itu menggunakan Microsoft Visual C++, Borland C++ Builder, dan kompiler lainnya. MFC mendukung ActiveX, dan dimasukkan ke dalam beberapa kompiler bahasa pemrograman C++, seperti Microsoft Visual C++, Borland C++, dan Symantec C++.
1. LUSIANA DIYAN NINGRUM
3 D4 TEKNIK KOMPUTER B
FIRJA HANIF MAULANA
2210181051
BAYU SANDI MARTA
PRAKTIKUM SISTEM PENGATURAN KOMPUTER
3 DESEMBER 2020
PRAKTIKUM INTERFACE MENGGUNAKAN
KOMUNIKASI SERIAL
2. BAB 1
DASAR TEORI
Microsoft Foundation Classes (MFC), merupakan sebuah
pustaka kelas (class library) dalam bahasa C++ yang dikembangkan oleh
Microsoft Corporation. MFC menyediakan kerangka kerja dan kelas -
kelas yang mempermudah dan mempercepat para pemrogram untuk
membangun aplikasi Windows dengan menggunakan bahasa C++, baik
itu menggunakan Microsoft Visual C++, Borland C++ Builder, dan
kompiler lainnya. MFC mendukung ActiveX, dan dimasukkan ke dalam
beberapa kompiler bahasa pemrograman C++, seperti Microsoft Visual
C++, Borland C++, dan Symantec C++.
Komunikasi serial adalah salah satu metode komunikasi data di
mana hanya satu bit data yang dikirimkan melalui seuntai kabel pada
suatu waktu tertentu. Pada dasarnya komunikasi serial adalah kasus
khusus komunikasi paralel dengan nilai n = 1, atau dengan kata lain
adalah suatu bentuk komunikasi paralel dengan jumlah kabel hanya satu
dan hanya mengirimkan satu bit data secara simultan. Hal ini dapat
disandingkan dengan komunikasi paralel yang sesungguhnya di mana n-
bit data dikirimkan bersamaan, dengan nilai umumnya 8 ≤ n ≤ 128. Untuk
komunikasi serial tersinkron, lebar pita setara dengan frekuensi jalur.
Pada 2omputer pribadi, komunikasi serial digunakan misalnya pada
standar komunikasi RS-232 yang menghubungkan 2omputer2l eksternal
seperti modem dengan 2omputer.
4. BAB 3
EXPERIMENTAL SETUP
1. Buat project MFC baru dengan nama Serial
2. Pada kotak dialog, tambahkan edit box dan button seperti pada tampilan di
bawah ini
3. Tambahkan ActiveX Control dengan cara klik kanan pada dialog > Insert
ActiveX Control > Microsoft Communication Control > OK
5. 4. Pada icon , klik kanan pilih Class Wizard, sampai muncul jendela
seperti di bawah ini :
5. Pada jendela MFC Class wizard, pilih Add Class > MFC Class From Typelib
6. Pilih Mcrosoft Comm Control 6.0<1.1> kemudian Add All classes dengan
menekan icon >> lalu klik button finish dan OK
7. Pada icon , klik kanan pilih Add Variable sehingga muncul jendela baru.
Beri nama m_comm pada box variable name lalu finish
6. 8. Pada kotak dialog, klik kanan > pilih Class Wizard kemudian atur sesuai
gambar berikut :
9. Pada icon klik kanan > pilih Add Event Handler kemudian pilih Add and
Finish
10. Pada OnCommMscomm1() tambahkan program berikut :
7. VARIANT in_dat;
m_comm.put_InputLen(1);
in_dat = m_comm.get_Input();
CString strInput(in_dat.bstrVal);
UpdateData(TRUE);
m_data = m_data + strInput;
UpdateData(FALSE);
11. Pada button Open Port tambahkan program berikut :
UpdateData(1);
m_comm.put_CommPort(m_port);
UpdateData(0);
m_comm.put_Settings(_T("9600,N,8,1"));
m_comm.put_InputMode(0);
m_comm.put_InputLen(1);
m_comm.put_RTSEnable(TRUE);
m_comm.put_RThreshold(1);
m_comm.put_PortOpen(TRUE);
12. Pada button Close Port tambahkan program berikut :
m_comm. put_PortOpen(FALSE);
13. Compile dan jalankan program
Mengirimkan Data
14. Tambahkan satu Button pada kotak dialog > beri nama Kirim
15. Pada button Kirim, tambahkan program berikut :
UpdateData(TRUE);
m_comm.put_Output(COleVariant(m_data));
UpdateData(FALSE);
16. Compile dan jalankan program
8. TUGAS
Setting perangkat minimum systemanda untuk mengirimkan string “123456”. Pada
software PC, buatlah program untuk parsing data hanya yang ke tiga (‘3’)!
9. BAB 4
HASIL PENGUJIAN
Menerima Data
Mengirim Data
TUGAS
void CSerialDlg::OnCommMscomm1()
{
// TODO: Add your message handler code here
VARIANT in_dat;
m_comm.put_InputLen(9);
in_dat = m_comm.get_Input();
CString strInput(in_dat.bstrVal);
UpdateData(TRUE);
m_data = m_data + strInput;
11. BAB 5
ANALISA DAN KESIMPULAN
ANALISA
Pada praktikum ini bertujuan untuk membuat GUI menggunakan MFC pada
visual studio untuk melakukan komunikasi serial. GUI yang dibuat ini berfungsi
sebagai media untuk melakukan komunikasi serial karena melakukan perintah
pengiriman dan penerimaan data melalui virtual serial port. Untuk media komunikasi
serial dilakukan secara virtual menggunakan virtual serial port dan software Real
Term pada laptop / PC.
Sebelum digunakan sebagai media simulasi, virtual serial port terlebih dahulu
diatur untuk port – port yang akan digunakan. Pada simulasi percobaan ini,
menggunakan 2 port untuk membantu proses komunikasi serial. Pada percobaan ini
saya menggunakan COM1 dan COM2 yang mana port 1 digunakan sebagai pengirim
data dari Real Term dan port 2 sebagai pengirim data dari GUI MFC di visual studio.
Agar port dapat melakukan komunikasi data serial maka terlebih dahulu
kedua port nya harus dibuka melalui Real Term dan GUI MFC yang telah dibuat di
visual studio. Pada proses membanguin GUI dengan MFC di visual studi, diperlukan
penambahan fungsi ActiveX Control untuk komunikasi serial yakni Microsoft
Communication Control versi 6 agar control ini memiliki tools pada dialog box
Serial.rc yang digunakan untuk mengontrol GUI dalam proses komunikasi data serial.
Setelah itu, fungsi tersebut diisi dengan program seperti di bawah ini agar dapat
memberikan control pada proses komunikasi serial nantinya.
Program di atas digunakan untuk menerima dan menampilkan data yang
dikirimkan melalui Real Term. Input dari proses ini diperoleh dari serial port dengan
perintah get_Input() yang kemudian dikonversi ke Cstring dan dimasukkan ke variabel
12. m_data setelah mendapatkan pembaruan pada datanya. Update data akan ditutup
apabila data sudah dimasukkan ke edit box untuk dikirmkan ke Real Term.
Untuk melakukan parsing data seperti yang diminta pada tugas, dapat
dilakukan dengan memberikan perintah tambahan pada fungsi OnCommMscomm1()
dengan menambahkan perintah m_data.GetAt(letak_data) untuk menampilkan data
urutan sesuai dengan yang diminta. Sebagai contoh pada tugas diminta untuk
melakukan parsing data urutan ketiga saja sehingga perintah dapat dituliskan seperti
berikut, m_data.GetAt(2).
KESIMPULAN
Berdasarkan analisa dan hasil praktikum yang telah dilakukan dapat ditarik
kesimpulan bahwa untuk membangun GUI dengan MFC dapat dilakukan
menggunakan visual studio (versi yang direkomendasikan 2017 ke bawah) dengan
menambahkan ActiveX Control dengan library Microsoft Communicationn Control
version 6 agar program dapat melakukan komunikasi serial melalui GUI MFC. Untuk
visual studio versi di atas 2017, penambahan Class from Typelib yang terdapat pada
Wizard hanya bisa dilakukan secara manual karena pada versi di atas 2017 fungsi
tersebut telah dihilangkan.