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
sollte hier nich zumindest Pin4 an PortB = 1 sein? Dauerhaft?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); }
und warum passt ihm das nich?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
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







Zitieren

Lesezeichen