7 segment display ile 5 dakika geriye sayma yardım

Katılım
25 Kas 2009
Mesajlar
34
Puanları
1
Arkadaşlar aşağıdaki kod çalışıyor ancak oldukca zaman alan ve acemice daha basit ve kolay nasıl yazılır teşekkürler.Bunları yazıyorum ki benim gibi yeni başlayan arkadaşlara yardımda olur sanırım teşekürler.

kısaca ne yapmak istedim 5 dakika displayde geriye sayacak nokta beş dakika her saniye yanacak sönecek display 5 ten geriye sayacak 5-4-3-2-1-0 daha sonra a0 a bağlı led yanacak ve sönecek daha sonra a1 ledi yanacak sönecek


void main()
{

setup_timer_0(RTCC_INTERNAL|RTCC_DIV_1);
setup_timer_1(T1_DISABLED);
setup_timer_2(T2_DISABLED,0,1);
setup_comparator(NC_NC_NC_NC);
setup_vref(FALSE);
//Setup_Oscillator parameter not selected from Intr Oscillator Config tab

// TODO: USER CODE!!
while (true)
{
set_tris_b(0x00);
output_b(0x00);
output_high(pin_b0);
output_high(pin_b5);
output_high(pin_b6);
output_high(pin_b2);
output_high(pin_b3);// 5yaz

output_low(pin_b1);
output_low(pin_b4);

output_high(pin_b7);
delay_ms(500);
output_low(pin_b7);
delay_ms(500);

delay_ms(59000);

output_high(pin_b5);
output_high(pin_b1);
output_high(pin_b6);
output_high(pin_b2);// 4 yaz için yanıklar
output_low(pin_b3);

output_low(pin_b0);
output_low(pin_b4);
output_low(pin_b3);// dört için sönükler

output_high(pin_b7);
delay_ms(500);
output_low(pin_b7);
delay_ms(500);

delay_ms(59000);

output_high(pin_b0);
output_high(pin_b1);
output_high(pin_b2);
output_high(pin_b3);
output_high(pin_b6);// üç için yanıklar

output_low(pin_b5);
output_low(pin_b4);// üç için sönükler

output_high(pin_b7);
delay_ms(500);
output_low(pin_b7);
delay_ms(500);

delay_ms(59000);// üç bir dakika displayde

output_high(pin_b0);
output_high(pin_b1);
output_high(pin_b6);
output_high(pin_b4);
output_high(pin_b3);// iki için yanıklar

output_low(pin_b2);
output_low(pin_b5);// iki için sönükler

output_high(pin_b7);
delay_ms(500);
output_low(pin_b7);
delay_ms(500);

delay_ms(59000);

output_high(pin_b1);
output_high(pin_b2);// bir için yanıklar

output_low(pin_b0);
output_low(pin_b6);
output_low(pin_b3);
output_low(pin_b4);
output_low(pin_b5);// bir için sönükler

output_high(pin_b7);
delay_ms(500);
output_low(pin_b7);
delay_ms(500);

delay_ms(59000);// bir bir dakika displayde

output_high(pin_b0);
output_high(pin_b1);
output_high(pin_b2);
output_high(pin_b3);
output_high(pin_b4);
output_high(pin_b5);// sıfır için yanıklar

output_low(pin_b6);// sıfır için sönükler

output_high(pin_b7);
delay_ms(500);
output_low(pin_b7);
delay_ms(500);

delay_ms(59000);// sıfır bir dakika displayde

output_high(pin_a0);// led yandı
delay_ms(1000);
output_low(pin_a0);// led söndü

delay_ms(10000);// iki ledin arasında bekle

output_high(pin_a1);// led yandı
delay_ms(1000);
output_low(pin_a1);// led söndü
delay_ms(1000);//
}
}
 

Forum istatistikleri

Konular
129,758
Mesajlar
929,727
Kullanıcılar
452,512
Son üye
ozvnkoc

Yeni konular

Geri
Üst