Show Posts
Pages: [1] 2 3 ... 6
1  International / Deutsch / Re: Encoder auslesen on: March 26, 2014, 08:55:03 am
Hallo Jurs,
du hast recht, ohne delay verschluckt er sich nicht spürbar.
Gruß Ardubu
2  International / Deutsch / Re: Encoder auslesen on: March 26, 2014, 07:29:07 am
bei schnellem Drehen verschluckt er sich schon mal, aber da ich ihn für eine Menüsteuerung brauche,  und je Menü max. 10 Menüpunkte habe, brauche ich nicht so schnell drehen. Die delays stören mich hier auch nicht, da das Encoder auslesen innerhalb der Menüfunktion läuft und der Dino in dem Moment bei mir keine zeitkritischen Aufgaben zu erledigen hat.
3  International / Deutsch / Encoder auslesen on: March 26, 2014, 03:14:43 am
Hallo,
ich bin gerade dabei mir ein LCD Menue mit Drehgeber zu basteln. Dazu habe ich mir angeschaut, was mir der Drehgeber für Impulse ausgibt. Bei meinem Teil sind die Anschlüsse A und B wenn der Drehgeber in der Raststellung steht immer High.
Von einer Rastung zur nächsten gibt es immer 4 Impulse auf A und B.
Die Impusle sehen folgendermaßen aus:

Links drehen:  A  B
                         1   0
                         0  0
                         0  1
                         1   1

Rechts drehen:  A  B
                            0   1
                            0  0
                            1   0
                            1   1
d.h. wenn ich links drehe habe ich am Anschluß A immer eine 9, wenn ich rechts drehe habe ich immer eine 12.
Daraus habe ich einen kleinen Sketch gebastelt, der relativ klein und übersichtlich ist.
Code:
/* Encoder auslesen
 * gemeinsamer Anschluß auf GND
 * Ardubu
 * 25.03.2014
*/
#define debug
#define ENCODER_A 2
#define ENCODER_B 3

boolean a=1;
boolean a_alt=1;
boolean b=1;
boolean b_alt=1;
byte n=0;
byte A=0;
int imp;
int imp_alt=1;

void setup() {
  #ifdef debug
  Serial.begin(9600);
  Serial.println(F("Setup"));
  #endif
 
  pinMode(ENCODER_A, INPUT_PULLUP);
  pinMode(ENCODER_B, INPUT_PULLUP);
 
}
void loop()
{
  a=digitalRead(ENCODER_A);
  delay(2);
  b=digitalRead(ENCODER_B);
  delay(2);
 
  if (a!=a_alt || b!=b_alt)
  {
    if(a)bitSet(A,n);
    n++;
    if (a&&b) n=0;
    if (A==12) imp++;
    if (A==9) imp--;
    a_alt=a; b_alt=b;
    if(a&&b)A=0;
    #ifdef debug
    if (imp_alt!=imp){
    Serial.println(imp);
    imp_alt=imp;}
    #endif
  }
}
Vielleicht kann einer von euch so was gebrauchen.
Gruß
Ardubu
4  International / Deutsch / Re: Temperatur auslesen on: March 21, 2014, 10:22:14 am
Hallo HatschiBu,

der Dallas DS18B20 ist ein digitaler Temperatorsensor, den man nicht mit einem AnalogRead ausliest. Außerdem ist es ein Onewire Sensor, d.h. du kannst mehrere DS18B20 an eine Leitung hängen und du Brauchst die Onewire Library in deinem Library Ordner. Wenn du den installiert hast, findes du unter Beispiele Programme zum auslesen des DS18B20. Außerdem solltest du noch eine 4,7k zwischen Vcc und Datenleitung schalten.

Ardubu
5  International / Deutsch / Re: [Arduino Uno] Piezo Analogread/Beat Led-Detector on: March 15, 2014, 06:14:39 pm
Hallo,
der Piezo müsste eigentlich in beiden Richtungen funktionieren, wenn du einen 1MOhm Widerstand Parallel zum Piezo schaltest, müsste bei lauten Geräuschen ein messbares Signal am Wiederstand abfallen. Evtl. lege die interne Referenz auf 1V.
Was mir noch aufgefallen ist, du hast deinen Wert Value als Byte deklariert, somit diesen Wert auf 0 bis 254 begrenzt, analogRead gibt eigentlich Werte von 0-1023 aus, deswegen wären die Ergebnisse von Serial.print(Value) recht aufschlussreich.
6  International / Deutsch / Re: ATtiny on: March 15, 2014, 07:29:32 am
schau dir das mal an
http://projectsfromtech.blogspot.de/2013/03/attiny85-servo-softwareservo-library.html
vielleicht hilft es dir weiter
7  International / Deutsch / Re: ATtiny on: March 15, 2014, 05:47:53 am
Hallo Carsten,
wie ich oben schon geschrieben habe, ist der Sketch nicht für einen Attiny 45/85 geschrieben.
Code:
servo1. attach (9);
Code:
if(gulli==auf) digitalWrite(13,!digitalRead(13)); //LED blinkt
if(gulli==zu) digitalWrite(13,LOW); //LED aus
Es gibt weder einen Pin 9 noch einen Pin 13 beim Attiny 45/85.
Den Sketch mußt du an den Attiny 45/85 anpassen.
Die Fehlermeldung
Quote
please define PAGEL and BS2 signals in the configuration file for part ATtiny 45
ist normal, die kannst du ignorieren;
8  International / Deutsch / Re: Öltankmessung on: March 14, 2014, 05:03:56 pm
was hälst du davon wenn du direkt den Verbrauch ermittelst
http://www.conrad.de/ce/de/product/150392/Durchflussmesser-Flow-Meter-FCH-m-POM-LC-003-30-lmin-BIO-TECH-eK-FCH-M-POM-LC-AD-6-MM-mit-Duese-16-mm-003-/?ref=detview1&rt=detview1&rb=1
9  International / Deutsch / Re: ATtiny on: March 13, 2014, 04:44:01 pm
wenn du einen Attiny 45 hast, probiere einmal ob du folgenden Sketch hochladen kannst.
Code:
/*
  Blinksdings für Attiny45
  LED am Ausgang PB3 über 220 Ohm blinkt im Sekundentakt bzw. 1 Hz
     
*/
 
#define LED_Pin PB2
void setup() {               
  pinMode(LED_Pin, OUTPUT);     
}


void loop() {
  digitalWrite(LED_Pin, HIGH); delay(500);           
  digitalWrite(LED_Pin, LOW);  delay(500);           
}
Dazu benutzt du deine o. g. Beschreibung allerdings bei Auswahl den Attiny 45 internal 1 MHz.

Meines Wissens nach läuft der Attiny 45 nur bei externer Beschaltung mit 20 MHz
10  International / Deutsch / Re: ATtiny on: March 13, 2014, 04:12:41 pm
Hallo Carsten,
hast du denn mal versucht den Blinksketch auf den Attiny 1 MHz internal Clock zu übertragen?
Hast du bei dem Attiny vorher schon irgendwelche Fuses  gesetzt?
Hast du mal einen anderen Attiny versucht?
Hast du einen Attiny 45?
Der Sketch ist nicht für einen Attiny 45 geschrieben.
Gruß
Ardubu
11  International / Deutsch / Re: ATtiny on: March 13, 2014, 12:25:45 pm
Hallo Carsten,
so wie  das aussieht, hast du keine weitere Beschaltung am Attiny, standardmäßig läuft der mit 1 MHz, wenn du jetzt den Blinksketch draufspielst, nimm doch den Attiny 45 1 MHz.
Gruß
Ardubu
12  International / Deutsch / Re: Zeichenketten kürzen? strXXX on: February 19, 2014, 04:42:49 am
wie wäre es mit snprintf(id,4,"%s",id);
13  International / Deutsch / Re: fio v3 und loggen über spi on: February 16, 2014, 05:45:22 am
Nochmal als Ergänzung, ich meine die hellblauen PinBelegungen (Arduino) damit wird pinMode(17,OUTPUT)
14  International / Deutsch / Re: fio v3 und loggen über spi on: February 16, 2014, 05:31:12 am
Hallo,

wenn ich das Pinout von Sparkfun richtig interpretiere, ist diese Beschaltung falsch
logger -> fio v3
MOSI -> 16
MISO -> 17
CLK -> 15
CS -> 14
es müsste eigentlich diese sein:
logger -> fio v3
MOSI -> 16
MISO -> 14
CLK -> 15
CS -> 17

Gruß Ardubu
15  International / Deutsch / Re: Virtualwire und erweitertes Ambilight on: February 11, 2014, 03:43:42 am
Hallo dapeace,
wie sieht denn deine Ausgabe von Serial.print(buf) aus?
Pages: [1] 2 3 ... 6