ich schau mir das heute nochmal in aller ruhe an


Heist ich sach ihm if(portxy=1) then port(z)== 1 (hiernur stilisiert) und klick dann port xy an und sehe ds port z ebenfalls ein schwarzes kästchen (=1) bekommt

Ich hatte gehofft auch testen zu können wie sich PWM und I²C verhalten. Das wird da etwas schwerer aber fürn anfang reichts danke


edit
Code:
#include <avr/io.h>
#include <inttypes.h>

#ifndef F_CPU
#define F_CPU 3686400UL			/*Quarz mit 3.6864 Mhz */
#endif

#include <avr/delay.h>			/* definiert _delay_ms() */

/* Einfache Funktion zum Entprellen eines Tasters */
inline uint8_t debounce(volatile uint8_t *port, uint8_t pin)
{
	if ( ! (*port & (1 << pin)) )
	{	
		/* Pin wurde auf Masse gezogen, 100ms warten */
		_delay_ms(100);
		if ( ! (*port & (1 << pin)) )
		{
			/* Anwender hat Zeit zum Loslassen des Tasters gegebn */
			_delay_ms(100);
			return 1;
		}
	}
	return 0;
}

int main(void)
{
	DDRB &= ~( 1 << PB0 );				/* PIN PB0 auf Eingang (Taster)		*/
	PORTB |= ( 1 << PB0 );				/* Pullup-Widerstand Aktivieren		*/

	if (debounce(&PINB, PB0))			/* Falls Taster an PIN PB0 Gedrückt	*/
	{
		PORTD = PIND ^ ( 1 << PD7 );	/* LED an PinD7 an bzw ausschalten	*/
	}

	PORTB = (1<<PB4);
}
sollte hier nich zumindest Pin4 an PortB = 1 sein? Dauerhaft?
Code:
c:/winavr/bin/../avr/include/avr/delay.h:36:2: warning: #warning "This file has been moved to <util/delay.h>."
../io.c: In function 'main':
../io.c:40: warning: control reaches end of non-void function
und warum passt ihm das nich?

Also in der Simulation wird nichts 1 und hat auch nich den Status 1.. infoquelle ist das AVR GCC Tutorial, da is auch der code her