Şimdi Ara

Visual Basic-Hyper Terminal?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
9
Cevap
0
Favori
924
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • 8051 mikroişlemcisini kullanarak seri porttan bilgisayara veri göndereceğim. Şu aşamada hyper terminal den bilgiyi okuyabiliyorum fakat basit bir arayüzle hyperterminal deki bilgiyi arayüzden okumam lazım fakat visual basic hakkında bilgim yok en kısa şekilde nasıl hallederim?

    okunacak bilgi örneğinin hyper terminal çıktısı;

    Algılanan cisim sayısı: 1
    Algılanan cisim sayısı: 2
    Algılanan cisim sayısı: 3
    Algılanan cisim sayısı: 4
    Algılanan cisim sayısı: 5
    .
    .
    .
    .
    .

    Arayüz kullanarak;
    Algılanan cisim sayısı: 1 yazdıktan sonra tek satırda sadece rakam olan kısım yenilense benim için yeterlidir.

    Teşekkürler...



  • Visual Basic 6.0 mı VB.Net mi ?
  • Visual Basic'i boş ver..

    Bu iş için en iyisi C'dir.

    BOOL     m_bPortReady; 
    HANDLE m_hCom;
    CString m_sComPort;
    DCB m_dcb;
    COMMTIMEOUTS m_CommTimeouts;
    BOOL bWriteRC;
    BOOL bReadRC;
    DWORD iBytesWritten;
    DWORD iBytesRead;
    char sBuffer[128];

    m_sComPort = "Com1";
    m_hCom = CreateFile(m_sComPort,
    GENERIC_READ | GENERIC_WRITE,
    0, // exclusive access
    NULL, // no security
    OPEN_EXISTING,
    0, // no overlapped I/O
    NULL); // null template

    m_bPortReady = SetupComm(m_hCom, 1, 1);
    m_bPortReady = GetCommState(m_hCom, &m_dcb);
    m_dcb.BaudRate = 9600;
    m_dcb.ByteSize = 8;
    m_dcb.Parity = NOPARITY;
    m_dcb.StopBits = ONESTOPBIT;
    m_dcb.fAbortOnError = TRUE;

    m_bPortReady = SetCommState(m_hCom, &m_dcb);

    m_bPortReady = GetCommTimeouts (m_hCom, &m_CommTimeouts);

    m_CommTimeouts.ReadIntervalTimeout = 50;
    m_CommTimeouts.ReadTotalTimeoutConstant = 50;
    m_CommTimeouts.ReadTotalTimeoutMultiplier = 10;
    m_CommTimeouts.WriteTotalTimeoutConstant = 50;
    m_CommTimeouts.WriteTotalTimeoutMultiplier = 10;

    m_bPortReady = SetCommTimeouts (m_hCom, &m_CommTimeouts);

    while (1) {
    bReadRC = ReadFile(m_hCom, &sBuffer, 1, &iBytesRead, NULL);
    printf("Bir bayt okundu:%c\n", sBuffer[0]);
    }



    VB için, daha kısa sayılabilecek kod mümkün. Fakat, bu işe VB yerien C ile girişirsen, yarın karşına çıkacak olan bir sürü işte daha rahat edersin. Eğer 8051 ile vs. ye bulaşmışsan, C öğrenmekte çok büyük kazancın olacaktır. Ha, zaten MCU'lara bulaşan birisi için C öğrenmenin pek zorluğuda yoktur.




  • Projeyi anlattığım kişilerin önerisi VB yönünde olduğu için ondan bahsettim yoksa VB hakkında bilgim yok.

    @skoylu_ hocam verdiğin kodları nasıl kullanıcam arayüzü nasıl oluşturmam lazım? (En alttaki sonsuz döngü içerisindeki printf çıktısını nerden görücem yani?)
    Sadece basit bir .exe dosyası yapmak istiyorum
  • Arayüz için Terminal ekranına benzer console ekranından çıktı alırsın yukarıdaki kod ile, kodu gcc ile derlersen sana .exe verir.

    Bu işi kısa yoldan hızlıca halledicem görsellikte içinde olcak diyosan C# ile 5 dakikada bir uygulama yapabilirsin.
  • Şimdi şöyle bir bakarsan..

    C öğrenmek, 8051 ile filan uğraşan biri için o kadar zor olmaz. Bunun yanında C öğrenen o dili yarın 8051 içinde kullanabilir elbette.

    Yani, sen VB, C# vs. öğrenip gitsende, senin yolun zaten bir gün mutlaka C'ye çıkacak. C'yi öğrenene kadar güdük kalacaksın. O yüzden vakit kaybetmemek daha iyi olacaktır.

    Biraz C tutorial, kitap vs. okursan, bu kodu anlayıp yazacak hale çabucak gelirsin.
  • fakat şöyle bir sorun var bu problemi halletmek için C öğrenmeyi bekleyemem biran önce ortaya birşeyler çıkarmam lazım
  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
  • Visual Basic öğrenemye gidene kadar, C ile bunu yapmayı zaten öğrenirsin.

    Hani visual basic'i biliyor olsan, neyse de..

    Sana gereken kodda, zaten ben yapıştırdım, hazır duruyor orada..

    VB bu gibi işler için çok fazla bir şey vermez. Dahası elinize ayağınıza dolaşabilir. O nedenle, bu gibi bir iş için en iyisi C ile girişmektir.
  • Arkadaslar merhaba,

    Birsey sorucam konu ile ilgisi yok belki ama,yardım edebilirseniz sevinirim.
    Hyper terminal kullanmam gerekiyor,ancak microsoft vista da hyper terminal yok mu acaba,bulamıyorum.
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.