Printf komutu nasıl TX pinini otomatik olarak bulup, veri basıyor?

Başlatan LukeSkywalker, 26 Ağustos 2011, 13:31:28

kimlenbu

Ek bilgi :

Keil için konuşmak gerekirse örneğin putchar fonksiyonu tanımlıdır, direkt kullanabilirsin. Ama şöyle bir şey yapmış adamlar, sen bu fonksiyonu tekrar tanımlayabiliyorsun. Senin yazdığın putchar fonksiyonunun önceliği var.

Niye tekrar yazmak gerekir dersen de bu hazır fonksiyonlarda süre aşımı kontrolü yok, eğer beklediğin değer gelmezse programın çakılır kalır, bu yüzden seri iletişimde gelen veriye göre dallanma yapıyorsan nolur nolmaz süre aşımı kontrolü koyman gerekiyor.

Putchar ve Getchar fonksiyonlarını kullanıyorsan 0x0A ve 0x0D gibi özel anlamları olan karakterler gönderirsen de "beklemediğin" sonuçlarla karşılaşırsın.


cicjoe

Baze derleyicilerde de soyle bir durum var. printf kullandiginizda, putchar fonksiyonu bulunamadi diyor. Yani kimse yazmamis, sizden bekliyor. Bazi derleyicilerde de printf IDE'nin debug penceresine yonlendirilmis, baya kullanisli.

Ayrica printf fonksiyonu biraz maliyetli deniyor. Yani ufak MCU'larda printf yerine kendi formatlayicinizi yazin deniyor. Gene bazi derleyiciler 1'den fazla printf secenegi sunabiliyor.
Ornegin IAR'da: