Upload
diah-retno-wulandari
View
659
Download
7
Embed Size (px)
Citation preview
Triwiyanto-Praktikum Port Serial RS232 1
BUKU PANDUAN PRAKTIKUM
MIKROKOMPUTER
( INTERFACING DENGAN PORT PARALLEL DAN SERIAL )
Laboratorium Mikrokontroller Oleh: Triwiyanto
JURUSAN TEKNIK ELEKTROMEDIK POLTEKKES DEPKES SURABAYA
2009
Triwiyanto-Praktikum Port Serial RS232 2
PERCOBAAN 1 PORT PARALLEL DATA
TUJUAN:
1. Mahasiswa memahami komunikasi parallel untuk output data ke LED 2. Mahasiswa memahami pembuatan program komunikasi parallel dengan
menggunakan komponen io.dll, untuk menghidupkan dan mematikan LED. SKEMATIK
D4
D6D7
D3
J18
CON2
12
D2
D5
D1
VCC
U11
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
D0
R24R
J13
CON8
12345678
A<-B: SHORT
Gambar 1.1. Rangkaian Buffer Port Data
R6 R
D5
LED
D3
LED
D2
LED
D4
LED
D8
LED
R8 R
J1
CON8
12345678
D7
LED
R1 RD1
LED
D6
LED
R4 R
R2 R
R3 R
R5 R
R7 R
VCC
Triwiyanto-Praktikum Port Serial RS232 3
Gambar 1.2 Rangkaian Display LED
Perhatikan pada gambar 1.1 tersebut. Delapan buah LED terhubung ke port 0, yang difungsikan sebagai output. Pada konfigurasi tersebut LED akan nyala bila diberi logika
LOW ‘0’ melalui port 0, dan LED akan padam bila diberi logika HIGH ‘1’ melalui
port 0.
Percobaan 1.1. ON OFF 8 buah LED secara bersamaan Rencanakan program untuk menghidupkan dan mematikan LED 8 buah, dengan menekan
tombol ON dan OFF, pada komunikasi parallel. Lakukan percobaan sesuai dengan
langkah-langkah berikut ini:
1. Hubungkan kabel parallel pada port parallel komputer ke trainer.
2. Hubungkan kabel parallel dari I / O, ke rangkaian LED
3. Rencanakan program dengan tampilan sebagai berikut.
7. Listing program
implementation {$R *.dfm}
procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll'; procedure TForm1.Button1Click(Sender: TObject); begin portout($378,0); end; procedure TForm1.Button2Click(Sender: TObject); begin portout($378,255); end;
1.2. Percobaan On-Off 8 LED secara bergantian
Triwiyanto-Praktikum Port Serial RS232 4
Rencanakan program untuk menghidupkan dan mematikan LED 8 buah, dengan menekan
tombol ON dan OFF pada masing, -masing tombol untuk menghidupkan dan mematikan
LED. Lakukan percobaan sesuai dengan langkah-langkah berikut ini:
1. Hubungkan kabel parallel pada port parallel komputer ke trainer.
2. Hubungkan kabel parallel dari I / O, ke rangkaian LED
3. Rencanakan program dengan tampilan sebagai berikut.
Pada tampilan tersebut tampak delapan buah button yang digunakan, masing masing button
apabila ditekan, maka akan menghidupkan 1 buah LED, sesuai dengan urutan bit.
4. Ketik listing program sebagai berikut
implementation {$R *.dfm}
procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll'; procedure TForm1.Button1Click(Sender: TObject); begin portout($378,254); end; procedure TForm1.Button2Click(Sender: TObject); begin portout($378, 253); end; procedure TForm1.Button3Click(Sender: TObject); begin portout($378, 251); end; procedure TForm1.Button4Click(Sender: TObject); begin portout($378, 247); end; procedure TForm1.Button5Click(Sender: TObject);
Triwiyanto-Praktikum Port Serial RS232 5
begin portout($378, 239); end; procedure TForm1.Button6Click(Sender: TObject); begin portout($378, 223); end; procedure TForm1.Button7Click(Sender: TObject); begin portout($378, 191); end; procedure TForm1.Button8Click(Sender: TObject); begin portout($378,127); end;
1.3. Running 8 buah LED dengan komponen timer Rencanakan program untuk menghidupkan empat buah led, dengan indikator shape
sebanyak empat buah, apabila LED nyala maka akan diikuti oleh shape berwarna merah
yang menunjukkan sebagai indikator LED nyala. Program ini dapat dihentikan dan dimulai
dengan menekan tombol START dan STOP.
1. Hubungkan kabel parallel pada port parallel komputer ke trainer.
2. Hubungkan kabel parallel dari I / O, ke rangkaian LED
3. Rencanakan program dengan tampilan sebagai berikut.
4. Ketik listing program sebagai berikut, sebagai berikut:
Triwiyanto-Praktikum Port Serial RS232 6
procedure TForm1.Button1Click(Sender: TObject); begin timer1.Enabled:=true; end; procedure TForm1.Button2Click(Sender: TObject); begin timer1.Enabled:=false; timer2.Enabled:=false; timer3.Enabled:=false; timer4.Enabled:=false; end; procedure TForm1.Timer1Timer(Sender: TObject); begin timer1.Enabled:=false; portout($378,254); shape1.Brush.Color:=clred; shape2.Brush.Color:=clwhite; shape3.Brush.Color:=clwhite; shape4.Brush.Color:=clwhite; timer2.Enabled:=true; end; procedure TForm1.Timer2Timer(Sender: TObject); begin timer2.Enabled:=false; portout($378,253); shape1.Brush.Color:=clwhite; shape2.Brush.Color:=clred; shape3.Brush.Color:=clwhite; shape4.Brush.Color:=clwhite; timer3.Enabled:=true; end; procedure TForm1.Timer3Timer(Sender: TObject); begin timer3.Enabled:=false; portout($378,251); shape1.Brush.Color:=clwhite; shape2.Brush.Color:=clwhite; shape3.Brush.Color:=clred; shape4.Brush.Color:=clwhite; timer4.Enabled:=true; end; procedure TForm1.Timer4Timer(Sender: TObject); begin timer4.Enabled:=false;
Triwiyanto-Praktikum Port Serial RS232 7
portout($378,247); shape1.Brush.Color:=clwhite; shape2.Brush.Color:=clwhite; shape3.Brush.Color:=clwhite; shape4.Brush.Color:=clred; timer1.Enabled:=true; end;
1.4. Running LED dengan fungsi GetTickCount Rencanakan program untuk menghidupkan delapan buah led tanpa indikator shape nyala.
Program ini dapat dihentikan dan dimulai dengan menekan tombol START dan STOP.
1. Hubungkan kabel parallel pada port parallel komputer ke trainer.
2. Hubungkan kabel parallel dari I / O, ke rangkaian LED
3. Rencanakan program dengan tampilan sebagai berikut.
4. Ketik listing program sebagai berikut, sebagai berikut:
type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); procedure Delay(tunda:integer); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure Tform1.delay(tunda:integer); var waktu: integer; begin waktu := GetTickCount;
Triwiyanto-Praktikum Port Serial RS232 8
repeat Application.ProcessMessages; until ((GetTickCount-waktu) >= tunda) end; procedure TForm1.Button1Click(Sender: TObject); var data:byte; begin portout($378,254); delay(1000); ; portout($378,253); delay(1000); ; data:=255-4; portout($378,data); delay(1000); ; data:=255-8; portout($378,data); delay(1000); ; data:=255-16; portout($378,data); delay(1000); ; data:=255-32; portout($378,data); delay(1000); ; data:=255-64; portout($378,data); delay(1000); ; data:=255-128; portout($378,data); delay(1000); end;
Triwiyanto-Praktikum Port Serial RS232 9
PERCOBAAN II PORT CONTROL
TUJUAN:
1. Mahasiswa memahami komunikasi parallel untuk output data ke LED 2. Mahasiswa memahami pembuatan program komunikasi parallel dengan
menggunakan komponen io.dll, untuk menghidupkan dan mematikan LED. SKEMATIK
U12
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
C2
VCC
/C1/C0
/PC1
J17
CON4
1234
/C3
Gambar 2.1 Rangkaian Buffer Port Control
D7
LED
R22R
R20R
J7CON8
1 2 3 4 5 6 7 8
VCC
D3
LED
D10
LED
D9
LED
R16R
R21R
D4
LED
D8
LED
R17R
R18R
D5
LED
R15R
R19R
D6
LED
Gambar 2.2 Rangkaian Display LED
Perhatikan pada gambar 2.1 tersebut, merupakan buffer port control, hubungkan kabel parallel ke LED yang difungsikan sebagai output. Pada konfigurasi tersebut LED akan
nyala bila diberi logika LOW ‘0’ melalui port 0, dan LED akan padam bila diberi
logika HIGH ‘1’ melalui port 0.
” INGAT: sifat invert dari port C0, C1, dan C3”
Triwiyanto-Praktikum Port Serial RS232 10
Percobaan 2.1. On Off 4 buah LED melalui 2 tombol
Rencanakan program untuk menghidupkan dan mematikan LED 8 buah, dengan menekan
tombol ON dan OFF, pada komunikasi parallel. Lakukan percobaan sesuai dengan
langkah-langkah berikut ini:
1. Hubungkan kabel parallel pada port parallel komputer ke trainer.
2. Hubungkan kabel parallel dari I / O, ke rangkaian LED
3. Rencanakan program dengan tampilan sebagai berikut.
Percobaan 2.2 On Off 4 buah LED melalui 4 tombol
Rencanakan program untuk menghidupkan dan mematikan 4 buah LED yang terhubung ke
port control apabila masing-masing tombol ditekan. Lakukan percobaan sesuai dengan
langkah-langkah berikut ini:
1. Hubungkan kabel parallel pada port parallel komputer ke trainer.
2. Hubungkan kabel parallel dari I / O, ke rangkaian LED
3. Rencanakan program dengan tampilan sebagai berikut.
Triwiyanto-Praktikum Port Serial RS232 11
Percobaan 2.3. Sebuah LED yang berjalan
Rencanakan program untuk menjalankan sebuah LED yang terhubung ke port control, berjalan berputar dengan pengendalian malui button Start dan Stop dan waktu tunda yang dibangkitkan dari timer melalui properties interval yang dapat diatur melalui komponen scroll bar, seperti yang ditunjukkan pada gambar berikut
Percobaan 2.4. Dua buah LED yang berjalan
Rencanakan program untuk menjalankan dua buah LED yang bergeser ke kanan dan kekiri sesuai dengan tombol yang dipilih pada button, dengan waktu tunda yang tetap yang dibangkitkan melalui fungsi gettickcount, seperti yang ditunjukkan pada gambar berikut.
Triwiyanto-Praktikum Port Serial RS232 12
Percobaan 2.5. Running LED dengan Waktu Tunda dari Fungsi GetTickCount Rencanakan program untuk menjalankan sebuah LED pada port Kontrol dengan menggunakan Fungsi GetTickCount untuk membangkitkan waktu tunda. Dengan tampilan sebagai berikut.
Triwiyanto-Praktikum Port Serial RS232 13
PERCOBAAN 3
PORT STATUS TUJUAN:
1. Mahasiswa memahami komunikasi parallel untuk ambil data dari skalar 2. Mahasiswa memahami pembuatan program komunikasi parallel dengan
menggunakan komponen io.dll, untuk mengambil data dari saklar.
U12
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
C2
VCC
/C1
S5
/PC1
S6
J16
CON8
12345678
/C0
U13
74LS157
235611101413
115
4
7
9
12
1A1B2A2B3A3B4A4B
A/BG
1Y
2Y
3Y
4Y/S7
/PC1
J17
CON4
1234
/C3
S4
Gambar 2.1. Rangkaian Buffer dan Rangkaian Multiplexer 74LS157
SW40
21 3
SW70
21 3
SW30
21 3
VCC
SW60
21 3
SW20
21 3
J8CON81 2 3 4 5 6 7 8
SW50
21 3
SW80
21 3
SW10
21 3
Gambar 2.2. Rangkaian Saklar Togle
Triwiyanto-Praktikum Port Serial RS232 14
Percobaan 3.1. Pengambilan data saklar 8 bit (1) Rencanakan program untuk mengambil data saklar 8 bit melalui port status, empat bit, dan ditampilkan masing masing pada kolom edit, edit 1 menampung 4 low bit dan edit 2 menampung 4 high bit. Untuk ini diperlukan komponen multiplexer 74LS157 yang berfungsi untuk mensaklar data parallel input 4 bit, dari 1A-4A dan 1B-4B secara bergantian, dengan output pada 1Y s/d 4 Y, dengan menggunakan pin A/B untuk pengaturan data A atau B yang akan dikeluarkan pada Y. Pada gambar tersebut tampak, Port Status / S7, bersifat inverting. Pengendalian A/B dapat menggunakan Port control /C1.
procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll'; function PortIn(Port:Word):Byte; stdcall; external 'io.dll'; procedure TForm1.Timer1Timer(Sender: TObject); var …………. begin portout($37a,$2);{Logika ‘0’ pada C1 -> Selektor A/B=0 pada MUX } dataA:=(portin($379) xor $80) AND $F0; dataA:=dataA div 16; edit1.text:=inttostr(dataA); portout($37a,$0); {Logika ‘1’ pada C1 -> Selektor A/B=1 pada MUX } dataB:=(portin($379) xor $80) AND $F0; dataB:=dataB; edit1.text:=inttostr(dataB); end;
Catatan: PortIn($379) XOR $80, pada instruksi ini $80 merupakan bilangan heksa yang dapat dijabarkan sebagai berikut dalam bentuk biner,
HEX D7 D6 D5 D4 D3 D2 D1 D0 /S7 S6 S5 S4 X X X X
$80 1 0 0 0 0 0 0 0
Sehingga apabila instruksi tersebut dilakukan maka Bit /S7 yang bersifat inverting maka akan menjadi bersifat normal. dataA:=(portin($379) xor $80) AND $F0; pada instruksi tersebut hasil pengambilan data yang telah di XOR kan, di AND kan dengan $F0, agar data dari S0 s/d S3 tidak ikut terambil dengan memastikan berlogika 0, dengan jabaran sebagai berikut:
Triwiyanto-Praktikum Port Serial RS232 15
HEX D7 D6 D5 D4 D3 D2 D1 D0
/S7 S6 S5 S4 X X X X $80 1 1 1 1 0 0 0 0
Pada table tersebut tampak bahwa hanya bit S4 s/d S7 yang digunakan, sehingga di AND kan dengan ‘1’ dan yang lainnya di AND kan dengan ‘0’ Percobaan 3.2. Pengambilan data dari Saklar 8 bit (II)
Rencanakan program untuk mengambil data saklar 8 bit melalui port status, empat bit, dan ditampilkan pada kolom edit. Untuk ini diperlukan komponen multiplexer 74LS157 yang berfungsi untuk mensaklar data parallel input 4 bit, dari 1A-4A dan 1B-4B secara bergantian, dengan output pada 1Y s/d 4 Y, dengan menggunakan pin A/B untuk pengaturan data A atau B yang akan dikeluarkan pada Y. Pada gambar tersebut tampak, Port Status / S7, bersifat inverting. Pengendalian A/B dapat menggunakan Port control /C1.
procedure TForm1.Timer1Timer(Sender: TObject); var …………. begin …………………. {Instruksi ambil data Port} …………………. Data:=DataA+DataB; Edit1.text:=inttostr(data); end; { end procedure timer }
Percobaan 3.3 Pengaturan arah putaran Shape melalui Saklar toggle S1
Rencanakan program untuk mengatur arah putaran shape ke kanan atau ke kiri melalui pendeteksian posisi dari saklar toggle ( logika 0 dan 1 ), apabila saklar diposisikan logika ‘0’ maka shape akan bergerak ke kanan dan sebaliknya shape akan bergerak ke kiri. Data dari saklar diterima oleh port Status bit LSB
Triwiyanto-Praktikum Port Serial RS232 16
procedure TForm1.Timer1Timer(Sender: TObject); var …………. begin …………………. {Instruksi ambil data Port} …………………. Case data of 1: begin { Shape Putar Kanan } Timer6.enabled:=false; Timer7.enabled:=false; Timer8.enabled:=false; Timer9.enabled:=false; Timer2.enabled:=true; end 0: begin {Shape Putar Kiri } Timer2.enabled:=false; Timer3.enabled:=false; Timer4.enabled:=false; Timer5.enabled:=false; Timer6.enabled:=true; end end; end; { end procedure timer } …………………….
…………………….
…………………….
Percobaan 3.4. Indikator Saklar dengan Shape
Rencanakan program untuk mengambil data empat buah saklar bagian A dari multiplexer, dan tampilkan pada program Delphi dengan menggunakan shape, sehingga apabila saklar mendapat logika ‘1’ maka indicator shape akan menunjukkan warna merah, dan sebaliknya akan menunjukkan warna putih, sehingga kombinasi yang memungkinkan adalah sejumlah 16 kombinasi;
Triwiyanto-Praktikum Port Serial RS232 17
SW4 SW3 SW2 SW1 Shape 4 Shape 3 Shape 2 Shape 1
0 0 0 0 White White White White
0 0 0 1 White White White Red 0 0 1 0 White White Red White
0 0 1 1 White White Red Red
0 1 0 0 White Red White White
….. ……. ……… …….. ……….. …. ………. ………..
….. ……. ……… …….. ……….. …. ………. ………..
1 1 1 1 Red Red Red Red
procedure TForm1.Timer1Timer(Sender: TObject); var …………. begin …………………. {Instruksi ambil data Port} …………………. Case data of 0: begin { Saklar 0000 } Shape1.brus.color:=clWhite; Shape2.brus.color:=clWhite; Shape3.brus.color:=clWhite; Shape4.brus.color:=clWhite; end 1: begin { Saklar 0001 } Shape1.brus.color:=clWhite; Shape2.brus.color:=clWhite; Shape3.brus.color:=clWhite; Shape4.brus.color:=clred; End 2: …………………………. ………………………… 16: end; {end case data of} end; { end procedure timer }
Triwiyanto-Praktikum Port Serial RS232 18
PERCOBAAN 4
RANGKAIAN MOTOR DC
TUJUAN:
1. Mahasiswa memahami Rangkaian Motor DC 2. Mahasiswa memahami pembuatan program komunikasi parallel dengan
menggunakan komponen io.dll, untuk mengatur arah putaran motor DC. 3. Mahasiswa memahami bagaimana membuat program PWM untuk mengatur
kecepatan Putaran Motor DC. SKEMATIK
D15
1N4001
U14
L293
27
1015
19
361114
1A2A3A4A
1,2EN3,4EN
1Y2Y3Y4Y
D16
DIODE
D13
1N4001
A
-
+ MG1
MOTOR SERVO
12
VCCD14
1N4001
VCC
J20
CON3
123
L293 merupakan driver arus empat kanal yang cukup besar, yang dapat digunakan dalam mode dua arah, dengan arus maksimal per kanal adalah sebesar 1 A ( untuk tipe L293D), pada tegangan 4.5 volt sampai dengan 36 volt, 1,2EN digunakan untuk aktivasi kanal 1,2 dan 3,4 digunakan untuk aktivasi kanal 3,4. Input pada EN dapat berupa logika ‘0’ atau ‘1’, atau berupa pulsa PWM, untuk mengatur kecepatan putaran motor DC. Input 1A s/d 4A dapat digunakan untuk mengatur arah putaran motor DC, CW (clock wise ) atau CCW (counter clock wise ). Percobaan 4.1. Mengatur arah putaran motor DC Rencanakan pemrograman Delphi untuk mengatur arah putaran motor DC, CW atau CCW, dengan menggunakan port Data pada Bit D0, D1 dan D2, dengan tampilan sebagai berikut, sehingga apabila tombol tersebut ditekan maka akan mempengaruhi arah putaran motor DC.
Triwiyanto-Praktikum Port Serial RS232 19
D4
D6D7
D3
J18
CON2
12
D2
D5
D1
VCC
U11
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
D0
R24R
J13
CON8
12345678
A<-B: SHORT
procedure PortOut(Port : Word; Data : Byte); stdcall; external 'io.dll'; procedure TForm1.Button1Click(Sender: TObject); begin …………………. end; procedure TForm1.Button2Click(Sender: TObject); begin ……………………… end;
Triwiyanto-Praktikum Port Serial RS232 20
Percobaan 4.2. Mengatur kecepatan putaran motor dengan menggunakan PWM
Rencakan pemrograman Delphi untuk mengatur kecepatan putaran motor PWM, arah putaran motor diatur dengan menggunakan port Data D0 dan D1 yang dihubungkan pada 3A dan 4A, sedangkan untuk mengatur kecepatan motor menggunakan port Control C0, yang dihubungkan pada EN3,4. Pada percobaan ini pulsa PWM dapat dibangkitkan dengan menggunakan timer dengan variasi properties interval.
Percobaan 4.3. Mengatur arah putaran motor dengan menggunakan port Status
Rencanakan pemrograman Delphi untuk mengatur arah putaran motor dengan menggunakan salah satu bit status yang ada, anda tentukan sendiri bit mana yang anda gunakan, SW1 s/d SW8. Sehingga dengan merubah posisi satu saklar ke arah logika ‘1’ atau ‘0’ maka akan merubah arah putaran motor DC. Hubungkan pin driver L293 3A, 4A, dan EN pada port Control.
U12
74LS245
23456789
191
1817161514131211
A1A2A3A4A5A6A7A8
GDIR
B1B2B3B4B5B6B7B8
C2
VCC
/C1
S5
/PC1
S6
J16
CON8
12345678
/C0
U13
74LS157
235611101413
115
4
7
9
12
1A1B2A2B3A3B4A4B
A/BG
1Y
2Y
3Y
4Y/S7
/PC1
J17
CON4
1234
/C3
S4
Triwiyanto-Praktikum Port Serial RS232 21
Percobaan 5 ADC Port Data dan ADC
Percobaan 6 DAC Port Data dan DAC
PERCOBAAN 7 PORT SERIAL DAN OUTPUT LED
TUJUAN:
3. Mahasiswa memahami komunikasi serial untuk output data ke LED 4. Mahasiswa memahami pembuatan program komunikasi serial RS232 dengan
menggunakan komponen TComPort, untuk menghidupkan dan mematikan LED. SKEMATIK
Gambar 1.1 Rangkaian Display LED
R6 R
D5
LED
D3
LED
D2
LED
D4
LED
D8
LED
R8 R
J1
CON8
12345678
D7
LED
R1 RD1
LED
D6
LED
R4 R
R2 R
R3 R
R5 R
R7 R
VCC
Triwiyanto-Praktikum Port Serial RS232 22
Perhatikan pada gambar 1.1 tersebut. Delapan buah LED terhubung ke port 0, yang difungsikan sebagai output. Pada konfigurasi tersebut LED akan nyala bila diberi logika
LOW ‘0’ melalui port 0, dan LED akan padam bila diberi logika HIGH ‘1’ melalui
port 0.
Percobaan 1.1.
Rencanakan program untuk menghidupkan dan mematikan LED 8 buah, dengan menekan
tombol ON dan OFF, pada komunikasi serial port COM. Lakukan percobaan sesuai dengan
langkah-langkah berikut ini:
4. Hubungkan kabel serial pada port serial com komputer ke trainer.
5. Posisikan saklar ke arah serial to parallel.
6. Hubungkan kabel parallel dari I / O, ke rangkaian LED
7. Rencanakan program dengan tampilan sebagai berikut.
8. Atur properties Object Inspector, sebagai berikut:
Pada Object Inspector tersebut menjelaskan : 1. BaudRate = 2400 2. Connected = True 3. DataBits = 8 4. Port = COM1 5. StopBits = 1 Stop Bit
9. Tampilan akhir program
Triwiyanto-Praktikum Port Serial RS232 23
7. Listing program procedure TForm1.Button1Click(Sender: TObject); var data:byte; count:integer; begin data:=0; count:=1; comport1.write(data,count); end; procedure TForm1.Button2Click(Sender: TObject); var data:byte; count:integer; begin data:=255; count:=1; comport1.write(data,count); end; fungsi comport1.write(data,count) pada procedure Button1 tersebut, digunakan untuk
mengirimkan data pada port komunikasi serial RS232. Variabel data menyatakan nilai
decimal yang akan dikeluarakan pada port, variabel count menyatakan banyaknya data
yang akan dikeluarkan pada port.
1.2. Percobaan Koneksi pada Port Serial
Rencanakan program untuk menghidupkan dan mematikan LED 8 buah, dengan menekan
tombol ON dan OFF, pada komunikasi serial port COM. Koneksi komunikasi serial dapat
diatur dengan menggunakan dua buah button OPEN dan CLOSE CONNECTION. Lakukan
percobaan sesuai dengan langkah-langkah berikut ini:
5. Hubungkan kabel serial pada port serial com komputer ke trainer.
Triwiyanto-Praktikum Port Serial RS232 24
6. Posisikan saklar ke arah serial to parallel.
7. Hubungkan kabel parallel dari I / O, ke rangkaian LED
8. Rencanakan program dengan tampilan sebagai berikut.
9. Atur properties Object Inspector, sebagai berikut:
Pada Object Inspector tersebut menjelaskan : 1. BaudRate = 2400 2. Connected = False 3. DataBits = 8 4. Port = COM1 5. StopBits = 1 Stop Bit
10. Tampilan akhir program, sebagai berikut:
Triwiyanto-Praktikum Port Serial RS232 25
Pada tampilan tersebut tampak empat buah button yang digunakan, button OPEN
CONNECTION digunakan untuk membuka koneksi dengan port serial, button CLOSE
CONNECTION digunakna untuk menutup koneksi dengan port serial. Instruksi ini
dilakukan dengan cara memanipulasi pada object inspector, pada properties connected,
dengan memilih true atau false.
11. Ketik listing program sebagai berikut
procedure TForm1.Button1Click(Sender: TObject); var data:byte; count:integer; begin data:=0; count:=1; comport1.write(data,count); end; procedure TForm1.Button2Click(Sender: TObject); var data:byte; count:integer; begin data:=255; count:=1; comport1.write(data,count); end; procedure TForm1.Button3Click(Sender: TObject); begin Comport1.Connected:=true; end; procedure TForm1.Button4Click(Sender: TObject); begin Comport1.Connected:=false; end;
1.3. Running LED dengan komponen timer Rencanakan program untuk menghidupkan empat buah led, dengan indikator shape
sebanyak empat buah, apabila LED nyala maka akan diikuti oleh shape berwarna merah
yang menunjukkan sebagai indikator LED nyala. Program ini dapat dihentikan dan dimulai
dengan menekan tombol START dan STOP.
12. Hubungkan kabel serial pada port serial com komputer ke trainer.
13. Posisikan saklar ke arah serial to parallel.
Triwiyanto-Praktikum Port Serial RS232 26
14. Hubungkan kabel parallel dari I / O, ke rangkaian LED
15. Rencanakan program dengan tampilan sebagai berikut.
16. Atur properties Object Inspector, sebagai berikut:
Atur beberapa properties pada componen timer dan componen ComPort sebagaimana yang
ditunjukkan pada gambar dibawah ini.
17. Tampilan akhir program, sebagai berikut:
Triwiyanto-Praktikum Port Serial RS232 27
18. Ketik listing program sebagai berikut, sebagai berikut:
var Form1: TForm1; var data:byte; count:integer; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin timer1.Enabled:=true; comport1.Connected:=true; end; procedure TForm1.Button2Click(Sender: TObject); begin comport1.Connected:=false; timer1.Enabled:=false; timer2.Enabled:=false; timer3.Enabled:=false; timer4.Enabled:=false; end; procedure TForm1.Timer1Timer(Sender: TObject); begin timer1.Enabled:=false; data:=254; count:=1; comport1.write(data,count); shape1.Brush.Color:=clred; shape2.Brush.Color:=clwhite; shape3.Brush.Color:=clwhite; shape4.Brush.Color:=clwhite;
Triwiyanto-Praktikum Port Serial RS232 28
timer2.Enabled:=true; end; procedure TForm1.Timer2Timer(Sender: TObject); begin timer2.Enabled:=false; data:=253; count:=1; comport1.write(data,count); shape1.Brush.Color:=clwhite; shape2.Brush.Color:=clred; shape3.Brush.Color:=clwhite; shape4.Brush.Color:=clwhite; timer3.Enabled:=true; end; procedure TForm1.Timer3Timer(Sender: TObject); begin timer3.Enabled:=false; data:=251; count:=1; comport1.write(data,count); shape1.Brush.Color:=clwhite; shape2.Brush.Color:=clwhite; shape3.Brush.Color:=clred; shape4.Brush.Color:=clwhite; timer4.Enabled:=true; end; procedure TForm1.Timer4Timer(Sender: TObject); begin timer4.Enabled:=false; data:=247; count:=1; comport1.write(data,count); shape1.Brush.Color:=clwhite; shape2.Brush.Color:=clwhite; shape3.Brush.Color:=clwhite; shape4.Brush.Color:=clred; timer1.Enabled:=true; end;
1.4. Running LED dengan fungsi GetTickCount Rencanakan program untuk menghidupkan delapan buah led tanpa indikator shape nyala.
Program ini dapat dihentikan dan dimulai dengan menekan tombol START dan STOP.
5. Hubungkan kabel serial pada port serial com komputer ke trainer.
6. Posisikan saklar ke arah serial to parallel.
Triwiyanto-Praktikum Port Serial RS232 29
7. Hubungkan kabel parallel dari I / O, ke rangkaian LED
8. Rencanakan program dengan tampilan sebagai berikut.
9. Atur properties Object Inspector, sebagai berikut:
Atur beberapa properties pada componen timer dan componen ComPort sebagaimana yang
ditunjukkan pada gambar dibawah ini.
10. Tampilan akhir program, sebagai berikut:
11. Ketik listing program sebagai berikut, sebagai berikut:
type
Triwiyanto-Praktikum Port Serial RS232 30
TForm1 = class(TForm) ComPort1: TComPort; Button1: TButton; procedure Button1Click(Sender: TObject); procedure Delay(tunda:integer); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure Tform1.delay(tunda:integer); var waktu: integer; begin waktu := GetTickCount; repeat Application.ProcessMessages; until ((GetTickCount-waktu) >= tunda) end; procedure TForm1.Button1Click(Sender: TObject); var data,jumlah:byte; begin jumlah:=1; ; data:=255-1; comport1.Write(data,jumlah); delay(1000); ; data:=255-2; comport1.Write(data,jumlah); delay(1000); ; data:=255-4; comport1.Write(data,jumlah); delay(1000); ; data:=255-8; comport1.Write(data,jumlah); delay(1000); ; data:=255-16; comport1.Write(data,jumlah);
Triwiyanto-Praktikum Port Serial RS232 31
delay(1000); ; data:=255-32; comport1.Write(data,jumlah); delay(1000); ; data:=255-64; comport1.Write(data,jumlah); delay(1000); ; data:=255-128; comport1.Write(data,jumlah); delay(1000); end;
Triwiyanto-Praktikum Port Serial RS232 32
PERCOBAAN 8 PORT SERIAL DAN S A K L A R
TUJUAN: 1. Mahasiswa memahami komunikasi serial untuk input data dari SW Togle 2. Mahasiswa memahami pembuatan program komunikasi serial RS232 dengan
menggunakan komponen TComPort, untuk pengambilan data dari saklar togle.
SKEMATIK
VCC
SW2SW
21
3
J2
CON8
12345678
SW1SW
21
3
SW8 SW
21
3
SW5SW
21
3
SW4SW
21
3
SW7SW
21
3
SW3 SW
21
3
SW6SW
21
3
Gambar 2.1. Rangkaian SW Togle
Percobaan 2.1. Pengambilan data SW Togle
Rencanakan program untuk mengambil data dari 8 buah saklar togle, pada komunikasi
serial port COM. Lakukan percobaan sesuai dengan langkah-langkah berikut ini:
1. Hubungkan kabel serial pada port serial com komputer ke trainer.
2. Posisikan saklar ke arah parallel to serial.
Triwiyanto-Praktikum Port Serial RS232 33
3. Hubungkan kabel parallel dari I / O, ke rangkaian SW togle
4. Rencanakan program dengan tampilan sebagai berikut.
5. Lakukan pengaturan pada properties dari object inspector berikut.
6. Pada OI pilih tabulasi Events, dan click dua kali pada OnRxChar.
7. Tampilan akhir program, sebagai berikut:
Triwiyanto-Praktikum Port Serial RS232 34
8. Lakukan pengetikan instruksi program, sebagai berikut:
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer); var buff:string;y:integer; begin comport1.ReadStr(buff,count); y:=ord(buff[1]); edit1.text:=inttostr(y); end; Percobaan 2.2. Pengambilan data SW Togle dan display shape
Rencanakan program untuk mengambil data dari 8 buah saklar togle, pada komunikasi
serial port COM dan tampilkan data pada shape. Lakukan percobaan sesuai dengan
langkah-langkah berikut ini:
1. Hubungkan kabel serial pada port serial com komputer ke trainer.
2. Posisikan saklar ke arah parallel to serial.
3. Hubungkan kabel parallel dari I / O, ke rangkaian SW togle
4. Rencanakan program dengan tampilan sebagai berikut.
5. Lakukan pengaturan pada properties dari object inspector berikut.
Triwiyanto-Praktikum Port Serial RS232 35
6. Pada OI pilih tabulasi Events, dan click dua kali pada OnRxChar.
7. Tampilan akhir program, sebagai berikut:
8. Lakukan pengetikan instruksi program, sebagai berikut:
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer); var buff:string;y:integer; begin comport1.ReadStr(buff,count); y:=ord(buff[1]); case y of 1: begin shape1.brush.color:=clred; shape2.brush.color:=clwhite; shape3.brush.color:=clwhite; shape4.brush.color:=clwhite; shape5.brush.color:=clwhite; shape6.brush.color:=clwhite; shape7.brush.color:=clwhite; shape8.brush.color:=clwhite;
Triwiyanto-Praktikum Port Serial RS232 36
end; 2: 3: : end; end;
Percobaan 2.3. Pengaturan arah putaran shape melalui saklar toggle Rancanakan program untuk mengatur arah putaran 8 buah shape, melalui saklar toggle,
dengan memilih logika ‘1’ pada saklar toggle maka shape akan berputar ke kiri dan
sebaliknya akan berputar ke kanan. Lakukan percobaan sesuai dengan langkah-langkah
berikut ini:
1. Hubungkan kabel serial pada port serial com komputer ke trainer.
2. Posisikan saklar ke arah parallel to serial.
3. Hubungkan kabel parallel dari I / O, ke rangkaian SW togle
4. Rencanakan program dengan tampilan sebagai berikut.
Percobaan 2.4. Simulasi Indikator Level
Rancanakan program untuk mensimulasikan level cairan dengan merubah warna shape, apabila level tercapai. Tampilkan keterangan, level 1, 2, 3, 4…8, dengan menggunakan komponen label.
Triwiyanto-Praktikum Port Serial RS232 37
Percobaan 2. 5. Setting Jumlah putaran shape
Rancanakan program untuk mengatur jumlah putaran shape ( 1 s/d 8 x ) melalui saklar, dengan indicator shape dan indicator text pada komponen edit.
Triwiyanto-Praktikum Port Serial RS232 38
PERCOBAAN 9 PORT SERIAL DAN DAC 0808
TUJUAN: 1. Mahasiswa memahami karakteristik rangkaian dasar DAC 2. Mahasiswa memahami komunikasi serial untuk output data ke DAC 3. Mahasiswa memahami pembuatan program komunikasi serial RS232 dengan
menggunakan komponen TComPort, untuk mengeluarkan data DAC. SKEMATIK
R14 10k1 3
2
U2 DAC0808
12111098765
14
15
4
2
16
A8A7A6A5A4A3A2A1
VR+
VR-
IOUT
IOUT
COMP
+
-
U3
107
3
26
74
R12 R
R13 R
V-
V-
J8
CON2
12
V+VCC
J7 CON8
12345678
C215pF
Gambar 3.1. Rangakain DAC Percobaan 3.1. Pembangkit Tegangan Gigi Gergaji
Rencanakan program untuk mengeluarkan data pada DAC, sehingga akan menghasilkan
tegangan yang naik secara periodic setiap 1 ms, sehingga akan menghasilkan periode
T=255 ms pada komunikasi serial port COM. Lakukan percobaan sesuai dengan langkah-
langkah berikut ini:
1. Hubungkan kabel serial pada port serial com komputer ke trainer.
2. Posisikan saklar ke arah parallel to serial.
3. Hubungkan kabel parallel dari I / O, ke rangkaian SW togle
4. Rencanakan program dengan tampilan sebagai berikut.
Triwiyanto-Praktikum Port Serial RS232 39
5. Lakukan pengaturan OI pada masing-masing komponen.
6. Tampilan akhir program, sebagai berikut:
7. Ketik listing program berikut ini:
procedure Tform1.delay(tunda:integer); var waktu: integer; begin waktu := GetTickCount; repeat Application.ProcessMessages; until ((GetTickCount-waktu) >= tunda)
Triwiyanto-Praktikum Port Serial RS232 40
end; procedure TForm1.Button1Click(Sender: TObject); begin timer1.enabled:=true; end; procedure TForm1.Timer1Timer(Sender: TObject); var i,jumlah,data:byte; begin timer1.Enabled:=false; jumlah:=1; data:=1; for i:=1 to 255 do begin comport1.Write(data,jumlah); data:=data+1; delay(100);{delay 1000 ms} end; timer1.Enabled:=true; end; procedure TForm1.Button2Click(Sender: TObject); begin timer1.Enabled:=false; end; Percobaan 3.2. Pembangkit Gelombang Kotak
Rencanakan program untuk mengeluarkan data pada DAC, sehingga akan menghasilkan tegangan output gelombang kotak ( dalam DC ) dengan frekuensi tertentu.
Percobaan 3.3. Pembangkit Tegangan Sinus Rencanakan program untuk mengeluarkan data pada DAC, sehingga akan menghasilkan
tegangan gelombang sinus (dalam DC ) dengan frekuensi 10 Hz atau periode 0.1 s, pada
komunikasi serial port COM. Lakukan percobaan sesuai dengan langkah-langkah berikut
ini:
1. Hubungkan kabel serial pada port serial com komputer ke trainer.
2. Posisikan saklar ke arah parallel to serial.
3. Hubungkan kabel parallel dari I / O, ke rangkaian SW togle
4. Rencanakan program dengan tampilan sebagai berikut.
Triwiyanto-Praktikum Port Serial RS232 41
5. Lakukan pengaturan OI pada masing-masing komponen.
6. Tampilan akhir program, sebagai berikut:
7. Ketik listing program berikut ini:
procedure Tform1.delay(tunda:integer); var waktu: integer; begin waktu := GetTickCount; repeat Application.ProcessMessages; until ((GetTickCount-waktu) >= tunda) end; procedure TForm1.Button1Click(Sender: TObject);
Triwiyanto-Praktikum Port Serial RS232 42
begin timer1.enabled:=true; end; procedure TForm1.Timer1Timer(Sender: TObject); var t:integer; A, jumlah, f, DataDAC:byte;Vo, Phi:real; begin timer1.Enabled:=false; jumlah:=1; A:=10; Phi:=3.14; f:=10; ; for t:=1 to 360 do begin Vo:=A*Sin(2*Phi*f*t); DataDAC:=round(Vo*255/10); comport1.Write(DataDAC,jumlah); delay(1);{delay 1 ms} end; timer1.Enabled:=true; end; procedure TForm1.Button2Click(Sender: TObject); begin timer1.Enabled:=false; end; Percobaan 3.4. Pembangkit Tegangan Exponensial
Rencanakan program untuk mengeluarkan data pada DAC, sehingga akan menghasilkan
tegangan gelombang exponensial (dalam DC ) dengan frekuensi 5 Hz, pada komunikasi
serial port COM.
Triwiyanto-Praktikum Port Serial RS232 43
PERCOBAAN 10 PORT SERIAL DAN ADC 0804
TUJUAN:
1. Mahasiswa memahami karakteristik rangkaian dasar ADC
2. Mahasiswa memahami komunikasi serial untuk pengambilan data dari ADC
3. Mahasiswa memahami pembuatan program komunikasi serial RS232 dengan
menggunakan komponen TComPort, untuk pengambilan data ADC.
SKEMATIK
Gambar 4.1. Rangkaian ADC0804
Percobaan 4.1. Pembacaan data ADC dengan display Edit
Pada gambar 4.1 tampak bahwa apabila pin 1 dan 2 dihubungkan singkat pada J6, maka
ADC akan bekerja dalam mode stand alone atau free running, yang artinya, tidak perlu
J6
CON3
123
J4
CON3
123
R710K
Note:
VCCJ3
CON3
123
J6: 1 & 2 short for stand alone mode
GN
D
R410K
13
2
J6: 2 &3 short for hand shake mode from /C0
J3: 1 & 2 short for potensio measurement
U1 ADC0804
67
9
1112131415161718
194
5
123
+IN-IN
VREF/2
DB7DB6DB5DB4DB3DB2DB1DB0
CLKRCLKIN
INTR
CSRDWR
J3: 2 & 3 short for LM35 measurement
VCC
R110K
13
2
/C0
VCC
J5
CON8
12345678C1
150pF
GND
Triwiyanto-Praktikum Port Serial RS232 44
diperintahkan untuk melakukan proses konversi ADC. Lakukan percobaan sesuai dengan
langkah-langkah berikut ini:
1. Hubungkan kabel serial pada port serial com komputer ke trainer.
2. Posisikan saklar ke arah parallel to serial.
3. Hubungkan kabel parallel dari I / O, ke rangkaian SW togle
4. Lakukan pembuatan program dengan tampilan sebagai berikut:
5. Lakukan pengaturan OI pada masing-masing komponen.
6. Tampilan akhir program, sebagai berikut:
7. Ketik listing program berikut ini:
Triwiyanto-Praktikum Port Serial RS232 45
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer); var buff:string;y:integer;tegangan:real; begin comport1.ReadStr(buff,count); y:=ord(buff[1]); edit1.text:=inttostr(y); tegangan:=y*5/255; edit2.text:=floattostrF(tegangan,ffFixed,7,3);{7=precission,3=digit} end; Percobaan 4.2. Pembacaan data ADC dengan Display Chart
Display data ADC, selain dapat menggunakan edit, label, maupun memo, dapat juga
ditampilkan sebagai grafik dengan menggunakan komponen chart.
Lakukan percobaan sesuai dengan langkah-langkah berikut ini:
1. Hubungkan kabel serial pada port serial com komputer ke trainer.
2. Posisikan saklar ke arah parallel to serial.
3. Hubungkan kabel parallel dari I / O, ke rangkaian SW togle
4. Lakukan pembuatan program dengan langkah-langkah sebagai berikut
5. Lakukan pengambilan componen chart
6. Pada componen chart tersebut, click dua kali, setelah itu lakukan langkah editing
chart, yang terlebih dahulu dilakukan proses pemilihan tipe series ( grafik ) yang
diinginkan, dengan menekan tombol Add.
Triwiyanto-Praktikum Port Serial RS232 46
7. Lakukan lakukan pemilihan tipe grafik, pada checkbox 3D, kita dapat merubah
dimensi dari grafik menjadi 3 dimensi, dengan cara memberikan tanda check pada
check box tersebut.
8. Pada dioalog box tersebut, tampak grafik dengan nama fungís Series1 sudah
tersedia.
Triwiyanto-Praktikum Port Serial RS232 47
9. Lakukan editing pada sumbu yang digunakan, yaitu sumbu Left dan Buttom,
dengan mengatur batas minimal dan maksimal, yang akan direncanakan.
10. Setting nilai minimal dan maksimal pada sumbu Buttom
Triwiyanto-Praktikum Port Serial RS232 48
11. Tampilan akhir program dengan menggunakan componen Chart
12. Ketik listing program berikut ini:
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
var buff:string;y:integer;tegangan:real;
begin
comport1.ReadStr(buff,count);
y:=ord(buff[1]);
edit1.text:=inttostr(y);
tegangan:=y*5/255;
edit2.text:=floattostrF(tegangan,ffFixed,7,3);{7=precission,3=digit}
series1.Add(y,'',clblue);
end;
Percobaan 4.3. Pembacaan data ADC dengan Display Chart 2
Tampilkan data ADC dan data tegangan, masing-masing pada chart, dengan melakukan
pengambilan komponen chart sebanyak dua buah. Lengkapilah tampilan chart tersebut
dengan memberikan judul pada sumbu kiri, kanan dan judul grafik, dengan melakukan
editing pada komponen chart tersebut.
Triwiyanto-Praktikum Port Serial RS232 49
Lampiran 1: Petunjuk Pemakaian Komponen io.dll
1. Untuk melakukan antarmuka PC dengan perangkat ekternal dengan memanfaatkan
port printer pada pemrograman delphi, diperlukan sebuah komponen untuk mengakses port io parallel, untuk itu diperlukan komponen yang disebut io.dll.
2. Dapatkan file io.dll di internet dengan kata kunci io.dll port printer atau copy di laboratorium mikrokontroller, letakkan file io.dll pada folder kerja yang akan dipakai pada pemrograman Delphi, seperti yang ditunjukkan pada gambar berikut, perhatikan letak file Delphi berada dalam satu folder dengan file io.dll.
3. Ketik dua buah instruksi berikut ini pada setiap pembuatan program Delphi pada bagian deklarasi, seperti yang ditunjukkan pada gambar berikut. Procedure Portout, digunakan untuk pemakaian instruksi mengeluarkan data, function PortIn, digunakan untuk pemakaian instruksi mengambil data.
Triwiyanto-Praktikum Port Serial RS232 50
4. Pada gambar tersebut tampak instruksi mengeluarkan data pada port 378h dengan data decimal 255. pada button 1, portout($378,255), yang menyatakan data decimal 255 dikeluarkan pada port dengan alamat 378h, tanda $ menyatakan heksa.
Triwiyanto-Praktikum Port Serial RS232 51
Lampiran 2: Petunjuk Instalasi Komponen TComPort pada Delphi 6
1. Untuk melakukan antarmuka PC dengan perangkat ekternal dengan memanfaatkan port com atau port serial pada pemrograman delphi, diperlukan sebuah komponen untuk mengakses port serial communicatin RS232, untuk itu diperlukan komponen yang disebut cport.
2. Lakukan copy file Cport dari download di Internet atau Lab Microcontroller dan Paste ke folder Program Files – Borland – Delphi6.
3. Bukalah file DsgnCport6 dengan menggunakan Program Delphi
4. Click pada button Compile pada gambar berikut, untuk menghasilkan file dcu pada folder CPort.
Triwiyanto-Praktikum Port Serial RS232 52
5. Copy file-file dcu tersebut ke Folder Delphi6 – Lib
6. Kembali pada tampilan Package-DsgnCport6.dpk, dan pilih button Instal untuk melakukan proses instalasi komponen.
7. Setelah proses instalasi komponen maka akan didapatkan tampilan sebagai berikut.
Triwiyanto-Praktikum Port Serial RS232 53
8. Setelah proses instalasi maka akan didapatkan komponen Cport pada Tabulasi Komponen
9. Langkah terakhir adalah pengaturan pada Environment pada Tool
10. Pilih pada tabulasi Library
Triwiyanto-Praktikum Port Serial RS232 54
11. Lakukan pemilihan Path folder Cport dengan menekan button browse pada Library Path
12. Contoh lokasi folder Cport
Triwiyanto-Praktikum Port Serial RS232 55
Lampiran 2: Rangkaian Interface Serial RS232 Rangkaian Konverter:
Rangkaian converter ini dibangun degan menggunakan microcontroller AT89S2051 dan
MAX232 untuk merubah level tegangan dari TTL ke RS232 atau sebaliknya. Sw toggle
pada rangkaian ini, berfungsi untuk merubah arah konversi dari Serial ke Parallel atau
sebaliknya dari Paralle ke Serial.
S2P
U6
AT89S2051
1
1213141516171819
20
236789
11
54
RST/VPP
P1.0/AIN0P1.1/AIN1
P1.2P1.3P1.4P1.5P1.6P1.7
VCC
P3.0/RXDP3.1/TXDP3.2/INTOP3.3/INT1P3.4/T0P3.5/T1P3.7
XTAL1XTAL2
J10
CON8
12345678
+
C3 10uF
U5
MAX232
138
1110
134526
129147
R1INR2INT1INT2IN
C+C1-C2+C2-V+V-
R1OUTR2OUTT1OUTT2OUT
P1
CONNECTOR DB9
594837261
+
C410uF
VCC
+C5
10uF
+ C610uF
XTALL1
ZTA
SW9SW
21
3
P2S
VCC
Rangkaian converter dengan 89s2051
VCC
SW9SW
21
3S2P
XTALL1
ZTA
+
C6
10uF
VCC
VCC
+
C410uF
P1
CONNECTOR DB9
594837261
R20R
J10 CON8
12345678
U5
MAX232
138
1110
134526
129147
R1INR2INT1INT2IN
C+C1-C2+C2-V+V-
R1OUTR2OUTT1OUTT2OUT
+
C3 10uF P2S
C7C
U7 AT89S51
9181929
30
31
40
12345678
2122232425262728
1011121314151617
3938373635343332
RSTXTAL2XTAL1PSEN
ALE/PROG
EA/VPP
VCC
P1.0/T2P1.1/T2-EX
P1.2P1.3
P1.4/SSP1.5/MOSIP1.6/MISOP1.7/SCK
P2.0/A8P2.1/A9P2.2/A10P2.3/A11P2.4/A12P2.5/A13P2.6/A14P2.7/A15
P3.0/RXDP3.1/TXDP3.2/INTOP3.3/INT1P3.4/TOP3.5/T1P3.6/WRP3.7/RD
P0.0/AD0P0.1/AD1P0.2/AD2P0.3/AD3P0.4/AD4P0.5/AD5P0.6/AD6P0.7/AD7
VCC+C5
10uF
Rangkaian converter dengan 89s51
Triwiyanto-Praktikum Port Serial RS232 56
Listing Program:
Agar rangkaian terserbut dapat berfungsi sebagai converter maka harus dilakukan proses pengisian program pada microcontroller tersebut. org 0h nop call initserial start: jnb P3.7,s2P p2S: call sendout sjmp start s2P: call inchar sjmp start ; initserial: mov scon,#52h; Konfigurasi komunikasi serial mode 1 mov tmod,#20h; Baud rate 2400 BPS mov th1,#0F3H setb tr1 ret ; inchar: detecti: jnb ri,detecti ; Deteksi bit RI apakah data sudah diterima atau belum clr ri mov a,sbuf mov P1,a ret ; Sendout: detecto: jnb ti,detecto; clr ti ; mov a,P1 mov sbuf,a ; ret End
Triwiyanto-Praktikum Port Serial RS232 57
Lampiran 3. Pengujian Port Serial dengan menggunakan Hyperterminal
Pengujian sistem komunikasi antara mikrokontroller dengan port serial computer dapat dilakukan dengan memanfaatkan program hyperterminal pada sistem yang berbasis under windows ( 98, ME dan XP ). Kelebihan penggunakan program ini, tidak diperlukan suatu bahasa pemrograman dan kelemahannya, terbatas hanya pada proses pengujian. Pada program ini, kita dapat melakukan pengujian untuk pengambilan data maupun output data melalui tombol keyboard PC.
Gambar 3.1 Pemilihan menu communication pada Accessories
Gambar 3.2 Pemilihan menu HyperTerminal pada communication
(a) (b)
Gambar 3.3. (a) Pemberian nama koneksi (b) Pemilihan koneksi pada COM1
Triwiyanto-Praktikum Port Serial RS232 58
(a) (b)
Gambar 3.4. (a) Properties serial komunikasi (b) windows HyperTerminal
Triwiyanto-Praktikum Port Serial RS232 59
TATA TERTIB PRAKTIKUM
1. Praktikan yang terlambat lebih dari 10 menit, tidak diperkenankan mengikuti praktikum dan dinyatakan gagal untuk percobaan pada saat itu dengan alasan apapun.
2. Praktikan hanya diijinkan melaksanakan praktikum apabila: 1. Memakai Jas Praktikum (lab) yang telah ditentukan. 2. Membawa buku panduan/petunjuk praktikum
3. Telah mengerjakan dan mengumpulkan Tugas Pendahuluan (bila ada) untuk percobaan yang akan dipraktekkan
4. Lulus pretest atau kuis yang dilaksanakan sebelum praktikum (bila ada).
3. Selama berada di dalam ruangan atau praktikum berlangsung,
praktikan: 1. Tenang, tertib dan sopan, tidak mengganggu praktikan lain
yang sedang melaksanakan praktikum 2. Tidak diperkenankan meninggalkan ruangan tanpa seijin
asisten/dosen yang sedang bertugas. 3. Memeriksa kelengkapan alat serta komponen yang akan
dipraktekkan. Bila terdapat kerusakan sebelum praktikum dimulai, maka praktikan harus segera melaporkan kepada asisten/ dosen yang bersangkutan. Praktikan bertanggung jawab terhadap komponen dan atau peralatan dan menggantikan komponen dan atau peralatan bilamana terjadi kerusakan selama praktikum berlangsung.
4. Praktikan dilarang keras membawa, mengambil, memindahkan, sebagian atau keseluruhan dari kelengkapan praktikum tanpa pemberitahuan terlebih dahulu kepada asisten yang sedang bertugas.
5. Tidak diperkenankan mengambil komponen/kabel/bahan praktikum dll
6. Praktikan diharapkan menyelesaikan praktikum tepat pada waktunya.
5. Apabila praktikan berhalangan hadir, maka:
1. Praktikan dapat mengikuti praktikum susulan dengan mengajukan permohonan untuk mengikuti Praktikum susulan disertai dengan bukti-bukti seperti (surat keterangan sakit dari dokter , Surat dari kepolisian, surat kematian jika ada keluarga yang meninggal,dlsb) ke Dosen yang bersangkutan paling lambat 1 (satu) minggu setelah praktikum yang bersangkutan dilaksanakan.
Triwiyanto-Praktikum Port Serial RS232 60
2. Apabila praktikan tidak bisa menunjukkan bukti yang jelas, maka dapat diganti dengan sanksi administrasi, dengan menyerahkan buku ke perpustakaan ( topik:mikrokontroller, dengan harga > Rp.50.000)
SANKSI-SANKSI
1. Bagi praktikan yang dengan pretest praktek gagal, nilai quis
dibawah 50 (lima puluh) point, tidak mengenakan jas praktikum, tidak membawa buku panduan/petunjuk praktikum, maka tidak
diperkenankan mengikuti praktikum. Nilai praktikum untuk percobaan tesebut adalah 0 (nol).
2. Praktikan yang menunjukkan tugas diluar shift atau jam praktikum yang bersangkutan maka nilainya akan dikurangi 30 (tiga puluh) point. Sedangkan bagi praktikan yang terlambat menunjukkan lebih dari 1 hari, tugas tidak akan diterima, dan nilai tugas tersebut adalah 0 (nol).
3. Bagi praktikan yang terbukti menunjukkan/menggunakan/memakai tugas dari kelompok lain maka kelompok tersebut akan gugur di matakuliah praktikum tersebut dengan mendapatkan nilai E.
4. Bagi mahasiswa yang terbukti melanggar tata tertib tersebut, akan dinyatakan gugur di matakuliah praktikum tersebut, dengan nilai E.
5. …
TATA TERTIB DI LABORATORIUM
1. Masuk ruangan lab. harus melepas alas kaki. 2. Tidak membawa makanan dan minuman, di
ruangan 3. Harus menjaga keselamatan diri, alat-alat dan
kebersihan ruangan 4. Tidak diperkenankan menggunakan computer
untuk keperluan game, atau yang tidak
Triwiyanto-Praktikum Port Serial RS232 61
berhubungan dengan kegiatan perkuliahan/praktikum.
5. Tidak diperkenankan merubah setting computer (contoh:screen saver/ wallpaper/ password dll), dan konfigurasi computer (contoh: mouse, keyboard, modul, kabel dll)
6. Penyimpanan data, hanya di selain drive C 7. Mahasiswa dapat menggunakan fasilitas
computer dan modul praktek, dengan seijin dosen/asisten, di luar kegiatan praktikum.
8. Praktikan harus melepas cover monitor dan CPU, pada saat akan menggunakan computer
9. Pada saat selesai menggunakan computer, praktikan harus mematikan computer dengan cara shutdown dan mematikan stavolt.
10. Kelompok piket kebersihan, bertanggung jawab membersihkan ruangan, sesuai jadwal piket
11. Kelompok praktek yang sedang piket kebersihan, bertanggung jawab untuk menutup cover monitor dan CPU, dan mematikan AC, bila tidak ada kegiatan praktikum/ shift berikutnya.
Triwiyanto-Praktikum Port Serial RS232 62
Pertemuan
ke
Percobaan/ Kegiatan Uraian Kegiatan/ Praktikum
1 Pengantar a. Mikrokontroller dan Penjelasan Kontrak perkuliahan
b. Penjelasan Tugas I
2 Praktikum Parallel
a. Pretest/ Konsultasi Tugas I (skematik) b. On Off LED c. LED berjalan
3 Saklar a. Pretest Praktek (layout) b. Pengambilan data saklar
Triwiyanto-Praktikum Port Serial RS232 63
c. Mengatur LED dengan Saklar d. Aplikasi Setting dengan Saklar
4 Presentasi Tugas I &
Penjelasan Tugas II
a. Pretest Praktek b. Rangkaian Programmer Serial c. Rangkaian Target 89s51
5 Display 7 Segmen a. Pretest Praktek dan Konsul Tugas II (skematik) b. Tulis Karakter ke 7 Segmen c. Aplikasi Setting dengan Display 7 Segmen
6 LCD Karakter 2 x16 a. Pretest Praktek dan Konsul Tugas II (layout) b. Tulis Karakter ke LCD c. Tulis Karakter dari Look Up Table d. Tulisan Berjalan pada LCD
7 ADC 0804 a. Pretest Praktek dan Konsul Tugas II (hardware) b. ADC dengan display ke 7 Segmen c. ADC dengan display ke LCD
8 Ujian Praktek Tengah Semester 9 Presentasi Tugas II Rangkaian Aplikasi ( lihat lampiran )
10 Counter a. Counter dengan display LED b. Counter dengan display 7 segmen
11 Timer a. Pretest Praktek b. Membangkitkan waktu tunda c. Membangun Jam Digital
12 Komunikasi Serial a. Standart RS232: Level, Baudrate b. Register SBUF c. Output data ke LED
13 d. Input data saklar
14 Ujian Praktek Akhir Semester
Triwiyanto-Praktikum Port Serial RS232 64