Hallo

Ich bin seit gestern wieder am üben. Nun hab ich mir was ausgedacht, soweit klappt, nur gibts ein kleines Problem.

Ich nutze einen Port für eine Segmentanzeige. Habe aber nur 5 Pins zur Verfügung. Ich habe jede Zahl definiert. Nun fehlen mir zwei Pins eines anderen Ports für die vollständige Anzeige der Zahlen. Kann man zwei Ports gleichzeitig definieren?

Hier mein Code:

Code:
//----------------------------------------------------------------------
// Titel     : C Grundgerüst für das myAVR-Board
//----------------------------------------------------------------------
// Funktion  : Skorpion-Roboter "Intelligentes Bein"
// Schaltung : ...
//----------------------------------------------------------------------
// Prozessor : ...
// Takt		 : 3.6864 MHz
// Sprache   : C
// Datum     : 10.10.2008
// Version   : 0.1
// Autor     : copious
//----------------------------------------------------------------------
#define 	F_CPU 3686400	// Taktferquenz des myAVR-Boards

#define		zahl			PORTB 			// Port
#define		eins			0b00100001		// 1
#define		zwei			0b00111110		// 2
#define		drei			0b00111011		// 3
#define		vier			0b00110001		// 4
#define		fuenf			0b00011011		// 5
#define		sechs			0b00011111		// 6
#define		sieben			0b00100011		// 7
#define		acht			0b00111111		// 8
#define		neun			0b00111011		// 9
#define		null			0b00101111		// 0
#define		off				0b00000000		// aus

#include	<avr\io.h>		// AVR Register und Konstantendefinitionen
//----------------------------------------------------------------------
main ()						// Hauptprogramm, startet bei Power ON und Reset
{
	DDRD = 0b11111100;		// Pin 2 - 7 (Ausgang)
	DDRB = 0b00111111;		// Pin 0 - 5 (Ausgang)
	DDRC = 0b00000110;		// Pin 0 - 5 (Eingang)
	PORTC = 0b00000110;
	
	do 
	{
		if(!(PINC&0b00000010))
		{
		zahl = eins;
		}
		else if(!(PINC&0b00000100))
		{
		zahl = zwei;
		}
		else
		{
		zahl = off;
		}

	}
	while (true);			// Schleifenende Mainloop
}
//----------------------------------------------------------------------