ATTINY85 will nicht wie Arduino Board


moin leute,
ich habe eine fernbedienung gebastelt die ein keypad von robodyn verwendet. Über einen analogport lese ich die eingangsspannung aus und gebe dann die nummer der gedrückten taste ein 433 funkmodul weiter. diese schaltung hat mit einem normalen arduino wunderbar funktioniert, jetzt aber mit dem attiny85 nicht.
es ist alles richtig verlötet. ich konnte einmal die daten empfangen, als ich gemessen habe, aus dem keypad beim tiny ankommt (messgerät). das bekomme ich aber nicht reproduziert - war wohl ein zufall.
mit dem messgerät sehe ich auch, dass bei knopfdruck spannung auf dem data-pin des funksenders liegt. passt auch.
mein arduino mit funkempfänger zeigt allerdings nichts an.

das keypad gibt je nach gedrückter taste eine unterschiedliche spannung aus.
schaltregler ist verbaut, damit 9v klappen.

im anhang meine unglaublich gut gezeichnete schaltung.



hier der code:
code: [select]
#include <rcswitch.h>


rcswitch myswitch = rcswitch();

int analogpin = a1;
int value= 0;
int key;
int volume = 15;


void setup () {
   myswitch.enabletransmit(10);
  serial.begin(9600);
}
 
void loop () {

  key = 0;
  value = analogread(analogpin);
  if(value!=0)
    key=checkvalue(value);
  

  switch(key){
    case 1: //stufe 1
     myswitch.send(1,24);
      break;
    case 2://stufe 2
     myswitch.send(2,24);
      break;
    case 3: //stufe 3
     myswitch.send(3,24);
      break;
    case 4: //stufe 4
     myswitch.send(4,24);
      break;
    case 5: //stufe 5
      myswitch.send(5,24);
      break;
    case 6: //stopp
     myswitch.send(6,24);
      break;
    case 7: //leiser
     myswitch.send(7,24);
      break;
    case 8: //nicht belegt
     myswitch.send(8,24);
      break;
    case 9: //lauter
     myswitch.send(9,24);
      break;
  }
  
}

int checkvalue(int value){ //haesslichste methode ever!
  serial.println(key);
  if(value>820){
    if(value>900){
      if(value>1000){
        return 1;
      }else{return 2;}
    }else{
      return 3;
    }
  }
  else if(value>650){
    if(value>700){
      if(value>750){
        return 4;
      }else{return 5;}
    }else{
      return 6;
    }
  }else if(value>540){
    if(value>580){
      if(value>610){
        return 7;
      }else{return 8;}
    }else{
      return 9;
    }
  }else if(value>450){
    if(value>490){
      if(value>510){
        return 10;
      }else{return 11;}
    }else{
      return 12;
    }
  }
}  



vielleicht fällt ja irgendwem etwas ein. vielleicht brauch der attiny85 ja noch irgendwas davor geschaltet von dem ich nichts weiß? kondensator, widerstand usw... meine e-technikkentnisse sind zu sehr verstaubt.

lg

hast du den attiny85 auch mit dem richtigen bootloader versehen?
die rcswitch funktioniert nur, wenn du den attiny85 mit 8 mhz beschreibst.


Arduino Forum > International > Deutsch (Moderator: uwefed) > ATTINY85 will nicht wie Arduino Board


arduino

Comments

Popular posts from this blog

Error: ‘for’ loop initial declarations are only allowed in C99 or C11 mode - Raspberry Pi Forums

class MPU6050 has no member named begin

missing filename after '-o'