1 Son düzenleyen, Mehmet K (27.02.2012 19:49:48)

Konu: Serial portu bulamiyorum

Merhaba herkese!

Kullanıcı program ile hangi serial port üzerinden bir cihaz ile haberleşmek istediğini "ayarlar sayfasında" belirtiyor.
Bunun için bilgisayarda kaç ve hangi com-portlar mevcut olduğunu şöyle tespit ediyorum ve bir listbox ile kullanıcıya sunuyorum:

Visual Fox Pro
LOCAL idx, nPort, lfound

 
ON ERROR Silent_Error()
idx = 0
THISFORM.PgFrame.Pg2.cmbPort_1.ROWSOURCETYPE = 0
FOR nPort = 1 TO 20
  WITH THISFORM.oleMsComm
    WAIT "Com-Port " + ALLTRIM(STR(nPort)) + " test ediliyor ...." WINDOW AT 20, 40 NOWAIT
    gnError = 0
    .CommPort = nPort
    .PortOpen = TRUE
    IF gnError == 0
      THISFORM.PgFrame.Pg2.cmbPort_1.ADDITEM(ALLTRIM(STR(nPort)))
      IF lfound == FALSE
        idx = idx +1
      ENDIF     
      IF nPort == DEFAULT.comport_1
        lfound = TRUE
      ENDIF
    ENDIF
    IF .PortOpen
      .PortOpen = FALSE
    ENDIF
  ENDWITH
ENDFOR
 
WITH THISFORM.PgFrame.Pg2.cmbPort_1
  IF idx > 0
   .LISTINDEX = idx
   .SELECTEDID(idx) = TRUE
  ELSE
    .LISTINDEX = 1
    .SELECTEDID(1) = TRUE
  ENDIF
ENDWITH
ON ERROR my_std_error(ERROR(), MESSAGE(), MESSAGE(1), PROGRAM(), LINENO() )
WAIT CLEAR

Bilgisayarımda 3 Com-Port var: COM-1 (anakart), COM-3 ve COM-4 (PCI-kart). İleişim sorunsuz çalışyor.
Sorun "USB -> RS232 2.0 Adaptör" ile yaşıyorum.
Hyperterminal, Device Manager v.s. yeni oluşan com portu algılıyor (ve Hyperterminal ile cihaz ile temasa geçebiliyorum) ama VFP sadece com-1, com-3 ve com-4 'ü görüyor.

Bunun nedeni ne olabilir?

İlginiz için teşekkürler.
Mehmet

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

2

Re: Serial portu bulamiyorum

Çaresizliğimden Device-Manager'de COM-13'ü COM-9'a değiştirdim.
Tık yok.
COM-5'e değiştirdim.
Ve şimdi herşey normal çalışıyor.

Almancada bir söz var: "Bazen denemek düşünmekden daha üstündür."

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.

3

Re: Serial portu bulamiyorum

Belli saatten sonra çalışmamak lazım. Hata (sanırım herzamanki gibi) ekrandan 60 cm uzaklıkta idi smile

Maalesef hata neydi, onu bilmiyorum.
Terzilerin yeni dikdikleri elbisede yaptıkları gibi, kodların orasını burasını biraz çektim, ittim, tozunu aldım ....
ve birden sorunsuz çalışmaya başladı.
Kodların geçmişi 10 sene (veya daha fazla). Demek bir yerde bir hata vardı, ama normal seriel bağlantılarda sorun yaratmiyordu.

Şu an ComPort'u tekrar 13'e çektım ve sorunsuz görüyorum ve cihaz ile haberleşiyorum. Bilgisayarı kapatım, açtım ... herşey normal.

Bir projenin bitmesi için 3 seçenek vardır: hızlı, ucuz, iyi. Bu seçeneklerden iki tanesini seçiniz.