c# programlama dili ile Teknofest 20′ Roket yarışması -Roket yer istasyonu Interface kodları ve görünümü

Haziran 29, 2020 0 Yazar: alikperislam

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;
using System.IO.Ports;

namespace SerialPortReading_Interface{
public partial class a : Form{
public a(){
InitializeComponent();
// aktif olan portları göstermesi için combobox1 :
var ports = SerialPort.GetPortNames();
comboBox1.DataSource = ports;
// 2. combobox için :
// ilk olarak bağlantı hızlarını giriyoruz.
comboBox2.Items.AddRange(new string[] {“300″,”600″,”1200″,”2400″,”4800″,”9600”});
// combobox 3 te yer alacak olan databids sayıları :
var databids = (new string[] { “1”, “2”, “3”, “4”, “5”, “6”,”7″,”8″ });
comboBox3.Items.AddRange(databids); // comport bağlantısı için gerekli ayarları yapmış olduk.
}

    private void label1_Click(object sender, EventArgs e){

    }

    private void label2_Click(object sender, EventArgs e){

    }

    private void Form1_Load(object sender, EventArgs e){

    }

    private void timer1_Tick(object sender, EventArgs e)
    {
        try{




            string bilgi = serialPort1.ReadLine();
            string[] pot = bilgi.Split('*');
            textBox1.Text = pot[1]; // irtifa
            textBox2.Text = pot[0]; // koordinat
            textBox3.Text = pot[2]; // kurtarma             // aldığımız verileri3'e bölerek çalıştırmış oluyoruz pot dizisinden ilk elemanı list1 ikinci elemanı list2 üçüncü elemanı list4'e atıyoruz split yardımıyla.




            serialPort1.DiscardInBuffer(); // veri koptuğunda okumaya çalışıp hata vermemesi için temizliyicek.
        }
        catch (ExecutionEngineException){

        }
    }

    private void button1_Click(object sender, EventArgs e){
        timer1.Start(); // ÇALIŞTIRMAK İÇİN.
        try
        {
            // serialport'un bağlantısını gerçekleştirmek için.
            serialPort1.PortName = comboBox1.Text;
            serialPort1.BaudRate = Convert.ToInt16(comboBox2.Text);
            serialPort1.DataBits = Convert.ToInt16(comboBox3.Text);
            // eğer bağlantı sağlanmışsa bilgi verilmesi ile ilgili;
            if (!serialPort1.IsOpen)
            {
                serialPort1.Open();
                sinyal.Visible = true;
                sinyal.Text = "Başarıyla bağlantı kuruldu.";
                sinyal.ForeColor = Color.Green;

            }
        }
        catch (Exception){
            // eğer bağlantı kurulmazsa :
            sinyal.Visible = true;
            sinyal.Text = "Maalesef bağlantı kurulamadı.";
            sinyal.ForeColor = Color.Red;
        }

    }

    private void button2_Click(object sender, EventArgs e)
    {
        // timer ve serialportu durdurmak için : 
        timer1.Stop();
        serialPort1.DiscardInBuffer();
        serialPort1.Close();
        sinyal.Visible = true;
        sinyal.Text = "Bağlantı sonlandırıldı.";
        sinyal.ForeColor = Color.Red;
        textBox1.Text = ""; // texboxların içindeki bilgiyi temizlemek için kullanılır.

    }

    private void button3_Click(object sender, EventArgs e)
    {
    }

    private void button4_Click(object sender, EventArgs e)
    {
        textBox1.Clear();

    }

    private void button5_Click(object sender, EventArgs e)
    {


    }

    private void textBox2_TextChanged(object sender, EventArgs e)
    {

    }

    private void label5_Click(object sender, EventArgs e)
    {

    }

    private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

    private void textBox1_TextChanged(object sender, EventArgs e)
    {

    }

    private void button5_Click_1(object sender, EventArgs e)
    {
        textBox2.Clear();
    }

    private void button6_Click(object sender, EventArgs e)
    {

    }

    private void listBox3_SelectedIndexChanged(object sender, EventArgs e)
    {

    }

    private void button3_Click_1(object sender, EventArgs e)
    {
        textBox3.Clear();
    }

    private void textBox2_TextChanged_1(object sender, EventArgs e)
    {

    }

    private void label8_Click(object sender, EventArgs e)
    {

    }
}

}