DEBUG – PBP Türkçe

DEBUG Item {,Item…}

Bir ya da birden çok Item‘i önceden belirlenmiş bir pin üzerinden, yine belirlenmiş bir “baud rate” değeri ile standart asenkron seri iletişim – 8N1 (8 data biti, 1 dur biti, eşlik yok) – formatında gönderir. İlgili pin, otomatik olarak çıkış yapılmaktadır. Item‘in önünde diyez (#) işareti olduğunda, ilgili Item‘in her bir basamağının ASCII karşılığı ard arda gönderilir.

DEBUG, 12-bit çekirdek mimarisine sahip cihazlar hariç tüm cihazlarda SEROUT2‘nin alabildiği tüm veri manipülatörlerini işleyebilir. Ayrıntılı bilgi için SEROUT2‘nin açıklamasını inceleyebilirsiniz.

Manipülatör İşem
{I}{S}BIN{1..16} İkilik (“binary”) tabanda sayı gönderir.
{I}{S}DEC{1..5} Onluk (“decimal”) tabanda sayı gönderir.
{I}{S}HEX{1..4} Onaltılık (“hexadecimal”) tabanda sayı gönderir.
REP c\n c karakterinin n kere tekrar ederek gönderir.
STR ArrayVar{\n} n karakterden oluşan “string”i (katar) gönderir.

DEBUG, PICBASIC’te bulunan asenkron seri iletişim rutinlerinden en küçük boyutlu olanıdır. Bu sayede en az kod alanı kullanarak, program işleyişini bir dış kaynaktan incelemek mümkün olmaktadır. DEBUG ile programın herhangi bir yerinden bir değişkenin değeri, program akışının devam ettiği konum vs. gibi çalışmayı kısaca incelemeye yardımcı olacak bilgiler gönderilebilir. Ayrıca DEBUG komutu sabit bir pinden, sabit bir “baud rate” değeri ile seri iletişim ile bilgi göndermek için de kullanılabilir. Fonksiyonun gönderdiği bilgiler Windows üzerinde, Hyper Terminal gibi programlar ile okunabilir.

Fonksiyonun kullanacağı pin, “baud rate” değeri gibi parametreler aşağıda belirtilen DEFINE ifadeleri ile tanımlanabilir.

‘ “Debug” yapılacak port
DEFINE DEBUG_REG PORTB

‘ “Debug” yapılacak port biti, burada PORTB.0
DEFINE DEBUG_BIT 0

‘ “Debug” bilgisi gönderilirken kullanılacak “baud rate” değeri
DEFINE DEBUG_BAUD 2400

‘ “Debug” modu 0=düzgün, 1=terslenmiş
DEFINE DEBUG_MODE 1

DEBUG, yazılımsal bir seri iletişim kullanmaktadır. Böylece kullanılan cihazın donanımsal bir seri iletşim desteği olması gerekmez. Gönderilen bilgilerin doğru iletilebilmesi için osilatör tanımlamalarına dikkat edilmelidir. DEBUG öntanımlı olarak osilatör hızının 4 MHz olduğunu var sayar. Farklı hızda bir osilatör kullanıyorsa DEFINE komutuyla bu hızı belirtilmelidir.

Bazı durumlarda veri aktarımının hızlı olması karakter kayıplarına neden olabilir. Böyle bir durumda DEFINE ifadesi ile her bir karakter gönderiminden sonra bir süre beklenmesi sağlanabilir. Bu tanımlama ile her karakter gönderimi arasında 1 ila 65,535 mikrosaniye (0.001 – 65.535 millisaniye) bekleme yapılabilir.

Örneğin, karakterler arası 1 milisaniye bekleme için:

DEFINE DEBUG_PACING 1000

kodu kullanılabilir.

MAX 232 gibi, TTL <-> RS232 çeviricilerin ucuz ve bulunabilir olmasına rağmen, bu tür bir ara eleman kullanılmadan direkt olarak seri porta bilgi gönderilebilir. Direkt bağlantıda akım sınırlandırıcı bir direnç kullanımı önerilmektedir. Ek olark, ters TTL (DEBUG_MODE = 1) kullanılması gerekli ve yeterlidir.

PBP üreticisi Melabs tarafından direkt bağlantıda kullanılması önerilen akım sınırlayıcı devre aşağıdaki gibidir:

DEBUG direkt bağlantı için Melabs tarafından önerilen akım sınırlayıcı devre Resim

Bunlara da Bakın

  • DEBUGIN
  • SEROUT2

Tüm fonksiyonların listesine buradan bakabilirsiniz.

Bu yazı, “İzoelektronik – Atölye” grubu tarafından, 90alper90 ve Hazar kullanıcı adlı grup üyelerinin ortak, aktif çalışması ile hazırlanmıştır.



Bağlantılı Yazılar

Yorum yapılmamış. Yapılmış

Yazıyı paylaşın. | Yazı ile ilgili sorun bildirin.

Yorum Yapın ya da Soru Sorun

Yorum yapabilmeniz ya da soru sorabilmeniz için giriş yapmanız gerekmektedir.
Hoşgeldiniz Ziyaretçi. Lütfen giriş yapın veya kayıt olun.
E-posta adresinize aktivasyon iletisi gelmediyse lütfen buraya tıklayın.

Arama Yap
Üye Alanı
 
 
Kayıt Ol || Aktivasyon Kodu İste
Teknik Yardım
9 tane konu henüz çözüme ulaşmamış. Belki siz yardımıcı olabilirsiniz ya da sorunlarınızı çözmenize başkaları yardım edebilir. Teknik Yardım bölümüne buradan ulaşabilirsiniz.
Destek İçin
İzoelektronik Facebook Sayfası
İzoelektronik'e Facebook sayfamıza katılarak destek olabilir, eklenecek yeni yazıları ve gelişmeleri Facebook üzerinden de takip edebilirsiniz.
Güncel Kalın

Eklenen Yazılar E-posta Adresinize Gönderilsin

Bizi RSS ile de takip edebilirsiniz.

Translate
Son Yorumlar
  • thepcman: Ödüllerin tamamı tarafıma ulaştı, izoelektronik’e ve destekçilere teşekkür ederim, benzer organizasyonların daha sık yapılması...
  • 90alper90: Merhabalar, Programın kodunda hata olduğunu sanmıyorum. Dosyadaki ASM dosyası PBP tarafından üretilmiştir. Bu açıdan derlendiği zaman...
  • oguven84: merhaba öncelikle teşekkur ederim.. benim sorunum tum dediklerinizi tek tek yaptım ama hyper terminalde sadece kare basıyor..verdiginiz...
  • fetlab: TMMOB EMO bu yarışmaya destek vermesini çok güzel ve önemli buluyorum. Aldığım kitap çok kayde değer ve inceleyip, okuması çok keyifli bir...
  • bilpaylas: Merhaba, TMMOB EMO’nun hem yarışmaya destek olması ve hemde bizlere kitap göndermesi sebebiyle teşekkürlerimi borç bilirim. Daha...
drupal statistics module