Elektrotekno.com Ana Sayfa || Programlanabilir Cihaz ve Elemanlar || Microchip Pic Serisi


Açıklama:
Elektrik, Elektronik, Haberleşme ve Otomasyon konularının ağırlıklı olarak konuşulduğu, tartışıldığı ve bilgi paylaşımı yapıldığı forumumuza hoşgeldiniz.
Şu an Kod Paylaşım ve Soru Cevap Alanı kategorisi içerisindeki Microchip Pic Serisi forumunda bulunuyorsunuz.
Bu sayfada üyelerimizin "16F877'de Buton kontrolu sorunu :-/" konusundaki problem, görüş ve önerileri okuyabilir ayrıca konu hakkındaki doküman, resim, proje, devre ve programlara ücretsiz olarak ulaşabilirsiniz. Üye olduktan sonra sizler de konu hakkında sorular sorabilir ya da yorum ve paylaşım yaparak birikimlerinizi aktarabilirsiniz.
Forumdan tam olarak yararlanabilmek için üye olmayı unutmayınız!

pic ile seri port yardım

Kayıt: 04 Arl 2006
Mesajlar: 252

Offline
yalcinaygul
Tarih: 19 05 2008 21:52

arkadaşlar pic ile seri porttan kontrollü dc motor kontrol devresi tasarladım, fakat seri porttan bir türlü kontrol edemiyorum.ccs c yazılımı aşağıdadır,burada klavyeden 0,1,2,3,4,5 rakamlarını girince pwm duty süresini değiştiriyor,yazılımda sorun olacağını sanmıyorum ama bir bakarsanız,birde devreyi mi yanlış yapıyorumm?? bu konu hakkında yardımlarınız bekliyorum





#include"16f877.h"
#fuses xt,nowdt
#use delay(clock=4000000)
#use fast_io(b)
char duty,klavye;
#use rs232(baud=9600,xmit=pin_c6,rcv=pin_c7,parity=N,stop=1)
#int_rda
void seri_haberlesme()
{
disable_interrupts(int_rda);
klavye=getc();
switch(klavye)
{
case '0':duty=0; break;
case '1':duty=50; break;
case '2':duty=100; break;
case '3':duty=150; break;
case '4':duty=200; break;
case '5':duty=250; break;
}
}


void main()
{
output_high(pin_b3);
set_tris_b(0x03);
port_b_pullups(true);
setup_ccp1(ccp_pwm);
setup_timer_2(t2_div_by_16,255,1);
set_pwm1_duty(0);
while(true)
{
set_pwm1_duty(duty);
enable_interrupts(int_rda);
}
}
Kayıt: 12 Nis 2008
Mesajlar: 485
Konum: İzmir
Offline
esb72
Tarih: 26 05 2008 09:38

yalcinaygul yazmış
arkadaşlar pic ile seri porttan kontrollü dc motor kontrol devresi tasarladım, fakat seri porttan bir türlü kontrol edemiyorum.ccs c yazılımı aşağıdadır,burada klavyeden 0,1,2,3,4,5 rakamlarını girince pwm duty süresini değiştiriyor,yazılımda sorun olacağını sanmıyorum ama bir bakarsanız,birde devreyi mi yanlış yapıyorumm?? bu konu hakkında yardımlarınız bekliyorum





#include"16f877.h"
#fuses xt,nowdt
#use delay(clock=4000000)
#use fast_io(b)
char duty,klavye;
#use rs232(baud=9600,xmit=pin_c6,rcv=pin_c7,parity=N,stop=1)
#int_rda
void seri_haberlesme()
{
disable_interrupts(int_rda);
klavye=getc();
switch(klavye)
{
case '0':duty=0; break;
case '1':duty=50; break;
case '2':duty=100; break;
case '3':duty=150; break;
case '4':duty=200; break;
case '5':duty=250; break;
}
}


void main()
{
output_high(pin_b3);
set_tris_b(0x03);
port_b_pullups(true);
setup_ccp1(ccp_pwm);
setup_timer_2(t2_div_by_16,255,1);
set_pwm1_duty(0);
while(true)
{
set_pwm1_duty(duty);
enable_interrupts(int_rda);
}
}


Selam Yalcin,
3 şeyi denermisin?
1- main foksiyonu altına "enable_interrupts(global);" satırını ekleyip yükleyerek tekrar denermisin. eğer olmazsa asağıdakini uygularmısın?
2- seri_haberlesme() procedure altındaki "disable_interrupts(int_rda);" önüne // koyarak iptal ederek denermisin?
3-ayrıca değişkenleri yani char duty,klavye; satırını "#use rs232(baud=9600,xmit=pin_c6,rcv=pin_c7,parity=N,stop=1)" satırının altına alırmsın.bazen CCS bu tarz şeylerden hata vermesede problem yaratabiliyor.

Kolay gelsin
Başa dön
Kayıt: 04 Arl 2006
Mesajlar: 252

Offline
yalcinaygul
Tarih: 28 05 2008 16:44

yardımın için teşekkürler deneyeceğim...
Başa dön
Kayıt: 30 Mar 2008
Mesajlar: 3

Offline
pomak_13
Tarih: 04 06 2008 13:56

devreyi koysaydın onda yanlışlık varsa söyleyebilirdik.
Başa dön
Kayıt: 01 Mar 2006
Mesajlar: 29
Konum: ankara
Offline
sakarya83
Tarih: 04 06 2008 14:13

arkadaş ben bu mantığa benzer bir projeyi arkadaşa yapmıştım. Ama hitec-c ile yamıştım ve kodları da mevcut .Eğer programda bir sorunun olursa hitec-c ile yardım edebilirim.
kolay gelsin
Başa dön



pic ile seri port yardım


Benzer Konular

- Elektronik Haberleşme Staj Raporu (ingilizce) yardım !!!

- iç tesisat hakkında bir soru yardım
- 877 programlama hatası yardım
- 877 pice 4-20 ma okutmak istiyorum - Yardım lütfen
- 16F84A ile Çizgi İzleyen Robot Yapımı - yardım
- Robot Kol için Motor Seçimi Yardım!
- Ares'te autorouter'ın yapamadığı yerler - yardım
- İki yıllık hangi dalı seçmeliyim yardım lütfen!!
- ds 1307 yada ds1302 driver yardım

- iki ayrı trafo merkezinden gelen iki hat - yardım

- c# ile yazılmış sürücü kursu otomasyon programı -yardım


Sitemize üyelik ve içeriğin indirilmesi tamamen ücretsizdir. Sitemizde paylaşılan tüm dokümanlar (Tezler, makaleler, ders notları, sınav soru cevaplar, projeler) paylaşımcıların bireysel çalışmaları olup telif hakları kendilerine aittir ya da açık bir şekilde kamusal alana yerleştirilmiş dokümanların birer kopyalarıdır. Kişilerin bireysel çalışmalarını sitemizde yüklemesinde, sitemizde paylaşıma teşvik eden puanlama sisteminin de etkisi büyüktür. Bunlara rağmen hala size ait olan ve burada bulunmasına izin vermediğiniz dokümanlar varsa iletişim bölümünden yöneticilere bildirmeniz durumunda derhal silineceklerdir.
Powered by phpBB | Translated by phpBB Türkiye | Ads by Google Adsense | Design by Crazy Bat based
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71