[ 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. |