stimmt eigentlich gute idee soweit hab ich jetz noch nich gedacht. Werd ich mal tun und wenn ich irgendwelche probleme oder erfolge hab dann veröffentlich ich se
Warum mißt du du nicht einfach die Widerstände durch. Kein Multimeter vorhanden? Vielleicht hast du einfach nur 2 Widerstände verwechselt.
stimmt eigentlich gute idee soweit hab ich jetz noch nich gedacht. Werd ich mal tun und wenn ich irgendwelche probleme oder erfolge hab dann veröffentlich ich se
mann mann manchmal ist die lösung doch soo einfach...
also ich hab jetzt zumindest mal den vermeintlichen 16kOhm-Widerstand nachgemessen, er hat tatsächlich nur 10kOhm wenn ich mich nicht vermessen hab. Jetzt muss ich nur noch sein vertauschtest schwesterchen finden und alles sollt in butter sein.
danke m.a.r.v.i.n für den zwar simplen aber äußerst hilfreichen tipp.
Grüße Froschi
Hi,
10k Widerstände gibt es nur 2 Stück. Beim Asuro ist das R13 und beim IR Transceiver R6.
achtung: wenn du die widerstände misst während der asuro mit spannung versorgt wird, ist die messung mist! vertraue nur auf messwerte bei abgeschaltetem asuro.
hi radbruch,
wie kann ich die werte, die von den tastern geliefert werden ausgeben? Auch mit "SerWrite"?Zitat von radbruch
Ich habe ein kleines progrämmchen zusammengestrickt, könnte ich es - nach entsprechender erweiterung - auch dazu benutzen?
- das "entprellen" der taster funktioniert aber nicht so ganz. Beim längerem drücken ist es ok, beim antippen nicht. fehlt da bei mir noch was?Code:#include "asuro.h" unsigned char sw; unsigned char sw0; unsigned char sw1; unsigned char sw2; int main(void) // start hauptprogramm { SerWrite("\n\r tastenabfrage_2007_02_17 ",28); // wer bin ich Init (); // was wir da initialisiert? while (1) // tastenabfrage { sw0=PollSwitch(); // Schalter einlesen und für eine Runde speichern sw1=PollSwitch(); sw2=PollSwitch(); if ((sw0==sw1) && (sw0==sw2)) sw=sw0; else sw=0; if (sw0==16) {StatusLED (YELLOW); SerWrite("\n\r taste K2 ",12);} else if (sw0>0) {StatusLED (RED); SerWrite("\n\r taste gedrueckt ",19); } else {StatusLED (GREEN);} } while (1); // endlosschleife return 0; // wird nicht mehr ausgeführt } // ende hauptprogramm
- auch scheinen mir da zuviele geschweifte klammern zu sein, oder täusche ich mich da?
danke
gruß inka
Hallo
Das Ergebniss einer erfolgreichen Abfrage steht in sw und nicht in sw0!
...
sw0=PollSwitch(); // Schalter einlesen und für eine Runde speichern
sw1=PollSwitch();
sw2=PollSwitch();
if ((sw0==sw1) && (sw0==sw2)) sw=sw0; else sw=0;
SerWrite("\n\r",2);
PrintInt((int)sw);
...
Gruß
mic
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
hi,
bei mir war es hier das gleiche mit den 15 und 31. Habe also die asuro.c entsprechend geändert.Zitat von radbruch
Gleich eine frage zum verständnis:
die asuro.c ist doch sowas wie eine standardbibliothek, beim entwickeln von programmen wird es sicher öfters vorkommen, dass sie individuell geändert wird. Wie dokumentiert man sowas? Ich kann doch unmöglich in 3 jahren, wenn eine neue version rauskommt, wissen was ich da alles geändert habe?
Oder macht man eigene bibliotheken? Wenn ja, werden die in der reihenfolge eingebunden wie sie in der "test.c" aufgeführt sind verwendet, will heissen wird die funktion für "polswitch" aus der ersten oder aus der zweiten datei genommen die per include eingebunden werden?
Sollte die asuro.c und asuro.h auch immer im avr-projekt verzeichnis, oder irgendwo "zentral" abgespeichert sein und misamt pfad dahin eingebunden werden?
gruß inka
Hi,
genau das wollen wir mit der neuen Asuro Lib V2.70 vereinfachen. Alle Werte die von Asuro zu Asuro unterschiedlich sein können, wie z.B. dieser Wert für die PollSwitch Funktion kommen in eigene Header-Datei names myasuro.h.
So braucht man bei Updates der Asuro Lib nicht jedesmal die Einstellungen neu korrigieren.
Das ganze setzt aber schon voraus, das es nur eine zentrale Asuro Lib und zentrale Header Files gibt und nicht jeweils eine Kopie in jedem Ordner.
Wenn du selbst neue Funktionen schreibst, dann kommen diese im allgemeinen nicht in die asuro.c. solltest du eine funktion haben, die dir extrem nützlich erscheint, dann poste sie hier im forum, dann wird über eine aufnahme in die asuro.c diskutiert. ansonsten kannst du recht gut eigene bibliotheken schreiben, die reihenfolge der einbundung ist egal, allerding sollte die asuro.c an erster stelle stehen da evtl die anderen neuen bibliotheke darauf basieren bzw auf diese angewiesen sind.
Lesezeichen