Arama butonu
Bu konudaki kullanıcılar: 1 misafir, 1 mobil kullanıcı
4
Cevap
1055
Tıklama
0
Öne Çıkarma
Seri porttan osiloskop yardımıyla sinyal okuma? Yardım
L
12 yıl
Er
Konu Sahibi

Selam Arkadaşlar

Üniversite bitirme projesi değerinde bir proje ile uğraşmaktayım.

Assembly dilinde yazmış olduğumuz kod 1 saniye aralıklarla clock(darbe) sinyal gönderimi yapması istenmekte ve bizde bunu bilgisayarın com1 portundan osiloskop ile kare sinyal olarak almamız gerekiyor.

Bizim ölçümlerimizde üçgen sinyal var nasıl olacak yardımlarınızı bekliyorum..

(Ve bu devresiz olarak windows olmadan bilgisayarın başlangıç anında ms dos programıyla kodumuzu çalıştırmaktayız...)

DH forumlarında vakit geçirmekten keyif alıyor gibisin ancak giriş yapmadığını görüyoruz.

Üye olduğunda özel mesaj gönderebilir, beğendiğin konuları favorilerine ekleyip takibe alabilir ve daha önce gezdiğin konulara hızlıca erişebilirsin.

Üye Ol Şimdi Değil



İ
12 yıl
Yüzbaşı

Bootloader olarak kendi assembly programınınızı PC de çalıştırıyorsunuz. Seri port pinlerinden de 1Hz'lik kare dalga gönderecek doğru mu anladım ?
Yahut 1 sn aralıkla TX pininden 10 bit süresince 0x55 veya 0xAA göndereceksiniz ( 1 0 1 0 dizisi ) baud rate bağlı olarak 10 pulse lık bir kare dalga
dizisi görmeyi hedefliyorsunuz ?


Aklıma gelenler :

- Kare yerine üçgen dalga görüyorsanız rise/fall time lar çok uzuyor demektir. Başka bir yerde dert yok ise PC nin RS232 pinine ya çok büyük bir
kapasitif yük geliyor yahut bir şekilde buradan akım çekiliyor olabilir. Yahut ölçüm hatası vardır, scope ayarlarında yada probe da sorun olabilir.
PC nin RS232 çıkışına sadece scope bağlı değil mi? Başka bir cihaz, kart vs. yok ?

- RS232 sinyalleri (idealde) +-12V tur, standart sanırım 3 ~ 12V arası da olur diyor. Laptoplara takılan USB-RS232 çeviricilerde saçma
sapan seviyeler gördüğüm oldu. Bilgisayar desktop değil mi?

- Öncelikle windows altında basit bir program yazıp ölçüm sisteminizin ve donanımınızın ( PC anakart RS232 bağlantıları, port sağlam mı vs.) doğru çalıştığından emin olun.

- Seçtiniz baud rate donanım olarak uygun değildir. 1200 baud gibi düşük ama standart bir hızda sn de bir 0x55 göndererek deneyin.
Osiloskobun modeli nedir bilmiyorum ama trigger modunu normal e (auto veya single kullanmayın) ve negatif edge e alın, timebase i de
ekranda 20 pulse görebilecek bir değere ayarlayın, dikey kazancı da 12V , tepeden tepeye 24V görebilecek seviyeye alın. RS232 de
5 numara GND, 2 RX, 3 TX. 5. ve 3. pin arasına bakıyor olmanız lazım.


- Bazı chipsetlerde DTR DCE vb. çok kullanılmayan handshaking sinyallerini aktive etmeniz gerekebilir ama böyle bir problem bence çok düşük
bir ihtimal.





< Bu mesaj bu kişi tarafından değiştirildi i386 -- 12 Aralık 2013; 16:05:55 >
Bu mesaja 1 cevap geldi.
L
12 yıl
Er
Konu Sahibi

Evet masaüstü bilgisayar ile ve de herhangi bir devre kullanmaksızın çalışmaktayım yalnız şunu belirteyim ki bu sadece projenin bir parçası normalde rn-42 bluetooth modül ile bilgisayarın seri portu aracılığla haberleşmesi sağlanacakdı.

İşin belli aralıklarda clock sinyal yollama kısmına gelince yazılmış olan kodları buna göre düzenledik gerekli giriş çıkışları yaptık ve de sadece kod ile pc nin çıkışından sinyal okumak nasıl olacak bilmiyorum ama kaç gündür bununla uğraşmaktayım.

Ve elde ettiğim sinyalin gürültü sinyali olma ihtimali de ayrıca çok yüksek belki de bundan belki ötürü bir sinyal elde ediyorum.

Ben tavsiye ettiğiniz işlemleri uygulamam gerekiyor sonrasında sonuçları yine yazarım.

Dilerseniz yazmış olduğum asm kodunuda yollayabiir (80386DX mikroişlemcisi)



İ
12 yıl
Yüzbaşı

PC ye en son assembler ile kod yazdigimda 386DX islemciler en guncel CPU idi, aradan nereden baksaniz yirmi yil gecmis. Pek birsey hatirlamam artik. Biosta COM1 i acma kapama secenegi de olabilir ona da bakin.

Olctugunuz sey gurultu mu emin olmanin en kolay yolu PC nin TX - GND ( pin 3 - 5 ) 10K bir direnc baglayin yuk olarak. Eger gurultu ise sinyal kaybolur, gercekten ucgen dalga var ise degisen pek birsey olmaz.

Bluetooth modulunun userinde bluetooth stack i yok ise isiniz zor, assembler ile bluetooth stack i yazmak akil kari degil. Bu odevin mantigi nedir ? Hocaniz neyi ogretmek istiyor ? Gerek assembler gerekse 386 embedded uygulamalarda bile gecerliligini yitirdi.



< Bu ileti mobil sürüm kullanılarak atıldı >
Bu mesaja 1 cevap geldi.
L
12 yıl
Er
Konu Sahibi

Dediğiniz yöntemlere baktım şuan bir takım ayarlamalarla rs232 nin 2. bacağından kare dalga sinyal okuyabiliyorum.Şöyle programı çalıştırdığımda klavyeden herhangi bir

tuşa basıldığında bu şekilde sinyal gönderimi gerçekleşiyor ve osiloskopta bunu okuyabiliyoruz ama programı otomatik olarak '101010' gibi sonsuz döngü içinde ilerlemesini

nasıl gerçekleştirebiliriz acaba..





< Bu mesaj bu kişi tarafından değiştirildi lehrymut14 -- 19 Aralık 2013; 23:23:05 >

DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.