7segment-měnit dvě čísla nezávisle na sobě, aby obě svítili

Dobrý den.
Mohl by mi někdo prosím poradit jak na 7 segmentovém displeji měnit dvě čísla nezávisle na sobě, tak aby obě současně svítili? Jsem v programování microkontrolerů nový a zatím jsem funkční řešení nenašel. Používám WinAVR 20100110 a ATMEGU 644p.
Děkuji. Každá rada dobrá.

kód:

[code]#include <avr/io.h>
#include <util/delay.h>

#define POCET_CISLIC 2

int main (void)
{

DDRC = 0xff; // cely port C je vystupni
//DDRD = 0X03; //pouzivam dolni 2 bity portu D

unsigned char cntd = 1;
int cnt = 0;

//----------POLE HODNOT
unsigned char gen ]=
{
0b00000001, //0
0b01001111, //1
0b00010010, //2
0b00000110, //3
0b01001100, //4
0b00100100, //5
0b00100000, //6
0b00001111, //7
0b00000000, //8
0b00001100, //9
};

//----nekonecna smycka s vlastnim programem
while (1)
{
DDRD = 0x01;
PORTC = gen [cnt];
_delay_ms(1000);

if (cnt == 9)
{
	DDRD = 0x02;
	PORTC = gen[cntd];
	cntd++;
	cnt = 0;
	_delay_ms(1000);
	
}
cnt++;	

}

return 0;
}
[/code]

:arrow_right: administrator: přejmenováno z "7segment - řízení"

Cau,predpokladam ze na portc mas oba 2 segmenty , na portd.0 a 1 mas anody, na portc zapices hodnotu pro nejakou cislici , zapnes anodu pro 1st segment , chvyly pockas (ne 1S,treba 10mS) , vypnes anodu, na portc zapices hodnotu pro nejakou cislici,zapnes anodu pro 2nd segment , chvyly pockas, vypnes anodu, a porad do kola

DDRC = 0xff;   // cely port C je vystupni
DDRD = 0X03;   //pouzivam dolni 2 bity portu D 

int cntj = 0,cntd=0,count=0; 

PORTC = 0; 
PORTD =0;

while (1)
{
	PORTC = gen [cntj];  
	PORTD = 0x01;
	_delay_ms(10);
	PORTD = 0x00;

	PORTC = gen [cntd]; 
	PORTD = 0x02;
	_delay_ms(10);
	PORTD = 0x00;
  
	if(count>50)
		{
		if (cntd == 9)cntd=0;
		if (cntj == 9)
			{
			cntj=0;
			cntd++; 
			}
	else cntj++; 
	count=0;
	}
   else count++;
}

s AVR nedelam tak doufam ze sem tam nic fatalne nes…, na ukazku to snad staci

MiloPS3 hezky jsi to napsal, na to vypínání anody bych asi zapomněl. Sice je tam chybka v posunu číslic, ale něco se musí přenechat i tazateli.

super. z příkladu jsem to pochopil a už to funguje. děkuju