Aceminin C# sorulari

Başlatan z, 30 Mayıs 2012, 08:19:05

Mucit23

Aynı şekilde bende çalışıyorum. Daha Bu C# ile ikinci uygulamam. Çevre uygulamalara bakıyorum.

Şöyle bir kod yazdım seri iletişim için.
Bu şekilde anlaşılırmi bilmiyorum ama bir bakın isterseniz. Belki mantıken ters giden şeyler vardır.
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;
using System.IO.Ports;


namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
       
        public Form1()
        {
            InitializeComponent();
            comboBox1.Text = "1200";
            comboBox2.Text = "Com1";
        }

        string veri,gelen;
        private void button1_Click_1(object sender, EventArgs e)
        {
            int baud;
            veri = textBox1.Text;

            switch(comboBox1.SelectedIndex)
            {
                case 1:
                    baud = 1200;
                    break;
                case 2:
                    baud = 2400;
                    break;
                case 3:
                    baud = 4800;
                    break;
                case 4:
                    baud = 9600;
                    break;
                case 5:
                    baud = 19200;
                    break;
                case 6:
                    baud = 38400;
                    break;
                case 7:
                    baud = 57600;
                    break;
                case 8:
                    baud = 115200;
                    break;
            }

            if (serialPort1.IsOpen)
            {
                serialPort1.Close();
            }

            serialPort1.PortName = comboBox2.SelectedItem.ToString();
            serialPort1.BaudRate = 9600;
            serialPort1.Open();
            serialPort1.Write("deneme");
        
         }


        private void Form1_Load(object sender, EventArgs e)
        {

            if (serialPort1.IsOpen)
            {
                serialPort1.Close();
            }

            foreach (string ComPorts in SerialPort.GetPortNames())
                comboBox1.Items.Add(ComPorts);
        }

        private void serialPort1_DataReceived(object sender, SerialDataReceivedEventArgs e)
        {
            gelen = serialPort1.ReadExisting();
        }
            
    }

}


Birde USB seri dönüştürücülerde çıkan daha bilgisayarda olduğu gibi +-10V genliktemi yoksa TTL midir. Max232 devresi gerekirmi?

ULAGA

Benim yazdığım projedeki gibi delegate kullan.
Gelen veriyi o şekilde al.

subram

#107
Sizin seriport devrenizi denedim sorun yok çalışıyor. elimde usb>485 çevirici var onun ile test ettim. yalnız tek sıkıntı çok uzun olmasada alma işleminde 'biraz' bekleme yapıyor.
http://www.elektronark.org  Türkiyede Elektronik Kültürünü Değiştirmeye Geliyoruz

ULAGA

Alıntı yapılan: subram - 06 Haziran 2012, 17:33:02Birde sizin seriport devrenizi denedim sorun yok çalışıyor. elimde usb>485 çevirici var onun ile test ettim. yalnız tek sıkıntı çok uzun olmasada alma işleminde 'biraz' bekleme yapıyor.

Ben SD kartlı bir devremden veri alışverişi yapıyorum.
Alma konusunda gecikme gibi bir sıkıntı yaşamadım şimdiye kadar.

Mucit23

Programı nasıl test ediyorsunuz?

Ben ulaganın hazırlamış olduğu programı çalıştırmaya kalktığımda resimdeki gibi bir hata veriyor.

picture hosting

ULAGA

Mucit23, senin Project ya da Solution ayarlarında bir sorun oluşmuş.
Kaynak dosyayı bulamıyor.
Benim bilgiyarımdaki yolu gösteriyor. :)
Ben normalde bu projeyi ofisteki bilgisayara indirip denedim, sorun çıkmadı...

Mucit23

#111
Hocam sizin proje masaüstünde. Daha önce salt okunur dosya problemleri ile karşılaşmıştım. Sanırım open project diyip açsam daha iyi olacak.

Olmuyor. Bu hatayı nasıl önlerim.

serhat1990

"Birde USB seri dönüştürücülerde çıkan daha bilgisayarda olduğu gibi +-10V genliktemi yoksa TTL midir. Max232 devresi gerekirmi?"

Usb seri dönüştürücüleri benim kullandığım için konuşuyorum TTL değildir. :) max232 devresi gerekir. Oda hiç birşey ya 4 tane kondansatör. Birde güç kaynağın yoksa 5v regülatör tamamdır. :) Kolay gelsin...

ULAGA

Alıntı yapılan: Mucit23 - 06 Haziran 2012, 17:46:18
Hocam sizin proje masaüstünde. Daha önce salt okunur dosya problemleri ile karşılaşmıştım. Sanırım open project diyip açsam daha iyi olacak.

Olmuyor. Bu hatayı nasıl önlerim.

Bir de şunu dene bakalım:
http://s2.dosya.tc/server14/sYD2Pn/SerialPortApp.zip.html

Mucit23

Alıntı yapılan: ULAGA - 06 Haziran 2012, 17:53:11
Bir de şunu dene bakalım:
http://s2.dosya.tc/server14/sYD2Pn/SerialPortApp.zip.html


Hocam son verdiğiniz dosyada aynı hatayı veriyor. Bi önceki mesajda verdiğim hata mesajına tamam diyip çıkınca ardından aşağıdaki gibi bir uyarı veriyor.

image host

ULAGA

Anladım gösterdiğin resimde açıklık meydana gelmiş.
Bilgisayarında o anda port bulamadığı için combobox dolmuyor.
Dolmadığı için de index seçimi yapamıyor.
Sen hata veren o satırın başına çift taksim koy. ( // diye)

Mucit23

#116
Dediğiniz gibi yapınca oldu. Ama sizin programdada eksiklik var gibi. Mesela ListCOM içeriği boş görünüyor. Neyse Ben birazdaha çalışayım. Yarın bu yaptığım seri port uygulaması deneyeceğim. İşten vakit bulursam aklımda bir iki uygulama daha var onlar üzerindede çalışırım.

Peki Benim verdiğim programın Genel olarak çalışmasında bir problem olurmu?

ULAGA

Alıntı yapılan: Mucit23 - 06 Haziran 2012, 23:27:02
Dediğiniz gibi yapınca oldu. Ama sizin programdada eksiklik var gibi. Mesela ListCOM içeriği boş görünüyor. Neyse Ben birazdaha çalışayım. Yarın bu yaptığım seri port uygulaması deneyeceğim. İşten vakit bulursam aklımda bir iki uygulama daha var onlar üzerindede çalışırım.

Peki Benim verdiğim programın Genel olarak çalışmasında bir problem olurmu?

Programın çalışmasında eksiklik yok.
Ancak deminki gibi açıklıklar olabilir.
ListCOM denetiminin içinin boş görünmesinin sebebi;
O an bilgisayarda tanımlı hiçbir port olmamasıdır.
Senin gönderdiğin kodda delegate kullanılmamış.
O yüzden ver alımında sorun çıkacaktır.
Benim gönderdiğim yazılım, temel alma-gönderme için eksiksiz bir yazılım.
Niye onu kullanmıyorsun?

Mucit23

Hocam açıkçası sizin kod biraz karmaşık geldi. Bende zaten başka yerlerden kopyalarayak yapmaya çalıştım. Veri gönderirse sorun yok. Ama madem bu işe girdik bari tam anlamıyla öğrenelim.

Boş bir vaktinizde vaktinizde seri port kullanımını ve temel veri alma gönderme işlemlerini, anlatırsanız gerçekten çok sevinirim. 

serhat1990

Alıntı yapılan: Mucit23 - 06 Haziran 2012, 23:47:59
Hocam açıkçası sizin kod biraz karmaşık geldi. Bende zaten başka yerlerden kopyalarayak yapmaya çalıştım. Veri gönderirse sorun yok. Ama madem bu işe girdik bari tam anlamıyla öğrenelim.

Boş bir vaktinizde vaktinizde seri port kullanımını ve temel veri alma gönderme işlemlerini, anlatırsanız gerçekten çok sevinirim.

Katılıyorum...