PicBasic ve Seri port(VisualBasic)

Başlatan ufuk0106, 03 Mayıs 2004, 20:13:28

ufuk0106

Selam...

 Vb de iki buton ve bir text box kutusuna yazdığım bir 8 bitlik karakteri pic çıkışlarına bağlı ledlere nasıl gönderebilirim.      
    Yardım edersen sevinirim.... TEŞEKKÜRLER...

sonsivri

eğer hala ilgileniyorsan benimle kontak kur.,
daha fazlasını bile yaparız. bu yöntemle servo kontrollü robot kolu yaptım.

admin@sonsivri.com
100245565
Houston, we have a problem.

kasif

sonsivri,

ben şu zamana kadar tamamen kendimin yaptığı bir PC<>pic uygulaması yapamadım. Bu konuda yardımcı olabilir misin?

yapmak istediğim, seri iletişimi olan(16f877) veya olmayan(16f84) pic ile PC nin seri portundan değişken göndermek ve değişken almak.

pic kodları (PBP), devre şeması ve visual basic kodları.

sonsivri

tamamda bana ne yapmak istediğini tam olarak soylemedin.
Kafama göre bir program yazıp buraya koyarım.
led veya LCD koyarım,....
visual basic'de PIC'ten gelen verilerin database'e geçmesini istiyor musun mesela?
yani ne istiyorsan ona göre program yazarım, yapabildiğim ve vaktim olduğu sürece sorun olmaz.
Houston, we have a problem.

sonsivri

PIC kısmı bitti,
VB kodunuda yazınca PC tarafı biter,
yakında burada gerekli linkleri veririm.
Houston, we have a problem.

kasif

iki isteğim olacak, eğer vaktin olursa

1, PC den pic e sürekli veri gönderimi olacak, 4 tane word tipi değişkeni sürekli gönderecek, pic de bunları LCD de yazdıracak. eğer yapılabilirse şöyle bir özellikte isteyeceğim, mesela kablo koptu(biraz abartı) veya kablosuz bir sistem yaptım ama kapsama alanı dışına çıktı, o zaman pic de ki bütün değerler 0 olacak, yani verinin kesilmesi durumunu anlayabileceğiz

2, iki yönede çalışan seri iletişim pic de 4 buton(1,2,3,4) ve LCD olacak, PC deki programda bir text kutusuna bir değer(sayısal) yazacağız, butonlardan birine basılınca, PC de text deki sayısı okuyup, PIC de butonun değeri ile çarpıp LCD ve PC de ekrana yazdıracak.

Mümkün ise bu örnekler, 16F84 de de çalışsın, yani bildiğim kadarı ile bu işlemci seri iletişimi tam desteklememekte, fakat çalışabilmekte ???

Bunları her hangi bir iş için istemiyorum yani, bir çok özelliği destekleyen bir örnek olması için göyle isteklerde bulundum.

Sen PIC için pic basic kullanıyorsan bu çok daha işime yarayacak.

Çok mu şey istedim ??

Teşekkürler ....

sonsivri

merhaba,

dediğin örneğe göre program yazarım.
sitem kapatılmıştı ancak vakit toparlayabildim,
proteus'ta şemasını hazırladım Visual Basic koduna başlamıştım. PIC kısmı basit sorun çıkarmaz.
Aslında vereceğim kodları biraz abartırsak kallavi bir seri iletişim tabanı olan sistem kurabiliriz.

demek sende makina öğrencisisin :)))
Houston, we have a problem.

kasif

Evet uzun süredir sitende sorun vardı, duymuş ve görmüştüm. Geçmiş olsun. Valla siten mi var derdin var. Benimde hevesle aldığım 1-2 domain vardı birşeyler yapayım dedim, ucuz hostlar ile uğraştım .... hiç çekilmez,

Ben 1. için birşeyler yaptım, ve 3 byte bilgiyi 9600 hızında 16f84 den LCD ye yazdırabildim, ayrıca kapsama alanı dışına çıkma durumunu da yapabildim.

Ben seri iletişim ile word tipi değişken gönderebileceğimi sanmıştım ama başaramadım, onun yerine değişkeni 2 ayrı byte çevirip gönderdim ve pic de tekrar birleştirdim. Seri iletişimde byte dan başka bir değişken gitmez mi?

Duyduğuma göre seri iletişimde kablo uzunluğu birkaç 10 metreyi geçinde sistem saçmalamaya başlıyomuş bu doğru mu?

Makina m. öğrencisiyim, bir sorun çıkmazsa haftaya mühendis olacağım  :D  :D  :D

sonsivri

pratikte 10 metreden biraz daha fazla olabilir seri iletişim uzunluğu ama çokta uzayınca verilerde hatalar başlıyor. seri iletişimde sadece ve sadece bir byte taşınır. oda senkron asenkron olarak 11 bir civarı veri katarıyla oluyor. başlangıç bitiş doğrulama biti 8 data biti falan. Yani sen doğru olanı yapmışsın. iki parça halince taşınacak word değişken. eğer C kullanıyorsan özel değişken çevirme fonksiyonlarını kullanabilirsin. ama olay bir byte büyüklüğü geçemez. istersen kendi protokolünü yazabilirsin tabi kasmak lazım.

vay anasını gözüm yaşardı, bende mezun olabilecek miyim acaba:D
bu işlerle uğraşmasaydım mezun olurdum ama geleceğim açık olmazdı.
Houston, we have a problem.

kasif

11 bir derken ne demek istiyorsun tam anlayamadım.

Ben 12 li decoder encoder yapmıştım, değişkenleri bit yapamadığım için işi abartım 12 ayrı byte değişken göndermiştim. Birde tanımlama byte ı 13 byte veri olmuştu. Proteus da çok güzel çalıştı. Gerçeğini bilemem?

Bende bir servo motor var, 180 derece hareket edebiliyor. ben bunu "pauseus" kullanarak hareket ettiriyorum, 600 ile 2400 arası hareket ediyor. Bu durumda bu servoyu hassas kullanabilmek için bir byte yeterli olmuyordu. Onun için seri olarak word göndermeyi deniyordum.

kasif

Mezun olursun merak etme.

Ben aşağı yukarı her sene yaz okuluna gittim, okulu bir sene uzattım, 5. senenin sonunda da yaz okuluna gittim, haftaya sınavlar var.

Yani uzatmadan bitirmek kolay değil, Mak. Müh. tıpdan sonraki en zor meslek(bence), bizim avantajımız, önümüzdeki hastayı tamir ederken kapatabilmemiz  :P

sonsivri

11 bir yazmışım 11 bit olacak o. Yani 1 byte'lık seri veri için cartı curtu ile beraber 11 bit civarı veri gerekiyor.

Servo için PBPlus kullanmıştım. PBPro da bende olsam senin dediğin gibi yapardım ama biraz manuel oluyor  :D

Mezuniyete gelince az önce makel'den çıktım senin kadar sağlam gitmiyoruz.
Houston, we have a problem.

z

Alıntı yapılan: "kasif"Mak. Müh. tıpdan sonraki en zor meslek(bence...

Bence tartışılır.

Mekanizmayı çalıştırdığınızda dişlilerin döndüğünü, kamanın hareket ettiğini, yakıtın borudan aktığını yada dişlerinden bir kaçı kırılmış dişliyi  gözle görebilirsiniz, lakin elektronik, gözle görülemeyen olaylardan ibaret.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

kasif

herkesin kendi bölümünü daha iyi bilir, ben elektronik okumadığım, bununla ilgili fazla tecrübeye sahip olmadığım için bu sözün kendi fikrim olduğunu söyledim.

Birde bizim okulda, sınava giren insan sayısı ile bir dönemdeki alınan öğrenci sayısı çok farklı, mesela bir senede 200 kişi bölüme alınırken bazı derslerde 380 kişi sınava giriyor. yani yaklaşık bir sezon insan bu dersi alttan alıyor.

Senin dediğin gibi dişlilerin çalışmasını görmek önemli, lakin istediğin her şeyi hemen yapamıyorsun, eğer dişliyi ürettiysen ve hata yaptığını gördüysen çok büyük bir probleme sahipsin demektir. :-)

Öyle böyle, elektronikte de arkadaşlarım var. Adamlar acayip kasıyor. Eğer mühendisliğin böyle olacağını bilseydim hiç tercih etmez, dil veya işleymeye girerdim, biraz sosyal yaşantıya sahip olurdum.