SELAMLAR...
VB'de yazdığım program ile pic çıkışlarını kontrol ettim. Fakat Pic'ten VB'ye veri gönderemedi.
Gönderim için Pic çıkışını max232'nin 11 nolu bacağına bağladım. max232'nin 14 nolu bacağınıda portun 2 nolu(RX) bacağına bağladım.
galiba doğru bağladım.(Pic ile max arasına led bağladım kırpma görülüyor.)
ÖRNEĞİN; pİC'TEN X KARAKTERİ GELİCE X ALINDI DİYE MSG VERSİN, Y GELİRSE Y ALINDI DİYE MSG VERSİN.
VB KODLARI KONUSUNDA YARDIMCI OLABİLİRMİSİNİZ...TEŞEKKÜRLER.
Alıntı yapılan: "ufuk0106"SELAMLAR...
VB'de yazdığım program ile pic çıkışlarını kontrol ettim. Fakat Pic'ten VB'ye veri gönderemedi.
Gönderim için Pic çıkışını max232'nin 11 nolu bacağına bağladım. max232'nin 14 nolu bacağınıda portun 2 nolu(RX) bacağına bağladım.
galiba doğru bağladım.(Pic ile max arasına led bağladım kırpma görülüyor.)
ÖRNEĞİN; pİC'TEN X KARAKTERİ GELİCE X ALINDI DİYE MSG VERSİN, Y GELİRSE Y ALINDI DİYE MSG VERSİN.
VB KODLARI KONUSUNDA YARDIMCI OLABİLİRMİSİNİZ...TEŞEKKÜRLER.
devrede sorun yok gibi görünüyor aynı devreyi bende bugün kurdum ve çalıştırdım. ama programlama bilmediğim için sana yardım eden kişilerin banada yardım etmesini dilerim. kolay gelsin.
başardım picten seri port üzerinden veri yolladım ama sürekli olmuyo. bi tane alıyo duruyo. bana, al dediğimde dur diyene kadar sürekli veri alcak bi program lazım.
@vurkacoglu,
Hocam
www.projeler.de
Formunda Otamasyon bölümünde bir örnek var istersen oraya bak.
@ufuk0106
Simdi PIC serial Porta su sekilde veri gönderdigini kabul edersek
SEND var PORTA.0
BAUD CON 16780 ' Hyper Terminaldede 2400 secilmeli
TRISA = $00000001
PORTA = 0
TRISB = 1
PORTB= 0
Main:
SEROUT2 SEND,BAUD,10,["PIC ILE ",13,_
"SERIAL PORT",13,_
"ÜZERINDEN",13,_
"VERI ALIMI",13,_
"PROJESI",13,13] '13 bir asagi satira yöneltir
goto Main
end
Evet simdi bu COM1'e gelen Veriyi VB ile söyle aliyoruz.
Private Sub Command1_Click()
Text1.Text = MSComm1.Input 'Burda COM1'e gelen veri Text1 icerisine yazdiriliyor.Olay bu kadar basit...
End Sub
Private Sub Form_Load()
MSComm1.CommPort = 1
MSComm1.Settings = "2400,N,8,1"
MSComm1.PortOpen = True
End Sub
Alıntı yapılan: "Digimensch"Hocam
www.projeler.de
Formunda Otamasyon bölümünde bir örnek var istersen oraya bak.
o kadarını bende yaptım. benim derdim programlayı hiç bilmiyor olmam. veri sürekli geliyor ve sürekli olarak ben dur diyene alınması gerekiyor. sonra kaydet dediğimde de bi text dosyasına kaydetmesi. vaktim bol olsa hiç uğraşmıycam böle forum forum dolaşmayı ama vaktim yok yarın sabaha hallolması lazım bunun.
bu arada forum senin galiba hayırlı olsun.
Alıntı Yapo kadarını bende yaptım.
Beni dövecekmissin gibi yazmissin Hocam ... aman haa!!
Hocam programlama derken neyi kast ediyorsun??
PicBasic mi?
Visual Basic mi??
Eger VB ise o zaman denemelerini Hyper Terminal programi ile yap !!
Bu tür bir Program MicroCode Studio icinde var.
@digimesch
ya kusura bakma çok darlandım bildiğin gib değil. olay bitirme ödevi. adam(hocam) durdu durdu tam final haftası bunları bunları da yap dedi. ben dedim programlama bilmiyom yok dedi yapcan dedi. asıl istediği şeyse daha da beter. alınan verilerden grafik oluşturacak. yuh dedim içimden tabi ama anlamadı ya delirecem. umarım forumları okumuyodur ne biliim kıllandım şimdi.
Bak Dostm yazacagin yazilimla PIC'e emir gönderirsin , PIC bu emri alir ve veri göndermeyi durdurur.
Simdi sen PIC'e yazdigin kodun icine IF veya Case döngüsü ile PIC'e "X" karekteri geldiginde PIC COM1'e veri göndermeyi durduracak sekilde yap.
Sonra tekrar PIC'in COM1'e veri göndermesini istedigindede bu seferde "Y" karekteri geldiginde PIC COM1'e veri göndermeye devam etsin.
Böylece bu isi yapacak birde VB ile yazilim yazarsin olur biter.
Tabiki bu isi Terminal programlari ilede yapabilirsin.
tamam ben anladım. ben kendimi ifade edemiyorum.
BENİM PİC E VERİ GÖNDERMEK GİBİ Bİ NİYETİM YOK ZATEN. pic öylece çalışıp elde ettiği verileri sürekli olarak bilgisayara gönderiyo. benimde bu verileri sürekli olarak okumam gerekiyo. pic için veri alınmış alınmamış umrunda değil. veri alma olayında hyperterminal olsun, serial port monitor olsun bu işi yapan program çok program var. ama bunu benim yapmam lazım. ve ben programlama derken pic programlamayı kastedmiyorum visual basic falan bilmiyorum hemde hiç.
sanırım anlaşıldı. şimdi visual basic bilen biri lütfen bana ulaşsın delircem yoksa.
Alıntı yapılan: "hasantoptas"SELAMLAR...
Private Sub MSComm1_OnComm()
Select Case MSComm1.CommEvent
Case comEvReceive
'Add the received byte to the text box...
Indata = Indata + MSComm1.Input
If Len(Indata) > 1 Then '1 karakter alana kadar (eğer daha fazla istiyorsan bu sayıyı değiştir)
If Left(Indata, 1) = "X" Then 'string in ilk karakterine bak
text1="x" 'text1 in içine x yaz
End If
If Left(Indata, 1) = "Y" Then 'string in ilk karakterine bak
text1="y" 'text1 in içine y yaz
End If
Indata = "" 'stringin içini boşalt
End If
MSComm1.InBufferCount = 0
End Select
End Sub
komut butonunun içine ;
data gelmesini istisen MSComm1.RThreshold = 1 yaz
yok istemisen MSComm1.RThreshold = 0 yaz
bir sorunla karşılaşırsan gene yaz.