Selasa, 26 Mei 2015

Transmitting Data (Menghidupkan Lampu Otomatis Menggunakan Kode Karakter)

sedikit mengenai serial transmit
Pengiriman data melalui serial port sangat sederhana, cukup
menggunakan method Write dengan parameter berupa string yang
ingin dikirim.

contoh programnya seperti berikut

langkah pertama untuk membuat program ini pastinya dengan menghidupkan komputer anda terlebih dahulu. setelah itu barulah buka visual studio dan pilih aplikasi C# application form.

lalu desain formnya


buat dan masukkan codingnya :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        Image putih = Properties.Resources.putih;
        Image kuning = Properties.Resources.kuning;

        public Form1()
        {
            InitializeComponent();
            pictureBox1.BackgroundImage = putih;
            pictureBox2.BackgroundImage = putih;
            pictureBox3.BackgroundImage = putih;
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            serialPort1.Open();  
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            if (serialPort1.BytesToRead != 0)
            {
                textBox2.Text = serialPort1.ReadExisting();
            }

        } 

        private void kirim_Click_1(object sender, EventArgs e)
        {
            serialPort1.Write(textBox1.Text);
        }

        #region tombol on/off LED
        private void on1_Click(object sender, EventArgs e)
        {
            try
            {
                serialPort1.Write("1");
                pictureBox1.BackgroundImage = kuning;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        
        private void off1_Click(object sender, EventArgs e)
        {
            try
            {
                serialPort1.Write("0");
                pictureBox1.BackgroundImage = putih;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void on2_Click(object sender, EventArgs e)
        {
            try
            {
                serialPort1.Write("2");
                pictureBox2.BackgroundImage = kuning;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void off2_Click(object sender, EventArgs e)
        {
            try
            {
                serialPort1.Write("3");
                pictureBox2.BackgroundImage = putih;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void on3_Click(object sender, EventArgs e)
        {
            try
            {
                serialPort1.Write("4");
                pictureBox3.BackgroundImage = kuning;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }

        private void off3_Click(object sender, EventArgs e)
        {
            try
            {
                serialPort1.Write("5");
                pictureBox3.BackgroundImage = putih;
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        #endregion

     

        private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
        {

            if (serialPort1.BytesToRead == 1)
            { pictureBox1.BackgroundImage = kuning; }
            if (serialPort1.BytesToRead == 2)
            { pictureBox1.BackgroundImage = putih; }
            if (serialPort1.BytesToRead == 3)
            { pictureBox2.BackgroundImage = kuning; }
            if (serialPort1.BytesToRead == 4)
            { pictureBox2.BackgroundImage = putih; }
            if (serialPort1.BytesToRead == 5)
            { pictureBox3.BackgroundImage = kuning; }
            if (serialPort1.BytesToRead == 6)
            { pictureBox3.BackgroundImage = putih; }
        }

    }
}



setelah program selesai, kemudian jalankan program. 
berikut adalah hasil running dari program diatas :

1. running untuk mengirim dan menerima data







2. running untik menghidupkan lampunya

saat aplikasi menerima satu karakter, maka lampu 1 akan hidup. apabila program menerima dua karakter ,lampu 1 akan off




saat aplikasi menerima tiga karakter, maka lampu 2 akan hidup. apabila program menerima empat karakter ,lampu 2 akan off




saat aplikasi menerima lima karakter, maka lampu 3 akan hidup. apabila program menerima enam karakter ,lampu 3 akan off




demikian program yang saya buat, semoga dapat bermanfaat untuk yang membacanya :)
dan terimakasih untuk kunjungan Anda :)


untuk videonya dapat diakses di link berikut http://youtu.be/a_yPsGY6QtI









Selasa, 19 Mei 2015

serial Receive


Dasar Teori
Port merupakan kumpulan jalur elektronik untuk menyalurkan
data. Port ada yang untuk input saja, output saja atau input/output.
Port dipakai untuk komunikasi antara CPU dengan monitor, keyboard,
mouse dll.
Proses pengiriman data dapat langsung sekaligus secara paralel
dengan menggunakan beberapa kabel, atau satu-persatu secara
berurutan (serial) dengan menggunakan sepasang kabel. Contoh
transmisi data secara paralel adalah komunikasi harddisk IDE dengan
CPU, komunikasi printer dengan komputer. Contoh transmisi data
secara serial adalah komunikasi harddisk SATA dengan CPU, komunikasi
USB dll.
Mikrokontroller umumnya menggunakan standar komunikasi
serial RS232 untuk koneksi dengan perangkat lain. Komputer juga
memiliki port standar serialport, paralelport, USB, VGA dan PS/2. Pada
praktikum ini kita akan mempelajari penggunaan serial port.

langkah pertama, buka komputer dan hidupkan.
lalu buka visual studio dan buat form baru dengan desain seperti tampilan dibawah ini



setelah desain selesai, buat codingannya 



using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace prak1
{
    public partial class Form1 : Form
    {
        String rxString;
        int[] lokasiY = new int[100];
        Graphics objGraphic;
        int a;

        public Form1()
        {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e)
        {
            objGraphic = chart1.CreateGraphics();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (button1.Text == "Connect")
            {
                button1.Text = "Disconnect";
                serialPort1.Open();
                richTextBox1.Text = "";
                a = 0;
            }
            else
            {
                button1.Text = "Connect";
                serialPort1.Close();
            }
        }

        private void serialPort1_DataReceived(object sender, System.IO.Ports.SerialDataReceivedEventArgs e)
        {
            rxString = serialPort1.ReadLine();
            this.Invoke(new EventHandler(DisplayText));
        }

        private void DisplayText(object sender, EventArgs e)
        {
            richTextBox1.AppendText(rxString);
            richTextBox1.ScrollToCaret();

            chart1.Series["Series1"].Points.AddXY(a,Convert.ToInt16(rxString));
            a++;
        }

        private void timer1_Tick(object sender, EventArgs e)
        {
            Pen pena = new Pen(Color.Black);
            int awalX = 0;
            int titikMulaiX, titikMulaiY, titikAkhirX, titikAkhirY;
            // hapus dulu semuanya
            objGraphic.Clear(Color.White);
            for(int i=0;i<99;i++) 
            {
            titikMulaiX = awalX + i*5;
            titikMulaiY = lokasiY[i];
            titikAkhirX = awalX + (i+1)*5;
            titikAkhirY = lokasiY[i+1];
            objGraphic.DrawLine(pena, titikMulaiX,titikMulaiY,titikAkhirX,titikAkhirY);
            }
        }


    }
}


lalu buka arduino dan ketikkan codingannya juga ,seperti tampak pada gambar 


ikuti langkahnya

 Com dipilih sesuka hati ,asalkan merupakan pasangan yang sudah terconect


setelah itu running programnya 
rangkaian arduino yang saya rangkai tidak menggunakan potensio, sehingga grafiknya naik-turun

Rabu, 06 Mei 2015

TRANSISTOR



PENGERTIAN
Transistor adalah komponen elektronika yang terbuat dari bahan semikonduktor dan mempunyai tiga elektroda (triode) yaitu dasar (basis), pengumpul (kolektor) dan pemancar (emitor). Dengan ketiga elektroda (terminal) tersebut, tegangan atau arus yang dipasang di satu terminalnya mengatur arus yang lebih besar yang melalui 2 terminal lainnya.
Pengertian transistor berasal dari perpaduan dua kata, yakni “transfer” yang artinya pemindahan dan “resistor” yang berarti penghambat. Dengan demikian transistor dapat diartikan sebagai suatu pemindahan atau peralihan bahan setengah penghantar menjadi penghantar pada suhu atau keadaan tertentu.

Fungsi Transistor
Transistor ditemukan pertama kali oleh William Shockley, John Barden, dan W. H Brattain pada tahun 1948. Mulai dipakai secara nyata dalam praktik mereka pada tahun 1958. Transistor termasuk komponen semi konduktor yang bersifat menghantar dan menahan arus listrik.Ada 2 jenis transistor yaitu transistor tipe P – N – P dan transistor jenis N – P – N. Transistor NPN adalah transistor positif dimana transistor dapat bekerja mengalirkan arus listrik apabila basis dialiri tegangan arus positif. Sedangkan transistor PNP adalah transistor negatif,dapat bekerja mengalirkan arus apabila basis dialiri tegangan negatif.

Fungsi transistor sangatlah besar dan mempunyai peranan penting untuk memperoleh kinerja yang baik bagi sebuah rangkaian elektronika. Dalam dunia elektronika, fungsi transistor ini adalah sebagai berikut:
Sebagai sebuah penguat (amplifier).
Sirkuit pemutus dan penyambung (switching).
Stabilisasi tegangan (stabilisator).
Sebagai perata arus.
Menahan sebagian arus.
Menguatkan arus.
Membangkitkan frekuensi rendah maupun tinggi.
Modulasi sinyal dan berbagai fungsi lainnya.

Dalam rangkaian analog, transistor digunakan dalam amplifier (penguat). Rangkaian analog ini meliputi pengeras suara, sumber listrik stabil, dan penguat sinyal radio. Dalam rangkaian-rangkaian digital, transistor digunakan sebagai saklar berkecepatan tinggi. Beberapa diantara transistor dapat juga dirangkai sedemikian rupa sehingga fungsi transistor menjadi sebagai logic gate, memori, dan komponen-komponen lainnya.

Prinsip kerja Transistor

Prinsip dasar dari kerja transistor adalah tidak akan ada arus antara collector dan emittor.apabila pada basis tidak diberi tegangan muka/bias.
Bias pada basis ini biasanya diikuti dengan sinyal-sinyal atau pulsa listrik yang nantinya hendak dikuatkan, sehingga pada
kolektor, sinyal yang diinputkan pada kaki basis telah dikuatkan. Kedua jenis transistor (NPN & PNP memiliki prinsip kerja yang sama.
Transistor dapat mengalirkan arus listrik atau juga menguatkan tegangan dikarenakan memiliki ketiga elektroda tersebut. Fungsi lain dari transistor adalah sebagai saklar pemutus dan penyambung aliran listrik ketika pada dasar atau basis diberikan arus yang sangat besar. untuk cara kerja dari transistor sendiri tergantung dari transistor jenis apa yang digunakan.

jenis transistor dan fungsi spesifiknya


Pada dasarnya transistor ada dua jenis atau tipe dari transistor. Ada transistor BJT atau bipolar junction transistor atau juga lebih dikenal dengan istilah transistor bipolar dan transistor FET atau field effect transistor atau juga lebih dikenal dengan istilah transistor effect. Berikut cara kerja transistor BJT. Sesuai dengan namanya transistor bipolar ( BJT ) menggunakan dua polaritas yang membawa muatan untuk membawa arus listrik pada kanal produksinya. Di dalam transistor bipolar ( BJT ) juga terdapat suatu lapisan pembatas yang dinamakan depletion zone, yang pada akhirnya setiap arus listrik yang akan masuk akan melewati pembatas tersebut dan terbagi karena adanya depletion zone ini.

Transistor effect ( FET ) Sedikit berbeda dengan cara kerja pada transistor bipolar. Dimana pada transistor effect ( FET ) ini hanya menggunakan satu jenis polaritar atau pembawa muatan arus listrik. Hal ini jelas berbeda dengan transistor bipolar yang memiliki dua polaritas pembawa muatan. Untuk transistor effect ( FET ), arus yang masuk tidak akan terbagi menjadi dua aliran seperti pada transistor bipolar. Karena posisi letak depletion zone dari resistor effect terdapat di kedua sisi bukan berada di tengah-tengah. Sebenarnya untuk tipe atau jenis transistor dari BJT dan FET sendiri sama saja fungsinya, yang membedakan adalah dari cara kerja transistornya saja.



Cara mengukur/mengecek Transistor



keterangan pada pengecekan Transistor






Bagian-bagian Transistor








Demikianlah uraian singkat mengenai pengertian dan fungsi transistor telah kami sajikan. Semoga bermanfaat bagi Anda yang telah sudi membaca artikel ini :)

















sumber-sumber :
http://komponenelektronika.biz/cara-kerja-transistor.html
http://restupraharaputra.blogspot.com/2014/09/transistor.html


Minggu, 03 Mei 2015

LAPORAN 10 : PICTUREBOX

II. Dasar Teori

Control PictureBox digunakan untuk menampilkan 
gambar dan memanipulasinya. PictureBox dapat 
menangani berbagai macam format file gambar. 
Dalam praktikum ini kita menggunakan PNG. Untuk 
mengisi PictureBox dengan gambar, kita tinggal 
load gambarnya dengan menge-klik Properties 
Image-nya. Kemudian sesuaikan ukuran Width dan 
Height nya sehingga gambar tidak terpotong. 


Gambar pada PictureBox bisa saling di-
copy. Artinya gambar pada instance 
pictureBox1 dapat kita copy-kan ke 
instance pictureBox2. Di sini kita akan 
membuat permainan TicTacToe. Kita 
susun terlebih dahulu gambar kotak 
kosong sebanyak 3x3 sebagai papan 
permainan. Kemudian tambahkan 
gambar lingkaran dan gambar silang 
sebagai pemainnya. Gambar ini kita set 
properties Visible-nya menjadi false. 
Semua gambar kita letakkan di 
PictureBox.  


Inti dari program ini adalah menunggu pemain untuk menempatkan 
pilihannya. Tiap PictureBox kita tambahkan event onClick. Apabila salah 
satu di-klik, akan dicek terlebih dahulu, apakah masih kosong atau 
tidak. Apabila kosong, maka pemain boleh memilih kotak tersebut, 
artinya kita copy-kan simbol silang ke kotak tersebut. Kemudian tinggal 
di-cek, apakah sudah ada yang berhasil membuat 3 segaris atau belum. 
Lalu giliran komputer. Komputer akan memilih secara acak kotak yang 
kosong, kemudian copy-kan simbol lingkaran ke kotak tersebut. 
Demikian terus bergantian antara pemain dan komputer sampai 
semuanya terisi. Tapi apabila ada yang berhasil membuat 3 segaris, 
maka dia dinyatakan sebagai pemenang. 



CONTOH PROGRAM HASIL PRAKTIKUM : TIC TAC TOE SEDERHANA

OPEN VISUAL STUDIO


SETELAH TERBUKA , LALU

BUAT DESIGNNYA





CODINGAN :

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication7tictactoe
{
    public partial class Form1 : Form
    {
        int play = 0;
        int p1 = 0, p2 = 0, p3 = 0, p4 = 0, p5 = 0, p6 = 0, p7 = 0, p8 = 0, p9 = 0; // kondisi awal semua pictureBox
        int input;

        public Form1()
        {
            InitializeComponent();
        }

        void com_expert(int masukan)
        {
            if (masukan == 5) // ketika player memilih pictureBox 5
            {
                if (p2 == 0) // akan di tahan di pictureBox 2
                {
                    if (play == 1)
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p2 = 2; //tampilan sesuai pilihan
                    }

                    else
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p2 = 1;
                    }
                }

            else if (p1 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p1 = 2;
                    }

                    else
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p1 = 1;
                    }
                }

                else if (p3 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p3 = 2;
                    }

                    else
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p3 = 1;
                    }
                }

                else if (p4 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p4 = 2;
                    }

                    else
                    {
                        pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p4 = 1;
                    }
                }

                else if (p6 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p6 = 2;
                    }

                    else
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p6 = 1;
                    }
                }

                else if (p7 == 0 && p3 == 1 && p5 == 1)
                {
                    if (play == 1)
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p7 = 2;
                    }

                    else
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p7 = 1;
                    }
                }

                else if (p8 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p8 = 2;
                    }

                    else
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p8 = 1;
                    }
                }

                else if (p9 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p9 = 2;
                    }

                    else
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p9 = 1;
                    }
                }
            }

            if (masukan == 1)
            {
                if (p2 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p2 = 2;
                    }

                    else
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                       p2 = 1;
                    }
                }
                
            }

            
            if (masukan == 2)
            {
                if (p1 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p1 = 2;
                    }

                    else
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p1 = 1;
                    }
                }

                else if (p3 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p3 = 2;
                    }

                    else
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p3 = 1;
                    }
                }


                else if (p5 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p5 = 2;
                    }

                    else
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o
                            ;
                        p5 = 1;
                    }
                }

                else if (p8 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p8 = 2;
                    }

                    else
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p8 = 1;
                    }
                }
            }

            if (masukan == 3)
            {
                if (p2 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p2 = 2;
                    }

                    else
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                      p2 = 1;
                    }
                }

                else if (p1 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p1 = 2;
                    }

                    else
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p1 = 1;
                    }
                }

                else if (p6 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p6 = 2;
                    }

                    else
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p6 = 1;
                    }
                }

                else if (p5 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p5 = 2;
                    }

                    else
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p5 = 1;
                    }
                }

                else if (p7 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p7 = 2;
                    }

                    else
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p7 = 1;
                    }
                }

                else if (p9 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p9 = 2;
                    }

                    else
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p9 = 1;
                    }
                }
            }

            if (masukan == 4)
            {
                if (p1 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p1 = 2;
                    }

                    else
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p1 = 1;
                    }
                }

                else if (p5 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p5 = 2;
                    }

                    else
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p5 = 1;
                    }
                }

                else if (p6 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p6 = 2;
                    }

                    else
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p6 = 1;
                    }
                }

                else if (p7 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p7 = 2;
                    }

                    else
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p7 = 1;
                    }
                }
            }

            if (masukan == 6)
            {
                if (p3 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p3 = 2;
                    }

                    else
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p3 = 1;
                    }
                }
                else if (p9 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p9 = 2;
                    }

                    else
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p9 = 1;
                    }
                }
                else if (p4 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p4 = 2;
                    }

                    else
                    {
                        pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p4 = 1;
                    }
                }
                else if (p5 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p5 = 2;
                    }

                    else
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p5 = 1;
                    }
                }
            }

            if (masukan == 7)
            {
                if (p3 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p3 = 2;
                    }

                    else
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p3 = 1;
                    }
                }
                else if (p5 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p5 = 2;
                    }

                    else
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p5 = 1;
                    }
                }

                 else if (p1 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p1 = 2;
                    }

                    else
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p1 = 1;
                    }
                }

                else if (p4 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p4 = 2;
                    }

                    else
                    {
                        pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p4 = 1;
                    }
                }
                else if (p8 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p8 = 2;
                    }

                    else
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p8 = 1;
                    }
                }
                else if (p9 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p9 = 2;
                    }

                    else
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p9 = 1;
                    }
                }
            }
            if (masukan == 8)
            {
                if (p2 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p2 = 2;
                    }

                    else
                    {
                        pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p2 = 1;
                    }
                }
                else if (p5 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p5 = 2;
                    }

                    else
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p5 = 1;
                    }
                }
                else if (p7 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p7 = 2;
                    }

                    else
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p7 = 1;
                    }
                }
                else if (p9 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p9 = 2;
                    }

                    else
                    {
                        pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p9 = 1;
                    }
                }
            }
            if (masukan == 9)
            {
                if (p1 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p1 = 2;
                    }

                    else
                    {
                        pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p1 = 1;
                    }
                }

                else if (p3 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p3 = 2;
                    }

                    else
                    {
                        pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p3 = 1;
                    }
                }

                else if (p6 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p6 = 2;
                    }

                    else
                    {
                        pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p6 = 1;
                    }
                }

                else if (p7 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p7 = 2;
                    }

                    else
                    {
                        pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p7 = 1;
                    }
                }



                else if (p8 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p8 = 2;
                    }

                    else
                    {
                        pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p8 = 1;
                    }
                }

                else if (p5 == 0)
                {
                    if (play == 1)
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                        p5 = 2;
                    }

                    else
                    {
                        pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                        p5 = 1;
                    }
                }
            }
        }
        


       

       


        


       


        


       

        private void Form1_Load(object sender, EventArgs e)
        {

        }



        //indikator yang memberikan informasi pemain sebagai apa, x atau o

        // ini jika pemain adalah o
        private void button1_Click(object sender, EventArgs e)
        {
            if (play == 0)
            {
                play = 1;
            }
            textBox2.Text = " YOU PLAYER O AND COM PLAYER X";
        }

        //ini adalah jika pemain x
        private void button3_Click(object sender, EventArgs e)
        {
            if (play == 0)
            {
                play = 2;
            }
            textBox2.Text = " YOU PLAYER X AND COM PLAYER O";
        }




        // ini untuk menentukan kondisi menang
        void menang()
        {
            //1 ,2 ,3
            if (p1 == 2 && p2 == 2 && p3 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p1 == 1 && p2 == 1 && p3 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }
            //4, 5, 6

            else if (p4 == 2 && p5 == 2 && p6 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p4 == 1 && p5 == 1 && p6 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }
            //win 7 , 8 , 9

            else if (p7 == 2 && p8 == 2 && p9 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p7 == 1 && p8 == 1 && p9 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }
            //1, 4 ,7
            else if (p1 == 2 && p4 == 2 && p7 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p1 == 1 && p4 == 1 && p7 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }
            //2, 5, 8
            else if (p2 == 2 && p5 == 2 && p8 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p2 == 1 && p5 == 1 && p8 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }
            //3, 6 , 9
            else if (p3 == 2 && p6 == 2 && p9 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p3 == 1 && p6 == 1 && p9 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }

            //diagonal
            //1, 5 , 9
            else if (p1 == 2 && p5 == 2 && p9 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p1 == 1 && p5 == 1 && p9 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }
            //3, 5 , 7
            else if (p3 == 2 && p5 == 2 && p7 == 2)
            {
                MessageBox.Show("TIM X WINNER BRO!");
            }
            else if (p3 == 1 && p5 == 1 && p7 == 1)
            {
                MessageBox.Show("TIM O WINNER BRO!");
            }

        }

       

        private void button2_Click(object sender, EventArgs e)
        {
            pictureBox1.BackgroundImage = null;
            pictureBox2.BackgroundImage = null;
            pictureBox3.BackgroundImage = null;
            pictureBox4.BackgroundImage = null;
            pictureBox5.BackgroundImage = null;
            pictureBox6.BackgroundImage = null;
            pictureBox7.BackgroundImage = null;
            pictureBox8.BackgroundImage = null;
            pictureBox9.BackgroundImage = null;
            p1 = p2 = p3 = p4 = p5 = p6 = p7 = p8 = p9 = 0;
            textBox2.Text = "";
            textBox1.Text = "";
            play = 0;
        }




        // ini program untuk menentukan pilihan x atau o  masing-masing pictureBox

        private void pictureBox1_Click(object sender, EventArgs e)
        {
            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda"); // indikator jika pemain mengklik pictureBox jika belum memilih
            }

            else if (play > 0 && p1 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                    p1 = 2;
                }

                else
                {
                    pictureBox1.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                    p1 = 1;
                }
                //com();
                input = 1;
                com_expert(1);
            }

            menang();
        }

        private void pictureBox2_Click(object sender, EventArgs e)
        {

            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }

            else if (play > 0 && p2 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                    p2 = 2;
                }

                else
                {
                    pictureBox2.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                    p2 = 1;
                }
                //com();
                input = 2;
                com_expert(2);
            }

            menang();

        }

        private void pictureBox3_Click_1(object sender, EventArgs e)
        {
            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }
            else if (play > 0 && p3 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                    p3 = 2;
                }

                else
                {
                    pictureBox3.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                    p3 = 1;
                }

                //com();
                input = 3;
                com_expert(3);
            }
            menang();
        }

        private void pictureBox4_Click_1(object sender, EventArgs e)
        {
            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }

            else if (play > 0 && p4 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                    p4 = 2;
                }

                else
                {
                    pictureBox4.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                    p4 = 1;
                }

                //com();
                input = 4;
                com_expert(4);
            }

            menang();
        }

        private void pictureBox5_Click_1(object sender, EventArgs e)
        {
            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }
            else if (play > 0 && p5 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                    p5 = 2;
                }

                else
                {
                    pictureBox5.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;

                    p5 = 1;
                }

                input = 5;
                com_expert(5);
                //com();

            }
            menang();
        }

        private void pictureBox6_Click_1(object sender, EventArgs e)
        {
            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }

            else if (play > 0 && p6 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;

                    p6 = 1;
                }

                else
                {
                    pictureBox6.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;

                    p6 = 1;
                }

                //com();
                input = 6;
                com_expert(6);

            }
            menang();
        }

        private void pictureBox7_Click_1(object sender, EventArgs e)
        {
            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }

            else if (play > 0 && p7 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;

                    p7 = 2;
                }

                else
                {
                    pictureBox7.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;

                    p7 = 1;
                }

                //com();
                input = 7;
                com_expert(7);

            }
            menang();
        }

        private void pictureBox8_Click_1(object sender, EventArgs e)
        {

            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }

            else if (play > 0 && p8 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;

                    p8 = 2;
                }

                else
                {
                    pictureBox8.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                    p8 = 1;
                }

                //com();
                input = 8;
                com_expert(8);
            }
            menang();            
        }

        private void pictureBox9_Click_1(object sender, EventArgs e)
        {
            if (play == 0)
            {
                MessageBox.Show("Silahkan Masukkan Pilihan anda");
            }

            else if (play > 0 && p9 == 0)
            {
                if (play % 2 == 0)
                {
                    pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.x;
                    p9 = 2;
                }

                else
                {
                    pictureBox9.BackgroundImage = WindowsFormsApplication7tictactoe.Resource1.o;
                    p9 = 1;
                }

                //com();
                input = 9;
                com_expert(9);
            }
            menang();
        }
    }
}






HASIL SETELAH DI RUNNING :