CCS C ikili display sayıcı hatası yardım lütfen...

Başlatan tahokenzo, 24 Ocak 2008, 15:03:21

tahokenzo

Arkadaşlar acil yardım....Resimden de görüldüğü gibi displaylerin her ikiside aynı hatayı veriyor...
ikili displaylerden her ikisi içinde :
diplay için sağ taraf 2.display sol taraftaki 1.display
display_1 0dan 9 a kadar sayacak ve 10 olduğunda diğer display devreye gircek ve display_1-->> 1 display_2-->> 0 olcak 10 yazcak...
Bu işlem her iki display içinde aynı şekilde olcak...Fakat görüldüğü gibi her iki tarafta aynı rakamı yazıyor...11-22-33-44  vs...
Ne yapmam gerekiyor arkadaşlar lütfen yardım...





#include "C:\Program Files\PICC\Projects\deneme.h"
#fuses XT,NOWDT,NOPROTECT,NOBROWNOUT,NOLVP,NOPUT,NOWRT,NODEBUG,NOCPD
#use delay(clock=4000000)
#use fast_io(a)
#use fast_io(b)

#define display_1 pin_a1
#define display_2 pin_a0


char birler=0, onlar=0, i=0;

const int digit[10]={0x3F, 0x06, 0x5B, 0x4F, 0x66, 0x6D, 0x7C, 0x07, 0x7F,
0x6F,};

void main()
{
 
  setup_adc_ports(NO_ANALOGS);
  setup_adc(ADC_OFF);
  setup_psp(PSP_DISABLED);
  setup_spi(SPI_SS_DISABLED);
  setup_timer_1(T1_DISABLED);
  setup_timer_2(T2_DISABLED,0,1);
  setup_CCP1(CCP_OFF);
  setup_CCP2(CCP_OFF);
 
  // TODO: USER CODE!!
 
  set_tris_a(0x00);
  set_tris_b(0x00);
  set_tris_d(0x00);
 
  output_b(0x00);
  output_a(0b000011);
  output_d(0x00);
     
  while(1)    
    {
        for(i=0;i<=15;i++)
        {
           output_b(digit);
           output_d(digit);
           delay_ms(500);
        }
   
   }
   
}[align=center][align=center]

sb_03

while(1)
{
for(i=0;i<=15;i++)
{
output_b(digit);
output_d(digit);
delay_ms(500);
}
her iki displayde aynı değer görülmesi normal çünkü for döngüsü içindeki i değişkenini hem portbye hem portd ye gönderiyoruz.Ayrıca display_1 -display_2 tarama yöntemiyle çalışması gerkiyor.
İyi çalışmalar
Allahım dünyama da bereket ahiretimede bereketler ver ama dünyasını ahiretine tercih edenlerden eyleme