DelayMs gecikme sorusu

Başlatan chicken, 21 Aralık 2006, 11:54:38

chicken

merhaba arkadaşlar picc lite kullanıyorum yeniyim,DelayMs komutu ile en fazla 255 ms gecikme oluyor bu süreyi arttırmak mümkün mü?hangi komutla, yada DelayMs komutunu nassıl bir döngüye sokabiliiriz,mesela ben 2 sn gecikme istiyorum bunu nasıl yapabilirim, ilginiz için şimdiden teşekkürler

arslan74

Sana örnek kod yolluyorum.

void delay_ms(unsigned char cnt){

	unsigned char c2,c3;

	while (cnt--){
		c2 = 10;
		while (c2--){
			NOP();
			NOP();
			NOP();
			c3 = 14;
			while(--c3)
			;
		}
	}


}



void delay_1s(void){
	
	delay_ms(200);
	delay_ms(200);
	delay_ms(200);
	delay_ms(200);
	delay_ms(200);	
}




void delay_s(unsigned char d){
	
	while (d--)
	delay_1s();	
	
}


Saniye cinsinden gecikme için usteki kodu kullanabilirsin. Ancak Bu kod 4Mhz kristal için yazılımış. Kristal değişiminde sürelerde değişebilir.

Çalışmalarınızda başarılar.