- LiFePO4 Speicher Test         
Ergebnis 1 bis 10 von 13

Thema: Problem mit Taster ab frage

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #6
    Moderator Robotik Visionär Avatar von radbruch
    Registriert seit
    27.12.2006
    Ort
    Stuttgart
    Alter
    62
    Beiträge
    5.799
    Blog-Einträge
    8
    Code:
    //
    //    ATMega644
    //    lcd-routines.c, lcd-routines.h
    //
    #include <avr/io.h>
    #include <util/delay.h>
    #include <avr/interrupt.h>
    #include <avr/pgmspace.h>
    #include <stdlib.h>
    #include "lcd-routines.h"
    
    uint8_t temp;
    
    int main(void)
    {
    	DDRD = 0x00; // Pins sind Eingang
    	PORTD = 0x0f; // mit aktiviertem PullUp, Taster schalten nach GND
    
    	// Initialisierung des LCD
    	// Nach der Initialisierung müssen auf dem LCD vorhandene schwarze Balken
    	// verschwunden sein
    	lcd_init();
    
    	lcd_string("LCD Start !!!");
    	_delay_ms(100); //Gibt einem die moeglichckeit zu lesen was auf dem LCD steht
    
    	temp = PIND & ((1<<PD3) | (1<<PD2) | (1<<PD1) | (1<<PD0)) ; // Status der Tasten einlesen
    
    	while(1)
    	{
    		if((PIND & ((1<<PD3) | (1<<PD2) | (1<<PD1) | (1<<PD0))) != temp) // Hat sich was geändert?
    		{
    			temp = PIND & ((1<<PD3) | (1<<PD2) | (1<<PD1) | (1<<PD0)); // Ja, deshalb neuen Status merken ...
    			lcd_clear(); // ... und ausgeben
    			lcd_home();
    			switch(~temp & 0x0f) // Achtung! temp wird mit ~ invertiert!
    			{
    				case (1<<PD0): lcd_string("Das ist Taste 0"); break;
    				case (1<<PD1): lcd_string("Das ist Taste 1"); break;
    				case (1<<PD2): lcd_string("Das ist Taste 2"); break;
    				case (1<<PD3): lcd_string("Das ist Taste 3"); break;
    				default:lcd_string("Taste druecken");
    			}
    		}
    	}
    	return(0);
    }
    Ob das besser zu lesen ist? Deine Taster schalten doch nach GND, oder?
    Geändert von radbruch (05.01.2012 um 22:18 Uhr)
    Bild hier  
    Atmel’s products are not intended, authorized, or warranted for use
    as components in applications intended to support or sustain life!

Ähnliche Themen

  1. Problem mit der Taster
    Von oliver123 im Forum Asuro
    Antworten: 6
    Letzter Beitrag: 25.04.2011, 11:46
  2. Frage zu einem Taster
    Von Kesandal im Forum Elektronik
    Antworten: 4
    Letzter Beitrag: 15.08.2010, 14:45
  3. Taster erkennungs Problem
    Von patti16 im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 01.01.2009, 19:21
  4. Eventuelles Taster Problem
    Von duronus im Forum Asuro
    Antworten: 1
    Letzter Beitrag: 25.01.2007, 10:04
  5. Problem bei Taster Abfrage mit ADC
    Von MartinNRW86 im Forum C - Programmierung (GCC u.a.)
    Antworten: 4
    Letzter Beitrag: 20.09.2006, 14:37

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

LiFePO4 Speicher Test