| Yazar | Mesaj |
mobility | | Tarih: 15.12.2007, 19:50 Mesaj konusu: 16F877 ve PIN'lerde output problemi (CCS) - ACIL! | |
| Merhaba,
Basit bir pager projem var RF ile iletisim kuran, butun projeyi Proteus'ta yapmis ve calistirmis olmama ragmen bir turlu board'da calistiramiyorum..
Denemek icin basit bir led bagladim 877'nin uclarina ve output_high(PIN_??); komutunu verdim.
Ama bir turlu herhangi bir hareketlilik gozlemleyemedim.
Kullanis tarzimda mi bir problem var bilemiyorum..
Alıntı:
while(1)
{
output_high(PIN_A3);
}
Yeni oldugum icin baska bir seyi mi yanlis yaptim acaba diyorum, her sey proteus'ta sorunsuz calisiyor ama bir turlu board'a kuramadim devreyi :-S
Sorun ne olabilir?
Cok acil cevap verebilirseniz cok sevinirim..
|
|
|
|
esat | | Tarih: 15.12.2007, 20:30 Mesaj konusu: | |
| Arkdaşım RF uygulamalarında yükek frekanstan kaynaklanan sorunlar yaşıyor olabilirsin. burda diyelimki bir transistörün veya başka bir elemanın ayaklarının kısa olması bile devrenin çalışmasını etkileyebilir.birbirleriyle ilgisi olmayan iletkenler arası olan mesafe normalde açık devre ve kapasitif özellikte iken, yüksek frekansta bu mesafe kısa devre haline geçebilir.Bu vb. etkileri göz önüne alarak devreyi yeniden kur.ayrıca boardun çok kaliteli değilse ayrı kısımlar arası kısa devre de olmuş olablir ve beslemeninde tam değerde olmasına dikkat et, rf uygulamalarında 12voltluk bir besleme yerine diyelim beslemen 11,5v bile olsa devre çalışmayabilir.bu dediklerime dikkat ederek devreyi yeniden kurmanı tavsiye ederim kolay gelsin...
|
|
mobility | | Tarih: 15.12.2007, 20:51 Mesaj konusu: -- | |
| Anladim ama iki board degistirdim, sifirdan devre elemanlari aldim ama hatayi bulamadim :-S
Bu ufak kodu deniyorum, 16F84'te hicbir sorun cikmiyodu ama 877 ile bi turlu yapamadim..
Kodda sorun olabilir mi? :
Alıntı:
#include <16F877a.h>
#use delay(clock=20000000)
void main()
{
char veri;
while(1)
{
output_high(PIN_A3);
}
}
Kafayi yemek uzereyim cunku :-S
|
|
esat | | Tarih: 15.12.2007, 21:08 Mesaj konusu: | |
| Kodda doğru görünüyor ama... maalesef bende anlamadım sorunu???? bekleyelim bakalım belki bizim bilmediğimizi göremediğimizi başkası görür sorun hallolur.
|
|
turkroniknet | | Tarih: 15.12.2007, 22:15 Mesaj konusu: | |
| PIC in portlarını çıkış olarak tanımlamamışsın(kodun tamamı buradaki gibiyse tabi).
|
|
mobility | | Tarih: 15.12.2007, 22:42 Mesaj konusu: | |
| CCS'te gerek var mi ki :?
Nasi yapabilirim :?:
|
|
turkroniknet | | Tarih: 15.12.2007, 22:58 Mesaj konusu: | |
| CCS yi pek kullanmadığım için pek hatırlamıyorum gerek varmı ama şöyleydi
set_tris_b(0x00); // portb’ yi çıkıs yap
bir denersin olmazsa tekrar bakalım
kolay gelsin
|
|
mfcelik | | Tarih: 17.12.2007, 01:06 Mesaj konusu: | |
| CCS'de yeni bir proje olrak başlatıp hangi portu giriş hangi portu çıkış olarak ayarlayacağını adım adım yapabilirsin, eğer işin içinden çıkamazsan yinede sana örnek kod vereyim
set_tris_a(0xdf);set_tris_b(0);
set_tris_c(0x80);set_tris_d(0x0f);
set_tris_e(0x01);
output_d(0xff);
output_b(0);
output_d(0);
output_c(0);
output_a(0);
|
|
respected | | Tarih: 18.12.2007, 00:40 Mesaj konusu: | |
| #include <16f877.h>
#fuses xt,nowdt,noprotect
#use delay(clock=20000000)
void main()
{
while(1)
{
output_high(pin_b7);
}
}
|
|
patan_mustafa | | Tarih: 19.12.2007, 01:20 Mesaj konusu: | |
| 877de A3 pini adc ile alakalı olduğundan adcyi kapatmalı ve bu pini adc pini olmaktan kurtarmalısın. adcon1=7 sanırım işini görecektir.
|
|
|