Hallo,
ich bin dabei die PINS 0 und 1 des Ports F auszulesen. An diesen Pins kann entweder 0 oder 4,99 Volt anliegen. Leider ohne jeglichen erfolg bislang.
Nachfolgend der Code den ich verwendet habe:
Wenn ich PF0 oder PF1 ausgebe, bekomm ich nur die Pin Nummer raus.Code:#include <inttypes.h> #include <util/delay.h> #include <stdlib.h> #include <avr/io.h> #include <avr/interrupt.h> #include <avr/pgmspace.h> #include "uart/uart.h" #define F_CPU 16000000 /* 9600 baud */ #define UART_BAUD_RATE 9600 void blinkLED() { DDRB = (1 << DDB7); _delay_ms(10); DDRB &= ~( 1 << DDB7 ); _delay_ms(10); } int main(void) { uint8_t bPortF0, bPortF1; // Pin0 und Pin1 des PortF auf Eingang DDRF = ( (0 << DDF0) | (0 << DDF1) ); //DDRF = 0x00; //PORTF |= (1<<PF0) | (1<<PF1); /* internen Pull-Up an PC7 aktivieren */ uart_init( UART_BAUD_SELECT(UART_BAUD_RATE,F_CPU) ); sei(); while(1) { /* if (PINF == 0x03) { uart_puts("Aus"); blinkLED(); } */ bPortF0 = PINF; bPortF1 = PF1; //sscanf(msg, "PortF: ", bPortF0); uart_putc(bPortF0); blinkLED(); //uart_putc(bPortF1); //uart_putc((unsigned char) bPortF1); //blinkLED(); //_delay_ms(5000); // 1sek Verzoegerung _delay_ms(800000); } return 0; }
Wenn ich PINF ausgebe bekomme ich jedes mal andere Werte.
Wie kann ich nun diese zwei Pins auslesen und bestimmen, an welchem Spannung anliegt?
Gruß Hugo1234







Zitieren

Lesezeichen