Anda di halaman 1dari 21

LAPORAN

PRAKTIKUM KOMUNIKASI DATA


PENGKODEAN SINYAL DIGITAL (UNIPOLAR,RZ,NRZ,AMI,B8ZS)
MENGGUNAKAN PROGRAM DELPHI

OLEH
USWATUN KHASANAH
1331130019
TT2B/19

POLITEKNIK NEGERI MALANG


JURUSAN TEKNIK ELEKTRO
PROGRAM STUDI TEKNIK TELEKOMUNIKASI
2015

BAB I
PENDAHULUAN
1.1.

TUJUAN
1. Memahami pengkodean data digital
2. Memahami macam-macam pengkodean data digital.
Unipolar encoding bersifat sederhana (gelombang kotak).
Unipolar encoding seperti : NRZ,Rzdan biphase (manchester/DManchester).
Bipolar encoding seperti : AMI,B8ZS dan HDB3.

1.2.

DASAR TEORI
Dalam proses kerjanya komputer mengolah data secara digital,
melalui sinyal listrik yang diterimanya atau dikirimkannya. Pada
prinsipnya, komputer hanya mengenal dua arus, yaitu on atau off, atau
istilah dalam angkanya sering juga dikenal dengan 1 (satu) atau 0 (nol).
Kombinasi dari arus on atau off inilah yang yang mampu membuat
komputer melakukan banyak hal, baik dalam mengenalkan huruf, gambar,
suara, bahkan film film menarik yang anda tonton dalam format digital.
Sistem

yang

merubah

sinyal

analog

menjadi

sinyal

digital

disebut Sistem Akuisisi Data.


Dalam Sistem Akuisisi data ada 4 komponen yang penting yaitu :
1. Input analog yaitu mengubah sinyal input analog dari sensor
menjadi bentuk bit.
2. Output analog yaitu mengubah data digital yang tersimpan
dalam komputer menjadisinyaldigital.
3. Input / output digital yaitu untuk masukan dan keluaran nilai
digital (tingkat logika)keduadariperangkatkeras.
4. Counter / timer dignakan pada saat perhitungan, pengukuran
frekwensi dan perioda, pembangkit pulsa.
Pengkodean karakter yaitu memasangkan karakter berurutan dari
suatu kumpulan dengan yang lainnya. Dalam sistem komunikasi digital,
informasi dari sumber dikonversikan menjadi deretan digit biner yang

efisien dengan jumlah digit biner yang digunakan dibuat seminimal


mungkin.

PENGKODEAN DATA
Dalam proses telekomunikasi, data tersebut harus dimengerti baik
dari sisi pengirim maupun dari sisi penerima. Untuk mencapai hal
tersebut, data harus diubah dalam bentuk khusus yaitu sandi untuk
komunikasi data.
TEKNIK ECONDING
Modulasi adalah proses encoding sumber data dalam suatu sinyal carrier
dengan frekuensi.
Ada 4 kombinasi hubungan data dan sinyal:

Data

digital,

sinyal

digital

perangkat

pengkodean

data

digital.menjadi sinyal digital.

Data analog, sinyal digital konversi data analog ke bentuk digital.

Data digital, sinyal analog beberapa media transmisi hanya bisa


merambatkan sinyal analog.

Data analog, sinyal analog data analog dapat dikirimkan dalam


bentuk sinyal baseband
Sinyal Digital adalah deretan pulsa voltase terputus-putus yang

berlainan dan masing-masing memiliki ciri-ciri tersendiri. Setiap pulsa


merupakan sebuah elemen sinyal ,Elemen sinyal merupakan data yang
ditranmisikan melalui pengkodean bit data ,Dimana Biner 0 = Level
voltase lebih rendah Dan Biner 1 = Level voltase yang lebih tinggi.
Sinyal digital ini memiliki berbagai keistimewaan yang unik yang
tidak dapat ditemukan pada teknologi analog, yaitu:
1. Mampu mengirikan informasi dengan kecepatan cahaya yang
dapat membuat informasi dapat dikirim dengan kecepatan
tinggi.
2. Penggunaan yang berulang-ulang terhadap informasi tidak
mempengaruhi kualitas dan kuantitas informasi itu sendiri.
3. Informasi dapat dengan mudah diproses dan dimodifikasi ke
dalam berbagai bentuk.

4. Dapat memproses informasi dalam jumlah yang sangat besar


dan mengirimnya secara interaktif.
Ketentuan dalam proses encoding
1. Unipolar : Semua elemen-elemen sinyal dalam bentuk yang sama.
2. Polar : Satu state logic dinyatakan oleh tegangan positif dan
sebaliknya oleh tegangan negatif.
3. Rating Data : Rating data transmisi data dalam bit per secon.
4. Durasi atau panjang suatu bit Waktu yang dibutuhkan pemancar
untuk memancarkan bit.
5. Rating modulasi : Rating dimana level sinyal berubah dan diukur
dalam bentuk baud=elemen-elemen sinyal per detik.
6. Tanda dan ruang : Biner 1 dan biner 0 berturut-turut.
Format Pengkodean Sinyal Digital
1. NONRETURN TO ZERO (NRZ)
Nonreturn-to-Zero-Level (NRZ-L)
Nonreturn to Zero Inverted(NRZI)
2. MULTILEVEL BINARY
Bipolar-AMI (Alternate Mark Inversion)
Pseudoternary
3. BIPHASE
Manchester
Differential manchester

NonReturn to Zero (NRZ)


1. Nonreturn-to-Zero-Level (NRZ-L) yaitu suatu kode dimana tegangan
negatif dipakai untuk mewakili suatu binary dan tegangan positif
dipakai untuk mewakili binary lainnya.
2. Nonreturn to Zero Inverted(NRZI) ya itu suatu kode dimana suatu
transisi (low ke high atau high ke low) pada awal suatu bit time akan
dikenal sebagai binary 1 untuk bit time tersebut; tidak ada transisi
berarti binary 0. Keuntungan differensial encoding : lebih kebal
noise,

tidak

dipengaruhi

oleh

level

tegangan.

Kelemahan dari NRZ-L maupun NRZI adalah terbatasan dalam


komponen DC dan kemampuansynchronisasi yang buruk.

Multilevel Binary
1. Bipolar-AMI yaitu suatu kode dimana binary 0 diwakili dengan
tidak adanya line sinyal dan binary 1 diwakili oleh suatu pulsa
positif atau negatif. Zero menggambarkan tidak adanya line signal.
Satu menggambarkan positif atau negatif sinyal.
2. Pseudoternary yaitu suatu kode dimana binary 1 diwakili oleh
ketiadaan line sinyal dan binary 0 oleh pergantian pulsa-pulsa
positif dan negatif. Satu menggambarkan adanya jalur sinyal. Zero
menggambarkan perwakilan dari positif dan negatif.

Biphase
1. Manchester yaitu suatu kode dimana ada suatu transisi pada
setengah dari periode. Tiap bit transisi low ke high mewakili 1
dan high ke low mewakili 0. Zero dari tinggi ke rendah di
pertengahan interval. Satu dari rendah ke tinggi di pertengahan
interval.
2. Differential manchester yaitu suatu kode dimana binary 0 diwakili
oleh adanya transisi di awal periode suatu bit dan binary 1
diwakili oleh ketiadaan transisi di awal periode suatu bit.
Perbandingan Format Pengkodean Sinyal Digital

Sinyal analog adalah sinyal data dalam bentuk gelombang yg


berkelanjutan, membawa informasi dg merubah karakter gelombangnya.
Sinyal analog mentransmisikan suara & gambar dalam bentuk

gelombang kontiniu. Karakter yg terpenting yg dimiliki oleh isyarat


analog adalah amplitudo dan frekuensi yg biasanya dinyatakan dg
gelombang sinus, mengingat gelombang sinus merupakan dasar untuk
semua bentuk isyarat analog.
Sinyal digital merupakan hasil teknologi yang dapat mengubah
signal menjadi kombinasi urutan bilangan 0 dan 1 (juga dengan biner),
sehingga tidak mudah terpengaruh oleh derau, proses informasinya pun
mudah, cepat dan akurat, tetapi transmisi dengan sinyal digital hanya
mencapai jarak jangkau pengiriman data yang relatif dekat.
HDB3

Kepadatan tinggi Bipolar 3 Zeros

Didasarkan pada bipolar-AMI

String pada empat zero digantikan dengan satu atau dua pulsa
B8ZS dan HDB3

BAB II
PERENCANAAN
2.1 Langkah langkah pada Form
1. Buka program Delphi untuk menggamarkan sinyal.
2. Tambahkan pada form,image dan button. Selanjutnya mengatur tata letak
komponen-komponen seperti pada gambar Fom berikut

3. Ubah beberapa property dan komponen.


4. Mengetik kode program untuk menggambarkan gelombang pengkodean.

BAB III
HASIL DAN PEMBAHASAN
3.1 PROGRAM
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;
type
TForm1 = class(TForm)
Panel1: TPanel;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Image6: TImage;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
biner: TEdit;
image1: TImage;
procedure binerChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
//---------------------------------------sumbu--------------------------------------procedure sumbu (image:Timage;ax,ay,b,c:integer);
begin
image.Picture:=nil;
image.Refresh;
image.Canvas.pen.Color:=clblack;

image.Canvas.MoveTo(ax,ay);
image.Canvas.LineTo(ax+b,ay);
image.Canvas.MoveTo(ax,ay);
image.Canvas.LineTo(ax,ay-c);
image.Canvas.MoveTo(ax,ay);
image.Canvas.LineTo(ax,ay+c);
end;
//********************* PROCEDURE SINYAL Unipolar
***********************************
procedure satu(ax,ay,a,b,i:integer);
begin
form1.image1.Canvas.Pen.Color:=clred;
form1.image1.Canvas.Pen.Width:=2;
form1.image1.Canvas.MoveTo(ax+(i-1)*b,ay-a);
form1.image1.Canvas.LineTo(ax+b+(i-1)*b,ay-a);
end;
procedure nol(ax,ay,a,b,i:integer);
begin
form1.image1.Canvas.Pen.Color:=clred;
form1.image1.Canvas.Pen.Width:=2;
form1.image1.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image1.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
procedure tegak(ax,ay,a,b,i:integer);
begin
form1.image1.Canvas.Pen.Color:=clred;
form1.image1.Canvas.Pen.Width:=2;
form1.image1.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image1.Canvas.LineTo(ax+(i-1)*b,ay-a);
end;
//********************** PROCEDURE SINYAL RZ
***********************************
procedure rz_1(ax,ay,a,b,n:integer);
begin
form1.image2.Canvas.Pen.Color:=clred;
form1.image2.Canvas.Pen.Width:=2;
form1.image2.Canvas.MoveTo(ax+(n-1)*(b+b),ay);
form1.image2.Canvas.LineTo(ax+(n-1)*(b+b),ay-a);
form1.image2.Canvas.LineTo(ax+b+(n-1)*(b+b),ay-a);
form1.image2.Canvas.LineTo(ax+b+(n-1)*(b+b),ay);
form1.image2.Canvas.LineTo(ax+b+b+(n-1)*(b+b),ay);
end;
procedure rz_0(ax,ay,a,b,n:integer);
begin
form1.image2.Canvas.Pen.Color:=clred;

form1.image2.Canvas.Pen.Width:=2;
form1.image2.Canvas.MoveTo(ax+(n-1)*(b+b),ay);
form1.image2.Canvas.LineTo(ax+(n-1)*(b+b),ay+a);
form1.image2.Canvas.LineTo(ax+b+(n-1)*(b+b),ay+a);
form1.image2.Canvas.LineTo(ax+b+(n-1)*(b+b),ay);
form1.image2.Canvas.LineTo(ax+b+b+(n-1)*(b+b),ay);
end;
//*************************** PROCEDURE SINYAL AMI
*****************************
procedure ami1_1(ax,ay,a,b,i:integer);
begin
form1.image3.Canvas.Pen.Color:=clred;
form1.image3.Canvas.Pen.Width:=2;
form1.image3.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image3.Canvas.LineTo(ax+(i-1)*b,ay-a);
form1.image3.Canvas.LineTo(ax+b+(i-1)*b,ay-a);
form1.image3.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
procedure ami1_2(ax,ay,a,b,i:integer);
begin
form1.image3.Canvas.Pen.Color:=clred;
form1.image3.Canvas.Pen.Width:=2;
form1.image3.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image3.Canvas.LineTo(ax+(i-1)*b,ay+a);
form1.image3.Canvas.LineTo(ax+b+(i-1)*b,ay+a);
form1.image3.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
procedure ami0(ax,ay,a,b,i:integer);
begin
form1.image3.Canvas.Pen.Color:=clred;
form1.image3.Canvas.Pen.Width:=2;
form1.image3.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image3.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
//******************** PROCEDURE SINYAL MANCHASTER
*****************************
procedure mncstr_0(ax,ay,a,b,i:integer);
begin
form1.image4.Canvas.Pen.Color:=clred;
form1.image4.Canvas.Pen.Width:=2;
form1.image4.Canvas.MoveTo(ax+(i-1)*(b+b),ay-a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay-a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+b+b+(i-1)*(b+b),ay+a);

end;
procedure mncstr_1(ax,ay,a,b,i:integer);
begin
form1.image4.Canvas.Pen.Color:=clred;
form1.image4.Canvas.Pen.Width:=2;
form1.image4.Canvas.MoveTo(ax+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay-a);
form1.image4.Canvas.LineTo(ax+(b+b)+(i-1)*(b+b),ay-a);
end;
procedure tegak_1(ax,ay,a,b,i:integer);
begin
form1.image4.Canvas.Pen.Color:=clred;
form1.image4.Canvas.Pen.Width:=2;
form1.image4.Canvas.MoveTo(ax+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+(i-1)*(b+b),ay-a);
form1.image4.Canvas.MoveTo(ax+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay-a);
form1.image4.Canvas.LineTo(ax+(b+b)+(i-1)*(b+b),ay-a);
end;
procedure tegak_0(ax,ay,a,b,i:integer);
begin
form1.image4.Canvas.Pen.Color:=clred;
form1.image4.Canvas.Pen.Width:=2;
form1.image4.Canvas.MoveTo(ax+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+(i-1)*(b+b),ay-a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay-a);
form1.image4.Canvas.LineTo(ax+b+(i-1)*(b+b),ay+a);
form1.image4.Canvas.LineTo(ax+(b+b)+(i-1)*(b+b),ay+a);
end;
//*************************** PROCEDURE SINYAL B8ZS
****************************
procedure b8zsplus(ax,ay,a,b,n:integer);
begin
form1.image5.Canvas.Pen.Color:=clred;
form1.image5.Canvas.Pen.Width:=2;
form1.image5.Canvas.MoveTo(ax+(n-1)*b,ay);
form1.image5.Canvas.LineTo(ax+(n-1)*b,ay-a);
form1.image5.Canvas.LineTo(ax+b+(n-1)*b,ay-a);
form1.image5.Canvas.LineTo(ax+b+(n-1)*b,ay);
end;
procedure b8zsminus(ax,ay,a,b,n:integer);

begin
form1.image5.Canvas.Pen.Color:=clred;
form1.image5.Canvas.Pen.Width:=2;
form1.image5.Canvas.MoveTo(ax+(n-1)*b,ay);
form1.image5.Canvas.LineTo(ax+(n-1)*b,ay+a);
form1.image5.Canvas.LineTo(ax+b+(n-1)*b,ay+a);
form1.image5.Canvas.LineTo(ax+b+(n-1)*b,ay);
end;
procedure b8zsnol(ax,ay,a,b,n:integer);
begin
form1.image5.Canvas.Pen.Color:=clred;
form1.image5.Canvas.Pen.Width:=2;
form1.image5.Canvas.MoveTo(ax+(n-1)*b,ay);
form1.image5.Canvas.LineTo(ax+b+(n-1)*b,ay);
end;
//************************** PROCEDURE SINYAL HDB3
*****************************
procedure hdb3plus(ax,ay,a,b,i:integer);
begin
form1.image6.Canvas.Pen.Color:=clred;
form1.image6.Canvas.Pen.Width:=2;
form1.image6.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image6.Canvas.LineTo(ax+(i-1)*b,ay-a);
form1.image6.Canvas.LineTo(ax+b+(i-1)*b,ay-a);
form1.image6.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
procedure hdb3minus(ax,ay,a,b,i:integer);
begin
form1.image6.Canvas.Pen.Color:=clred;
form1.image6.Canvas.Pen.Width:=2;
form1.image6.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image6.Canvas.LineTo(ax+(i-1)*b,ay+a);
form1.image6.Canvas.LineTo(ax+b+(i-1)*b,ay+a);
form1.image6.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
procedure hdb3nol(ax,ay,a,b,i:integer);
begin
form1.image6.Canvas.Pen.Color:=clred;
form1.image6.Canvas.Pen.Width:=2;
form1.image6.Canvas.MoveTo(ax+(i-1)*b,ay);
form1.image6.Canvas.LineTo(ax+b+(i-1)*b,ay);
end;
//*************************** PROGRAM Unipolar

*****************************
procedure uni;
var
tnd,ax,ay,a,b,n:integer;
biner:string;
begin
biner:=form1.biner.Text;
ax:=0; ay:=50; a:=30; b:=15;
tnd:=0;
for n:=1 to length(biner) do
if biner[n]='1' then
if tnd=0 then begin tegak(ax,ay,b,a,n);
satu (ax,ay,b,a,n);
tnd:=1; end
else satu(ax,ay,b,a,n)
else if tnd=1 then begin tegak(ax,ay,b,a,n);
nol (ax,ay,b,a,n);
tnd:=0; end
else nol(ax,ay,b,a,n);
end;
//*************************** PROGRAM RZ
*****************************
procedure rz;
var
ax,ay,a,b,n,q:integer;
biner:string;
begin
biner:=form1.biner.Text;
q:=length(biner);
ax:=0; ay:=50; a:=15; b:=15;
for n:=1 to q do
if biner[n]='1' then
begin
rz_1(ax,ay,b,a,n);
end
else if biner[n]='0' then
begin
rz_0(ax,ay,b,a,n);
end;
end;
//*************************** PROGRAM AMI
*****************************
procedure ami;
var
tnd,ax,ay,a,b,n:integer;
biner,start:string;
begin

biner:=form1.biner.Text;
ax:=0; ay:=50; a:=30; b:=15;
tnd:=0;
start:='atas';
if start='bawah' then tnd:=0
else if start='atas' then tnd:=1;
for n:=1 to length(biner) do
if biner[n]='1' then
if tnd=1 then
begin
ami1_1(ax,ay,b,a,n);
tnd:=0;
end
else
begin
ami1_2(ax,ay,b,a,n);
tnd:=1;
end
else
ami0(ax,ay,b,a,n);
end;
//*************************** PROGRAM MANCHASTER
*****************************
procedure manchaster;
var
tnd, ax,ay,a,b,n:integer;
biner:string;
begin
biner:=form1.biner.Text;
ax:=0; ay:=50; a:=15; b:=15;
tnd:=0;
for n:=1 to length(biner) do
if biner[n]='1' then
if tnd=0 then
begin
mncstr_1(ax,ay,b,a,n);
tnd:=1
end
else
tegak_1(ax,ay,b,a,n)
else
if tnd=1 then
begin
mncstr_0(ax,ay,b,a,n);
tnd:=0;
end
else

tegak_0(ax,ay,b,a,n);
end;
//*************************** PROGRAM B8ZS
*************************
procedure b8zs;
var
tnd,ax,ay,a,b,n,u:integer;
biner,start:string;
begin
biner:=form1.biner.Text;
ax:=0; ay:=50; a:=30; b:=15;
tnd:=0;
u:=0;
start:='false';
for n:=1 to length(biner) do
begin
if start='true' then
if n <= u then
begin
start:='true';
end
else
begin
start:='false';
end;
if biner[n]='1' then
if tnd = 0 then
begin b8zsplus(ax,ay,b,a,n);
tnd:=1;
end
else
begin b8zsminus(ax,ay,b,a,n);
tnd:=0;
end
else if (biner[n]='0') and (biner[n+1]='0') and (biner[n+2]='0') and
(biner[n+3]='0') and
(biner[n+4]='0') and (biner[n+5]='0') and (biner[n+6]='0') and
(biner[n+7]='0') and
(start='false') then
begin
if tnd=1 then
begin
b8zsnol(ax,ay,b,a,n);
b8zsnol(ax,ay,b,a,n+1);
b8zsnol(ax,ay,b,a,n+2);
b8zsplus(ax,ay,b,a,n+3);
b8zsminus(ax,ay,b,a,n+4);

b8zsnol(ax,ay,b,a,n+5);
b8zsminus(ax,ay,b,a,n+6);
b8zsplus(ax,ay,b,a,n+7);
start:='true'; u:=n+7;
end
else
begin
b8zsnol(ax,ay,b,a,n);
b8zsnol(ax,ay,b,a,n+1);
b8zsnol(ax,ay,b,a,n+2);
b8zsminus(ax,ay,b,a,n+3);
b8zsplus(ax,ay,b,a,n+4);
b8zsnol(ax,ay,b,a,n+5);
b8zsplus(ax,ay,b,a,n+6);
b8zsminus(ax,ay,b,a,n+7);
start:='true'; u:=n+7;
end
end
else if biner[n]='0' then
begin
if start='true' then Continue
else b8zsnol(ax,ay,b,a,n);
end
end;
end;
//*************************** PROGRAM HDB3
*****************************
procedure hdb3;
var
tnd,ax,ay,a,b,n,u:integer;
biner,start,tipe:string;
begin
biner:=form1.biner.Text;
ax:=0; ay:=50; a:=30; b:=15;
tnd:=0;
start:='false';
tipe:='genap'; u:=0;
for n:=1 to length(biner) do
begin
if start='true' then
if n <= u then
begin
start:='true';
end
else
begin
start:='false';

end;
if biner[n]='1' then
begin
if tnd = 0 then
begin hdb3plus(ax,ay,b,a,n);
tnd:=1;
end
else
begin hdb3minus(ax,ay,b,a,n);
tnd:=0;
end;
if tipe='genap' then tipe:='ganjil' else tipe:='genap';
end
else if (biner[n-4]='0') and (biner[n-3]='0') and (biner[n-2]='0') and
(biner[n-1]='0') and (biner
[n-1]='0') and
(biner[n]='0') and (biner[n+1]='0') and (biner[n+2]='0') and (biner[n+3]='0')
then
begin
if tipe='genap' then tipe:='ganjil' else tipe:='genap';
end;
if (biner[n]='0') and (biner[n+1]='0') and (biner[n+2]='0') and
(biner[n+3]='0') and
(start='false') then
begin
if tipe='genap' then
begin
if tnd = 1 then
begin
hdb3minus(ax,ay,b,a,n);
hdb3nol(ax,ay,b,a,n+1);
hdb3nol(ax,ay,b,a,n+2);
hdb3minus(ax,ay,b,a,n+3);
tnd:=0;
start:='true'; u:=n+3;
end
else
begin
hdb3plus(ax,ay,b,a,n);
hdb3nol(ax,ay,b,a,n+1);
hdb3nol(ax,ay,b,a,n+2);
hdb3plus(ax,ay,b,a,n+3);
tnd:=1;
start:='true'; u:=n+3;
end;
end

else if tipe='ganjil' then


begin
if tnd = 1 then
begin
hdb3nol(ax,ay,b,a,n);
hdb3nol(ax,ay,b,a,n+1);
hdb3nol(ax,ay,b,a,n+2);
hdb3plus(ax,ay,b,a,n+3);
tnd:=1;
start:='true'; u:=n+3;
end
else
begin
hdb3nol(ax,ay,b,a,n);
hdb3nol(ax,ay,b,a,n+1);
hdb3nol(ax,ay,b,a,n+2);
hdb3minus(ax,ay,b,a,n+3);
tnd:=0;
start:='true'; u:=n+3;
end;
end
end;
if biner[n]='0' then
begin
if start='false' then hdb3nol(ax,ay,b,a,n);
end;
end;
end;
procedure TForm1.binerChange(Sender: TObject);
begin
sumbu(image1,0,50,1000,50);
sumbu(image2,0,50,1000,50);
sumbu(image3,0,50,1000,50);
sumbu(image4,0,50,1000,50);
sumbu(image5,0,50,1000,50);
sumbu(image6,0,50,1000,50);
uni;
rz;
ami;
manchaster;
b8zs;
hdb3;
end;
end.

2.1 HASIL PERCOBAAN

BAB IV
PENUTUP
4.1 KESIMPULAN
Dari percobaan diatas dapat disimpulkan bahwa kita dapat
membuat berbagai macam pengkodean digital (unipolar, RZ, AMI,
Manchester, B8ZS,HDB3) menggunakan delphi, yang mempunyai
berbagai karakteristik yang berbeda-beda, selain itu dapat membuat
sumbu, memntukan nilai tinggi, garis dari beberapa kondisi biner
untuk sinyal diital, dan lembar dari sinyal, penggambaran sumbu serta
penggambaran sinyal itu tersendiri.

Daftar Pustaka
1. http://dicqyharrysandy.blogspot.com/2013/01/pengkodean-dataanalog-dan-digital.html

Anda mungkin juga menyukai