<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: CCS-C ile PIC Programlama, Gecikme Fonksiyonlarının Kullanımı</title>
	<atom:link href="http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/feed" rel="self" type="application/rss+xml" />
	<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi</link>
	<description>Elektronik Hakkında Herşey</description>
	<lastBuildDate>Fri, 03 Feb 2012 20:08:23 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
	<item>
		<title>By: Osman</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-2728</link>
		<dc:creator>Osman</dc:creator>
		<pubDate>Fri, 01 Jul 2011 11:10:25 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-2728</guid>
		<description>Hocam iyi günler paylaşımlarınızı gerçekten cok begendm :)
sormak istedgim birşey var.pic c complier kullanıyorum.bir iş üzerinde çalışıyorm 16f84a ile kontrol edeceğim bi sistem var.sensör 4 sn kesintisiz görürse sistem duracak.ama mesela 2 sn, 3sn 3.5sn gibi zamanlar görürse çıkışın on olması devam edecek.programı yazdım fakat karşılastıgım sorun: mesela 2sn gördü giriş kesildi daha sonra 3 sn gördü.çıkışta işlemi 5 sn görmüş gibi yapıyo.yani kısaca sinyal girdigi süreleri hafızasında topluyo.buda benim istedgim 4sn&#039;yi yakalayamama sebep oluyo.yardım ederseniz cok sevinirim.kendi yazdıgım programda şu;

#include
#fuses xt,wdt,put,noprotect
#byte port_a=5
#byte port_b=6
#use delay(clock=4000000,restart_wdt)
#define d input(pin_a0)
#define b port_b
void main() {


set_tris_a(0xff);
set_tris_b(0x00);
   while(1){
port_b=0xff;

if(input(pin_a0)==1 &amp;&amp; b==0xff)

delay_ms(5000);
port_b=0x00;


if(input(pin_a0)==0 &amp;&amp; b==0x00)

delay_ms(5000);
port_b=0xff;



}}

pin_a0=sensör
out_b0=çıkış</description>
		<content:encoded><![CDATA[<p>Hocam iyi günler paylaşımlarınızı gerçekten cok begendm :)<br />
sormak istedgim birşey var.pic c complier kullanıyorum.bir iş üzerinde çalışıyorm 16f84a ile kontrol edeceğim bi sistem var.sensör 4 sn kesintisiz görürse sistem duracak.ama mesela 2 sn, 3sn 3.5sn gibi zamanlar görürse çıkışın on olması devam edecek.programı yazdım fakat karşılastıgım sorun: mesela 2sn gördü giriş kesildi daha sonra 3 sn gördü.çıkışta işlemi 5 sn görmüş gibi yapıyo.yani kısaca sinyal girdigi süreleri hafızasında topluyo.buda benim istedgim 4sn&#8217;yi yakalayamama sebep oluyo.yardım ederseniz cok sevinirim.kendi yazdıgım programda şu;</p>
<p>#include<br />
#fuses xt,wdt,put,noprotect<br />
#byte port_a=5<br />
#byte port_b=6<br />
#use delay(clock=4000000,restart_wdt)<br />
#define d input(pin_a0)<br />
#define b port_b<br />
void main() {</p>
<p>set_tris_a(0xff);<br />
set_tris_b(0&#215;00);<br />
   while(1){<br />
port_b=0xff;</p>
<p>if(input(pin_a0)==1 &amp;&amp; b==0xff)</p>
<p>delay_ms(5000);<br />
port_b=0&#215;00;</p>
<p>if(input(pin_a0)==0 &amp;&amp; b==0&#215;00)</p>
<p>delay_ms(5000);<br />
port_b=0xff;</p>
<p>}}</p>
<p>pin_a0=sensör<br />
out_b0=çıkış</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emrah AYDIN</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-2191</link>
		<dc:creator>Emrah AYDIN</dc:creator>
		<pubDate>Fri, 04 Sep 2009 15:03:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-2191</guid>
		<description>@seyfettin, çalışma güzel oldu ama gerisini getiremiyorum bir türlü :) bi konsantre olamadım gitti...</description>
		<content:encoded><![CDATA[<p>@seyfettin, çalışma güzel oldu ama gerisini getiremiyorum bir türlü :) bi konsantre olamadım gitti&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: seyfettin kazanir</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-2189</link>
		<dc:creator>seyfettin kazanir</dc:creator>
		<pubDate>Fri, 04 Sep 2009 12:23:30 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-2189</guid>
		<description>hocam güzel çalışma olmuş bu tarihten itibaren takip ediyorum.. zaten fxdev de buralarda takıldığına göre bizde gerilerde kalmayalim değilmi ustat :)</description>
		<content:encoded><![CDATA[<p>hocam güzel çalışma olmuş bu tarihten itibaren takip ediyorum.. zaten fxdev de buralarda takıldığına göre bizde gerilerde kalmayalim değilmi ustat :)</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emrah AYDIN</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-2183</link>
		<dc:creator>Emrah AYDIN</dc:creator>
		<pubDate>Mon, 10 Aug 2009 06:05:41 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-2183</guid>
		<description>#include  
yazdığın kodda bu şekilde boş bir satır var.. hatayı buna veriyor olabilir hatayı.. 
16F84 için #fuses XT,NOWDT,PUT,NOPROTECT yeterli...</description>
		<content:encoded><![CDATA[<p>#include<br />
yazdığın kodda bu şekilde boş bir satır var.. hatayı buna veriyor olabilir hatayı..<br />
16F84 için #fuses XT,NOWDT,PUT,NOPROTECT yeterli&#8230;</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: yaren</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-2182</link>
		<dc:creator>yaren</dc:creator>
		<pubDate>Sun, 09 Aug 2009 22:00:43 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-2182</guid>
		<description>hocam iyi günler.
#include &quot;F:\PIC PROGRAM\16f84 brenner\main.h&quot;
#include 
#use delay(clock=4000000)
#fuses NOWDT,XT, NOPUT, NOPROTECT 
 konfigürasyon ayarlarını yaptığımda 
main.h sekmesinde
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)
hata gösteriyor. düzeltmeyi hangi sekmede yapmalıyım

basit bir uygulama yapacaktım 16f84 için ihtiyacım olan
 konfigürasyon ayarlarını yazabilirmisiniz.
16f84 de</description>
		<content:encoded><![CDATA[<p>hocam iyi günler.<br />
#include &#8220;F:\PIC PROGRAM\16f84 brenner\main.h&#8221;<br />
#include<br />
#use delay(clock=4000000)<br />
#fuses NOWDT,XT, NOPUT, NOPROTECT<br />
 konfigürasyon ayarlarını yaptığımda<br />
main.h sekmesinde<br />
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7,bits=8)<br />
hata gösteriyor. düzeltmeyi hangi sekmede yapmalıyım</p>
<p>basit bir uygulama yapacaktım 16f84 için ihtiyacım olan<br />
 konfigürasyon ayarlarını yazabilirmisiniz.<br />
16f84 de</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: elseus</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-1903</link>
		<dc:creator>elseus</dc:creator>
		<pubDate>Sun, 26 Oct 2008 10:13:27 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-1903</guid>
		<description>Hocam detayları anlatan bir mail yolladım .ama sana ulaşıp ulaşmadığından emin değilim.eğer ulaşmadıysa tekrar yollıyayım.saygılar..</description>
		<content:encoded><![CDATA[<p>Hocam detayları anlatan bir mail yolladım .ama sana ulaşıp ulaşmadığından emin değilim.eğer ulaşmadıysa tekrar yollıyayım.saygılar..</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emrah AYDIN</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-1897</link>
		<dc:creator>Emrah AYDIN</dc:creator>
		<pubDate>Fri, 24 Oct 2008 18:30:19 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-1897</guid>
		<description>@elseus
Her türlü eleştiriye açığız arkadaş bir şeyler sormuşbizde cevabını yazdık. Bu arada gönderdiğin maili okudum ve cevap yazdım haberin olsun.</description>
		<content:encoded><![CDATA[<p>@elseus<br />
Her türlü eleştiriye açığız arkadaş bir şeyler sormuşbizde cevabını yazdık. Bu arada gönderdiğin maili okudum ve cevap yazdım haberin olsun.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: elseus</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-1896</link>
		<dc:creator>elseus</dc:creator>
		<pubDate>Fri, 24 Oct 2008 18:00:28 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-1896</guid>
		<description>Hocam sen onlara kulak asma.hem kimseye faydalı bir paylaşım yapmazlar hemde yapanlara uklalık yaparlar.Biz senin açıklamaların sayesinde herkesin kabaca atlayıp geçtiği konular hakkında detayları çözüp anlar olduk...CCS C konusunda kitap yazıp satanlar bile karşısındakinin anlayabileceği şekilde anlatmayı beceremezken sen herkesin anlayabileceği şekilde anlatıyorsun.bundan ötürü şahsım adına teşekkür ediyorum..</description>
		<content:encoded><![CDATA[<p>Hocam sen onlara kulak asma.hem kimseye faydalı bir paylaşım yapmazlar hemde yapanlara uklalık yaparlar.Biz senin açıklamaların sayesinde herkesin kabaca atlayıp geçtiği konular hakkında detayları çözüp anlar olduk&#8230;CCS C konusunda kitap yazıp satanlar bile karşısındakinin anlayabileceği şekilde anlatmayı beceremezken sen herkesin anlayabileceği şekilde anlatıyorsun.bundan ötürü şahsım adına teşekkür ediyorum..</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Emrah AYDIN</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-1894</link>
		<dc:creator>Emrah AYDIN</dc:creator>
		<pubDate>Fri, 24 Oct 2008 14:12:38 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-1894</guid>
		<description>@erol
1. Bu işi yapmak için tek yol delay fonksiyonlarını kullanmaktır demedik bu yazımızın başında bu bir. Yazının başını iyi okuyun lütfen
2. Olayın profesyonellikle alakası yok, tamamen sizin ihtiyacınıza bağlı bi durum çok hassas sürelere ihtiyacınız yoksa zamandan kzanmak için bu fonksiyonları kullanabilirsiniz. Yada örneğin dimmer tetiklemesi gibi hassas gecikmelerinizi timer kullanarak halledebilirsiniz.
3. Bahsettiğiniz olaya gelince tek bir timer interrupt ile rahatlıkla yapılabilir. Hatta delay_fonksiyonları ile de yapılabilir aşağıdaki kod gibi MESELA

int l1,l2,l3,l4,l5,l6,l7;

l1=l2=l3=l4=l5=l6=l7=0;
while(1) {
  delay_ms(1);
 if(++l1 == 100) { led 1 toggle yap l1 = 0 yap}
 if(++l2 == 120) { led 2 toggle yap l2 = 0 yap}
 if(++l3 == 150) { led 3 toggle yap l3 = 0 yap}
 if(++l4 == 180) { led 4 toggle yap l4 = 0 yap}
 if(++l5 == 250) { led 5 toggle yap l5 = 0 yap}
 if(++l6 == 335) { led 6 toggle yap l6 = 0 yap}
 if(++l7 == 650) { led 7 toggle yap l7 = 0 yap}
}
Şimdi siz diyceksiniz bu süreler hassas olumaz? olsa ne olur olmasa ne olur altı üstü led yakıyorum. ayrıyeten üretilen koddaki instruction sayısına  bakılarak döngü süresi cok daha hassas ayarlanabilir

Ayrıyeten CCS-C nin RTOS desteği de kullanılabilir bu dediğiniz uygulama için çok ta şık olur.

&lt;strong&gt;Sizin mantığınızda olan arkadaşlara söylediğimi sizede söylüyorom;

 Siteniz varsa ve bu konuyla ilgili makaleniz de varsa buradan link vereyim.
 Siteniz yok ise bir makale hazırlayın sizin adınıza yayınlayayım.
</description>
		<content:encoded><![CDATA[<p>@erol<br />
1. Bu işi yapmak için tek yol delay fonksiyonlarını kullanmaktır demedik bu yazımızın başında bu bir. Yazının başını iyi okuyun lütfen<br />
2. Olayın profesyonellikle alakası yok, tamamen sizin ihtiyacınıza bağlı bi durum çok hassas sürelere ihtiyacınız yoksa zamandan kzanmak için bu fonksiyonları kullanabilirsiniz. Yada örneğin dimmer tetiklemesi gibi hassas gecikmelerinizi timer kullanarak halledebilirsiniz.<br />
3. Bahsettiğiniz olaya gelince tek bir timer interrupt ile rahatlıkla yapılabilir. Hatta delay_fonksiyonları ile de yapılabilir aşağıdaki kod gibi MESELA</p>
<p>int l1,l2,l3,l4,l5,l6,l7;</p>
<p>l1=l2=l3=l4=l5=l6=l7=0;<br />
while(1) {<br />
  delay_ms(1);<br />
 if(++l1 == 100) { led 1 toggle yap l1 = 0 yap}<br />
 if(++l2 == 120) { led 2 toggle yap l2 = 0 yap}<br />
 if(++l3 == 150) { led 3 toggle yap l3 = 0 yap}<br />
 if(++l4 == 180) { led 4 toggle yap l4 = 0 yap}<br />
 if(++l5 == 250) { led 5 toggle yap l5 = 0 yap}<br />
 if(++l6 == 335) { led 6 toggle yap l6 = 0 yap}<br />
 if(++l7 == 650) { led 7 toggle yap l7 = 0 yap}<br />
}<br />
Şimdi siz diyceksiniz bu süreler hassas olumaz? olsa ne olur olmasa ne olur altı üstü led yakıyorum. ayrıyeten üretilen koddaki instruction sayısına  bakılarak döngü süresi cok daha hassas ayarlanabilir</p>
<p>Ayrıyeten CCS-C nin RTOS desteği de kullanılabilir bu dediğiniz uygulama için çok ta şık olur.</p>
<p><strong>Sizin mantığınızda olan arkadaşlara söylediğimi sizede söylüyorom;</p>
<p> Siteniz varsa ve bu konuyla ilgili makaleniz de varsa buradan link vereyim.<br />
 Siteniz yok ise bir makale hazırlayın sizin adınıza yayınlayayım.</strong></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Erol</title>
		<link>http://www.teknobakis.com/ccs-c-ile-pic-programlama-gecikme-fonksiyonlarinin-kullanimi/comment-page-1#comment-1893</link>
		<dc:creator>Erol</dc:creator>
		<pubDate>Fri, 24 Oct 2008 12:46:23 +0000</pubDate>
		<guid isPermaLink="false">http://www.teknobakis.com/?p=54#comment-1893</guid>
		<description>delay_ms(1);
yazdığımızda CCS kesmeleri kapatıyor mu?
Kapatmazsa zaman doğruluğu olmayacak, Kapatırsa kesmeler kaçırılacak.
 Nedir bu işin çözümü? :)
Öncelikle şunu söylemek isterim, bu tarz programcılığı ancak amatör seviyede olanlar yapar, Delay_ms gibi bir fonksiyon Profesyonel Gömülü programcılıkta  kabul edilebilecek bir fonksiyon değildir. Program tam olarak kesintiye uğratılamaz ! Peki ne yapabiliriz diye sorun lütfen :)
Ben de bi soru sorayım, 7 tane led olsun, bunlar 100 ms, 120, 150, 180, 250, 335, 650 ms aralıklarla yanıp sönsün, Bu mantıkla bunu yapabilirmisiniz ?</description>
		<content:encoded><![CDATA[<p>delay_ms(1);<br />
yazdığımızda CCS kesmeleri kapatıyor mu?<br />
Kapatmazsa zaman doğruluğu olmayacak, Kapatırsa kesmeler kaçırılacak.<br />
 Nedir bu işin çözümü? :)<br />
Öncelikle şunu söylemek isterim, bu tarz programcılığı ancak amatör seviyede olanlar yapar, Delay_ms gibi bir fonksiyon Profesyonel Gömülü programcılıkta  kabul edilebilecek bir fonksiyon değildir. Program tam olarak kesintiye uğratılamaz ! Peki ne yapabiliriz diye sorun lütfen :)<br />
Ben de bi soru sorayım, 7 tane led olsun, bunlar 100 ms, 120, 150, 180, 250, 335, 650 ms aralıklarla yanıp sönsün, Bu mantıkla bunu yapabilirmisiniz ?</p>
]]></content:encoded>
	</item>
</channel>
</rss>

