Peace, wie kann ich dem Asuro merken lassen, wie oft ein Taster gedrückt wurde? Möchte z.B drei mal den taster 1 drücken, dann soll er was bestimmtes machen
bye
Druckbare Version
Peace, wie kann ich dem Asuro merken lassen, wie oft ein Taster gedrückt wurde? Möchte z.B drei mal den taster 1 drücken, dann soll er was bestimmtes machen
bye
du fragst erst die taster ab, wertest das aus, und schreibst das ergebnis in ein arrey
if (status[taster_nummer] == GEDRUECKT) so in der art zumindest.
dann fragst du die taster mit ner while schleife immer weider ab, und schreibst das in ein anderes arrey.
du musst dann arrey 1 mit arrey2 vergeichen. wenn ein unterschied da iost, gab es eine veränderung, die du in irgendeiner variable festhalten kannst.
allerdigns zählt das jetzt drücken und loislassen der taster.
wenn du nur die anzah der drückungen zählen willst, musst du, wenn eine veränderung festgestellt wird, diese erst in einer anderen variable festhalten . wenn diese variable dann 2 ist, inkrementierst du die variable w die anzahl der dürkcungen gespeichert ist.
mfg EDH
danke für deine hilfe ;)
Hallo,
Ich habe leider auch ein merkwürdiges Problem, allerdings beim Kompilieren von einem Programm (ASURO). Eigentlich macht das makefile das, was es immer machen sollte, aber immer erscheint eine komische Fehlermeldung:
...
avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=myProgram.lst myProgram.c -o myProgram.o
avr-gcc -c -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=C:/AsuroLib/lib/asuro.lst C:/AsuroLib/lib/asuro.c -o asuro.o
avr-gcc -mmcu=atmega8 -DF_CPU=8000000UL -I. -g -Os -IC:/AsuroLib/lib/inc -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-ahlms=myProgram.o myProgram.o asuro.o --output myProgram.elf -Wl,-Map=myProgram.map,--cref -LC:/AsuroLib/lib -lm -lasuro
Das ist bei mir rot geschrieben und ist offensichtlich ein Fehler. Sonst sind aber keine anderen Warnungen oder Errors vorganden..
C:\WinAVR\bin\..\lib\gcc-lib\avr\3.3.1\..\..\..\..\avr\bin\ld.exe: BFD 2.14 20030612 + coff-avr-patch (20030831) internal error, aborting at ../../bfd/reloc.c line 444 in bfd_get_reloc_size
Am Ende sagt er dann ein Error...
C:\WinAVR\bin\..\lib\gcc-lib\avr\3.3.1\..\..\..\..\avr\bin\ld.exe: Please report this bug.
make: *** [myProgram.elf] Error 1
> Process Exit Code: 2
Kann mir irgendjemand helfen dabei?
danke im Vorraus
lg ;)
WinAVR 3.3.1 ist eine alte version. Das macht oft Problemen mit den neuesten Windows Betriebsystemen (Vista/7). Versuch das mall mit den letzte version:
http://sourceforge.net/projects/wina...nAVR/20100110/
Ich habe aber noch windows xp! Kann es da mit dem neuen WinAVR zu Problemen kommen?
Ich habe keine Ahnung was genau geändert ist seit dem Jahren. Aber sicher kann es kein Schade tun die neue zu installieren.
Gut dann versuche ich es. Also weg mit dem ganzen alten kram und das neue drauf... :D
Super es klappt ! Danke für deine Hilfe! :)
hm, aber immer wenn ich jetzt kompiliere, erscheint ein grosses dos-fenster (der bildschirm wird schwarz) und das geht erst nach dem vorgang weg. ich finde das etwas komisch weil das bei der alten version nicht passierte... ist das bei euch auch so? oder ist da noch irgendwo ein fehler?:confused: