[ shpiki @ 07.04.2013. 16:51 ] @
Drugari, potrebna mi je pomoc, trivijalan program ali ne vidim gde gresim...
Naime, imam 2xCA 7seg. displeje i radim multipleks sa 2xBC557 (PNP)
Jedna baza je vezana na PORTD.7 a druga na PORTB.0.
Na jednom treba da se ispisuje "1" a na drugom "2".
Meni se desava da se na prvom ispisuje "1", dok se na drugom menjaju "1" -> "2" -> "1" -> "2"...
Kôd je ispod, molio bih da mi neko kaze gde gresim.
Code:

#include <avr/io.h>
#include <util/delay.h>

#ifndef F_CPU
#define F_CPU 12000000UL
#endif

int main(void){

    DDRD=0xFF;        //svi izlazni
    PORTD=0xFF;        //svi na 1 (5V)
    
    DDRB=0x3F;        //izlazni PB0-5
    PORTB=0x3F;        //svi na 1 PB0-5 (5V)
    
    while(1){
    
        PORTD=0xff;
        PORTD=0xf9;    //1
        PORTD&=0b01111111;
        _delay_ms(100);
        PORTD|=0b10000000;
        _delay_ms(100);
        
        
        PORTD=0xff;
        PORTD=0xa4;    //2
        PORTB|=(1<<PINB0);
        _delay_ms(100);
        PORTB=~(1<<PINB0);
        _delay_ms(100);    
        
    }//while
}//main

Ignorisati sto je jos pinova PORTB definisano kao izlazno, na ova dva se vezuju displeji.

Unapred hvala na odgovoru.
[ m51 @ 07.04.2013. 17:48 ] @
Mislim da se ne varam u sledećem:

ovom naredbom:
PORTD=0xa4; //2
palis i portd.7 cime se aktivira i displej jedan dok je na data bus-u kod za broj 2.
[ shpiki @ 07.04.2013. 18:40 ] @
0xA4 (hex) je isto sto i 0b10100100 (binarno).
PORTD.7 je 1 (8. bit), znaci dispej treba da je iskljucen (ponavljam, displeje ukljucujem/iskljucujem PNP tranzistorima -> kad je na pinu 1 -> tranz. iskljucen i obrnuto, a displeji su sa zajednickom anodom).
[ uart @ 07.04.2013. 19:23 ] @
Mislim da ovde

PORTB|=(1<<PINB0);
_delay_ms(100);
PORTB=~(1<<PINB0);
_delay_ms(100);

PORTB|=(1<<PINB0); i PORTB=~(1<<PINB0); treba da zamene mesta.

U svakom slučaju bi stavio i PORTB&=~(1<<PINB0); umesto PORTB=~(1<<PINB0); mada to u ovom slučaju nije bitno.

[ shpiki @ 07.04.2013. 21:37 ] @
To je to uart! :) Veliko hvala. Rekoh da je trivijalno, al kad mozak stane stao je.

Jos jednom hvala na odgovorima! Pozdrav.