Events

:

:

Elektronik | Funk | Software

Der Technik-Blog

  • Social Media

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden

    Der Technik-Blog

    Standalone ATMega28 Read Digital Input

    ATMega328 Taster einlesen

    Alex @ AEQ-WEB

    Zu diesem Artikel gibt es auch ein Video auf Youtube: ATMega328 digitalen Input (Taster) einlesen - Standalone AVR, C

    AMega320 I/O

    In diesem Artikel geht es um das Einlesen digitaler Inputs. Dabei befindet sich auf PORTB0 ein Taster, der mit einem 10KOhm Widerstand gegen die Masse geschaltet ist. Der Taster selbst wird mit 5 Volt versorgt und lässt diese bei der Betätigung auch durch. Auf PORTB1 ist eine LED mit einem 220-Ohm-Vorwiderstand angeschlossen. Am Mikrocontroller befindet sich noch standardmäßig der 16 Mhz Oszillator als Taktgeber. Die restlichen Leitungen sind für den AVRISP Programmer und für die externe Stromversorgung.

    Werbung:

    Wie die Software funktioniert

    Die Software wurde in C mit Amtel Studio geschrieben. Am Beginn vom Code wird die Taktfrequenz vom Oszillator und die benötigte Bibliothek deklariert. Vor dem Hauptprogramm die Ports für den digitalen Eingang und Ausgang definiert. Der Code läuft in einer Schleife und fragt den Status vom Eingang ab. Ist der Eingang auf High, dann wird die LED für 5 Sekunden eingeschaltet. Wenn der Eingang auf LOW ist oder der Taster nicht gedrückt wird, so bleibt die LED aus.

    Quellcode
    #define F_CPU 16000000UL
    #include <avr/io.h>
    #include <util/delay.h>
    int main(void)
    {
    	DDRB |= (1 << DDB1); //Define output
    	DDRB &= ~(1 << DDB0); //Define input
    	while(1)
    	{
    		if(PINB & (1<<PINB0) == 1){ //If button is pressed
    
    		PORTB |= (1<<PORTB1); //Turn LED on
    		_delay_ms(5000); //Wait 5 seconds
    
    		}
    		PORTB &= ~ (1<<PORTB1); //Turn LED off
    	}
    }


    122X122

    Über den Autor

    Alex, der Gründer von AEQ-WEB. Seit über 10 Jahren beschäftigt er sich mit Computern und elektronischen Bauteilen aller Art. Neben den Hardware-Projekten entwickelt er auch Webseiten, Apps und Software für Computer.

    Top Artikel in dieser Kategorie:

    Amtel Studio ATMega328 LED Blink Example in C++

    ATMega328 LED Blink Beispiel

    • DE/EN

    In diesem Artikel zeigen wir, wie eine LED mit dem ATMega328 gesteuert wird. Programmiert wird alles in C++ mit Amtel Studio

    Weiterlesen
    ATMega328 4Bit LCD Display Control

    ATMega328 16x2 4-Bit LCD Display

    • DE/EN

    In diesem Artikel zeigen wir, wie mit dem ATMega328 ein 16x2 Zeichen LCD Display mit 4-Bit angesteuert wird. Programmiert wird alles in C mit dem Amtel Studio

    Weiterlesen

    Social Media

    Werbung:


    Neue Artikel


    Events

    • Keine zukünftigen Events vorhanden