Şimdi Ara

ft232R ve visual basic

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
3
Cevap
0
Favori
975
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • herkeze meraba, ardaşlar ft232R entegresi ile usbden veri almaya çalışıyorum arayüz programını visual basicte yazdım mscomm komutu ile veri gönderğimde sorun yok veri alabiliyorum fakat ft_write komutunu kullandığımda entegrenin üzerindeki tx ışığı yanıyor çıkışdan veri gönderiyor fakat aynı pic programında veriyi alamıyor iki yöntemdede aynı ayarları kullanıyorum.

    mscomm için :

    MSComm1.CommPort = 4
    MSComm1.Settings = "115200,n,8,1"
    MSComm1.PortOpen = True

    ft_write için :

    baunrate'i ayarlamak için:

    If FT_SetBaudRate(lngHandle, 115200) = FT_OK Then
    LoggerList.AddItem "Set Baud Rate OK"
    Else
    LoggerList.AddItem "Set Baud Rate Failed"
    End If

    port ayarlarını yapmak için:

    If FT_SetDataCharacteristics(lngHandle, 8, 1, 0) = FT_OK Then
    LoggerList.AddItem "Set Data Characteristics OK"
    Else
    LoggerList.AddItem "Set Data Characteristics Failed"
    End If

    sizce bu iki ayar arasında bi fark varmı işin içinden çıkamadım.

    bir diğer sorun ise veri gönderirken for next döngüsü kullanıyorum, gonder(255) şeklinde bir diziyi gönderiyorum fakat bu işlemi yaparken program çok kasıyor ve olması gerektiğinden daha uzun bir sürede gönderiyor bunun daha pratik yolu varmıdır.

    yardımlarınız için şimdiden teşekkürler.







  • çip için gerekli driverları yükleyin
    http://www.ftdichip.com/FTDrivers.htm
    ve
    http://www.ftdichip.com/Projects/CodeExamples/VB.htm
    adresindeki VB kod örneklerine bakın.

    mscomm ilede çipe ulşmaya çalışmayın...




  • sitedeki visual basic kodlarını inceledim nerdeyse bütün komutlar war fakat FT_WRITE komutunun kullanımını vermemişler, modelsdeki tanımlamalara göre FTwrite komutuyla gönderiyorum çıkıştan sinyal alıyorum kakat isteğim gibi değil 1 byte göndermeme rağmen çıkıştan 1 den fazla byte gönderiyor çıkış sinyali resimdeki gibi:

     ft232R ve visual basic



    vede for next döngüsüyle arka arkaya kod gönderdiğimde iki kod arasında bekleme olduğu görülüyor yani bir byte'ı 1ms'de gönderiyor. alttaki resimdede arka arkaya gönderilen kodlar var.

     ft232R ve visual basic


    acaba port ayarlarıyla ilgili bi hatamı yapıyorum. normalde mscomm ile bir byte gönderdiğimde 1 start biti 8 data biti ve 1 stop biti gönderiyor fakat FT_write ile gönderdiğimde çok daha fazla kod gönderiyor, sizce ben nerde yanlış yapıyorum yardımlarınız için şimdiden teşekkürler

    VB kodları aşağıdaki gibi:

    ftstatus = FT_Open(0, lngHandle)
    If ftstatus <> FT_OK Then
    LoggerList.AddItem "Open Failed status=" & ftstatus
    Exit Sub
    Else
    LoggerList.AddItem "Open OK"
    End If


    If FT_SetBaudRate(lngHandle, 250000) = FT_OK Then
    LoggerList.AddItem "Set Baud Rate OK"
    Else
    LoggerList.AddItem "Set Baud Rate Failed"
    End If



    If FT_SetDataCharacteristics(lngHandle, 8, 1, 0) = FT_OK Then
    LoggerList.AddItem "Set Data Characteristics OK"
    Else
    LoggerList.AddItem "Set Data Characteristics Failed"
    End If

    For a = 1 To 1024

    If FT_Write(lngHandle, gonder(a), 8, bytesend) = FT_OK Then
    LoggerList.AddItem "FT_write OK"
    Else
    LoggerList.AddItem "FT_write Failed"
    End If

    Next


    If FT_Close(lngHandle) <> FT_OK Then
    LoggerList.AddItem "Close Failed"
    Exit Sub
    Else
    LoggerList.AddItem "Closed OK"
    End If




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.