Arduino Nano Port funktioniert nicht?

Mein Arduino Nano wird nicht ganz erkannt. Bzw. wird es erkannt, jedoch kann man nichts hochladen, denn dann kommt folgende Fehlermeldung:

Arduino: 1.9.0-beta (Windows 10), Board: "Arduino Nano, ATmega328P"

Der Sketch verwendet 930 Bytes (3%) des Programmspeicherplatzes. Das Maximum sind 30720 Bytes.

Globale Variablen verwenden 9 Bytes (0%) des dynamischen Speichers, 2039 Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xe7

avrdude: stk500_recv(): programmer is not responding

avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xe7

Problem beim Hochladen auf das Board. Hilfestellung dazu unter http://www.arduino.cc/en/Guide/Troubleshooting#upload.

Dieser Bericht wäre detaillierter, wenn die Option

"Ausführliche Ausgabe während der Kompilierung"

in Datei -> Voreinstellungen aktiviert wäre.

Technik, programmieren, Arduino
Fragen rund um den Arduino Uno?

Hi Leute, ich habe ein paar Projekte mit dem Arduino Uno gemacht und eines davon war folgender:

Einen Motor mittels eines Potentiometers steuern, also dessen Geschwindigkeit. Dabei gab es zudem einen Schalter zum an und ausschalten des Motors und einen Schalter zum Ändern der Richtung des Motors. Der Motor wurde mit einer 9 Volt Batterie betrieben, gesteuert wurde das ganze mit einem IC, welches genau, weiß ich leider nicht mehr.

Zu dem Projekt ergeben sich für mich folgende Fragen:

  • Es schien egal zu sein, welchen Wert der Poti hat, die beiden äußeren Beine wurden mit 5V und GND verbunden, die mittlere Leitung ging an einen Analogen Pin. Auslesen tat der Arduino dabei, je nach Zustand des Potis, Werte von 0 bis 1023. Ich würde gerne wissen, warum das so ist? Was genau gibt der mittlere Pin eines Potis aus, sodass der Arduino es, egal welchen Widerstandswert der Poti hat, von 0 bis 1023 interpretiert.
  • Wo wir schon beim Poti sind, wenn ich den Widerstand auf 0 Setze durch drehen des Hebels, dann habe ich ja 5V mit GND kurzgeschlossen. Warum ist dem Arduino dennoch nichts passiert? Ist dort eine Sicherung vorhanden? Oder fließt ein so geringer Strom, sodass dem Arduino dabei nichts passiert? Eigentlich sollten die 500mA des USB Steckers doch ausreichen, den zu grillen oder?
  • Was genau ist der Unterschied zwischen +5V und Vic?

Vielen Dank für die, hoffentlich, kommenden Infos :)

Arduino, Kurzschluss, Schaltung, Potentiometer, Elektrik Elektronik, arduino mega, Arduino Uno, einplatinencomputer
Arduino Delay für eine Sekunde?

Hallo, ich wollte eine Uhr für einen Display programmieren und diese mit einer Fernbedinung ansteuern. Nur habe ich ein Problem, meine Uhr ist etwas langsamer als eine normale Uhr (Atomuhr). Obwohl ich einen Delay von 1000 habe.

ich bin im Besitz des Arduino Elegoo Mega 2560

Falls es interessant ist, kopiere ich hier den kompletten Code:

#include <LiquidCrystal.h>

#include "IRremote.h"

LiquidCrystal lcd(7, 8, 9, 10, 11, 12);

int offTimer;

int onTimer;

int s=15; //sekunden

int m=49; //minuten

int h=19; //stunden

int tag=3; //tage

int monat=6; //monate

int jahr=2018; //Jahr

int receiver = 6;

int lcdsize[] = {16, 2};

IRrecv irrecv(receiver);    

decode_results results;    

void translateIR() // takes action based on IR code received

// Beschreibt Remote-IR-Codes

{

 switch(results.value)

 {

 case 0xFFA25D: onTimer++; offTimer=0; break;

 case 0xFFE21D: offTimer++; onTimer=0; break;

 case 0xFF629D: Serial.println("VOL+"); break;

 case 0xFF22DD: Serial.println("FAST BACK");   break;

 case 0xFF02FD: Serial.println("PAUSE");   break;

 case 0xFFC23D: Serial.println("FAST FORWARD");  break;

 case 0xFFE01F: Serial.println("DOWN");   break;

 case 0xFFA857: Serial.println("VOL-");   break;

 case 0xFF906F: Serial.println("UP");   break;

 case 0xFF9867: Serial.println("EQ");   break;

 case 0xFFB04F: Serial.println("ST/REPT");   break;

 case 0xFF6897: Serial.println("0");   break;

 case 0xFF30CF: Serial.println("1");   break;

 case 0xFF18E7: Serial.println("2");   break;

 case 0xFF7A85: Serial.println("3");   break;

 case 0xFF10EF: Serial.println("4");   break;

 case 0xFF38C7: Serial.println("5");   break;

 case 0xFF5AA5: Serial.println("6");   break;

 case 0xFF42BD: Serial.println("7");   break;

 case 0xFF4AB5: Serial.println("8");   break;

 case 0xFF52AD: Serial.println("9");   break;

 case 0xFFFFFFFF: Serial.println(" REPEAT");break; 

 default:

   Serial.println(" other button  ");

 }

}

void setup() {

irrecv.enableIRIn(); // Startet den Empfänger

lcd.begin(lcdsize[0], lcdsize[1]);

}

void loop() {

 if (irrecv.decode(&results)) // Haben wir ein IR-Signal erhalten?

 {

   translateIR();

   irrecv.resume(); // Erhalte den nächsten Wert

 } 

 delay(990);

 lcd.clear();

 lcd.setCursor(0, 0);

 lcd.print("----");

 if(h<10){

 lcd.print("0");

 }

 lcd.print(h);

 lcd.print(":");

 if(m<10){

 lcd.print("0");

 }

 lcd.print(m);

 lcd.print(":");

 if(s<10){

 lcd.print("0");

 }

 lcd.print(s);

 lcd.print("----");

 lcd.setCursor(0, 1);

 if(tag<10){

 lcd.print("0");

 }

 lcd.print(tag);

 lcd.print(".");

 if(monat<10){

 lcd.print("0");

 }

 lcd.print(monat);

 lcd.print(".");

 lcd.print(jahr);

 s++;

 if(s>=60){

 m++;

 s=0;

 }

 if(m>=60){

 h++;

 m=0;

 }

 if(h>=24){

 tag++;

 h=0;

 }

 if(tag==31&monat==4){

 monat++;

 tag=1;

 }

 if(tag==31&monat==6){

 monat++;

 tag=1;

 }

 if(tag==31&monat==9){

 monat++;

 tag=1;

 }

Ab hier kommen noch ca. 40 weitere Zeilen.

Mikrocontroller, Arduino, Delay
Könnt ihr mir den elektrischen Schaltplan erklären?

Hallo liebe Community,

ich wollte ein Projekt starten, undzwar eine Art Roboterspinne bauen. Ich bin im Besitz eines 3D Druckers, sodass die mechanischen Teile (noch) nicht das Problem darstellen. Das größte Problem liegt bei mir in der Elektronik, weil ich nur sehr schwache elektrotechnische Kenntnisse habe.

Könnt ihr helfen diesen Schaltplan zu erklären wo ich was anschließen muss, damit ich mir ein besseres Bild von der Sache machen kann?

Diese Bauteile liegen bei mir vor und müssten auch so im Schaltplan vorhanden sein:

  • Arduino Pro Mini Mikrocontroller
  • 3000mAh Lithium Batterie (DC 12300)
  • 12V Niedervolt Steckverbindung mit 3 Lötfahnen
  • DC/DC Voltwandler 12V/5V - 3A Output
  • 1 taktiler Schalter mit 6 Ein und Ausgängen (Lage im Schaltplan bekannt)
  • 680 Ohm 1/4 Watt 5% Wiederstand (kann ich im Schaltplan sehen)
  • 3mm blaue Led (Anschlussrichtung bereits bekannt)
  • 5x7cm Lochrasterplatine
  • 12 SG90 9g Servomotoren
  • Männliche und weibliche Stiftleiste

Nun meine Fragen: Wo muss ich die 5V anschließen und wo GND (Ground)? So wie ich das verstanden habe ist 5V + und GND -. Aber an welches Bauteil muss ich die Verbindung explizit anschließen? Sogut wie alle Bauteile weisen diese Verbindung auf.

Was bedeutet dieses Symbol bei J1? Konnte dazu nichts näheres finden und was muss ich bei dieser Verbindung besonders beachten?

Wie schliesse ich den Power Jack (Niedervolt Steckverbindung) richtig an? Was bedeutet IN_GND? Ich habe ja nur die 3 Lötfahnen und weiß nicht wie ich das verbinden soll.

COXA, FEMUR, TIBIA und JP sind alles Stiftleistenverbindungen richtig?

Ich wäre euch sehr sehr dankbar wenn ihr mir helfen würdet!

Bild zum Beitrag
Elektrotechnik, Mikrocontroller, Arduino, Elektriker, schaltplaene, Stromlaufplan
Kann man ein 100W Netzteil (5 Volt) an nen WS2812b-Streifen hängen?

Hallo Community,

ich plane, mein Zimmer mit ein bisschen Arduino-LED-Technik aufzupeppen... Der Arduino an sich bringt ja leider nicht sehr viel Watt durch. Nun hab ich mir gedacht, dass ich ein externes Netzteil für die Stromversorgung der LED-Streifen (es werden 2 unterschiedliche sein) hernehme. Beziehungsweise besser gesagt je LED-Streifen einen. Nun ist meine Frage, ob ich ohne Probleme ein 100W-Ding (5V) da dranstecken kann ohne mir Sorgen machen zu müssen. Hab mal irgendein 5V-Netzteil, das bei mir rumlag probiert und da hab ichs gleich geschafft, die vorderste LED zu schrotten. Sowas will ich natürlich jetzt eher vermeiden.

Außerdem wäre es noch interessant zu wissen, ob ich 5 1-Meter-LED-Streifen einfach hintereinander hängen kann, ohne dass da Probleme entstehen (hab da irgendwo irgendwas darüber gelesen, dass man da für jeden einzelnen Streifen ein eigenes Netzteil kaufen soll..?).

Was ich bereits besitze:

  • 1x 5 Meter LED-Streifen mit insgesamt 150 LEDs drauf (30 LEDs pro Meter) (3-polig)
  • 5x 1 Meter LED-Streifen mit jeweils 60 LEDs drauf (insgesamt dann 300 LEDs) (3-polig)
  • Arduino Nano

Was ich kaufen würde:

  • 1x 5V 10A 50W LED Power Supply Netzteil
  • 1x 5V 20A 100W LED Power Supply Netzteil

Die Leistung sollte jeweils ausreichend sein (wenn das stimmt mit den 60mA im Vollbetrieb pro LED).

Danke für die Antworten im voraus :)

Computer, Technik, Strom, Arduino, LED, Technologie
wie kann ich zwei programme (sketes) zusammenführen Arduino?

ich will zwei programme zusamen führen wie kann ich das ?(beide programme fonktioniren einzeln) Hier sind die programme: 1. #include #include

Servo ServoMotor; char* password = "123"; // change the password here, just pick any 3 numbers char* password1 = "456"; char* password2 = "789"; int position = 0; const byte ROWS = 4; const byte COLS = 4; char keys[ROWS][COLS] = { {'1','2','3','A'}, {'4','5','6','B'}, {'7','8','9','C'}, {'*','0','#','D'} };

byte rowPins[ROWS] = { 8, 7, 6, 9 }; byte colPins[COLS] = { 5, 4, 3, 2 }; Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); int RedpinLock = 12; int GreenpinUnlock = 13;

void setup() { pinMode(RedpinLock, OUTPUT); pinMode(GreenpinUnlock, OUTPUT); ServoMotor.attach(11); LockedPosition(true); }

void loop() { char key = keypad.getKey(); if (key == '*' || key == '#') { position = 0; LockedPosition(true); } if (key == password[position]) { position ++; } if (key == password1[position]) { } if (key == password2[position]) { position ++; } if (position == 3) { LockedPosition(false); } delay(100); } void LockedPosition(int locked) { if (locked) { digitalWrite(RedpinLock, HIGH); digitalWrite(GreenpinUnlock, LOW); ServoMotor.write(11); } else { digitalWrite(RedpinLock, LOW); digitalWrite(GreenpinUnlock, HIGH); ServoMotor.write(90); } }

2.

int licht;

void setup() { Serial.begin(9600); pinMode(13,OUTPUT);

}

void loop() { // put your main code here, to run repeatedly: licht = analogRead(0); Serial.print (licht),delay;

if (licht < 940) { digitalWrite(13,HIGH); } else { digitalWrite(13, LOW); }}

programmieren, Arduino
Komische Zeichen bei Motorstart über Relais auf 16x2 LCD bei Arduino. Wie kann ich dies lösen?

Hallo,

ich bin gerade dabei mir mittels eines Arduinos eine Bewässeurngsanlage zu bauen welche die Temp und Luftfeuchtigkeit (DHT22) sowie die Erdfeuchte (Feuchtigkeitssensor) misst und bei überschreiten des Grenzwertes über ein Relais eine Minipumpe schaltet und die Werte auf einem Standard LCD (16x2 16pins, 12 belegt) ausgibt. Das Relais als auch das LCD werden über den Arduino über 5V und der DHT22 über 3,3V versorgt. Die Minipumpe (Gleichstrom) wird über eine externe Batterie mit 6V versorgt.

Die Messung und die Ausgabe funktioniert wunder bar bis das Relais die Pumpe anschaltet, denn ab dann werden auf dem LCD nur kryptische Zeichen sichtbar. Das Problem tritt erst dann auf wenn die Pumpe anfängt zu pumpen, es liegt also nicht am Relais. Ich hab mich zwar bereits in etliche Forenbeiträge vertieft und die Lösung dürfte das Dazwischenschalten von div. elektrolyt bzw. keramik Kondis sein allerdings kenn ich mich auf diesem Gebiet ehrlich gesagt etwas mager aus. Ev. kann sich jemand erbarmen und mir laienhaft erklären welchen Kondi (ev. Berechnung) ich wo einbauen müsste und warum, damit LCD auch während des Pumpvorgangs ordentlichen Werte anzeigt.

Die Verkabelung ist über die beim Starterkit enthaltenen Steckleitungen die nicht länger als 20cm sind realisiert.

Info zur Pumpe: 3-6V DC, 130-220mAh

Info zum Relais (etwas überdimensioniert): 5V, 3Pin Connector, 10A 250V bzw. 15A 125V schaltbar

Anbei noch eine Aufnahme des Projekts - ev. ist etwas erkennbar ansonsten kann nat. ein Schaltplan nachgereicht werden.

Danke schon mal!!!

Bild zum Beitrag
Computer, Display, Bewässerung, Arduino, Kondensator, LCD, Pumpe, Relais, Auto und Motorrad
LCD4884 Arduino Laufschrift?

Habe mir letztens ein neues LCD4884 Display zugelegt. Nun steh ich aber vor folgenden "Denkfehler", und zwar wird in dem Beispiel bei Einfache Laufschrift auf LCD4884 bei http://www.arduinospielwiese.de/ das so beschrieben (kleiner Ausschnitt) :

void loop() { lcd.LCD_write_string( 78, 3, "M", MENU_NORMAL); delay(200); lcd.LCD_write_string( 70, 3, "MA", MENU_NORMAL); delay(200); lcd.LCD_write_string( 65, 3, "MAR", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 60, 3, "MART", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 53, 3, "MARTI", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 48, 3, "MARTIN", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 42, 3, "MARTIN ", MENU_NORMAL ); delay(200);
lcd.LCD_write_string( 35, 3, "MARTIN K", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 30, 3, "MARTIN KU", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 23, 3, "MARTIN KUP", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 18, 3, "MARTIN KUPK", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 12, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 12, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 8, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 8, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 3, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 3, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "MARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 0, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "ARTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 0, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "RTIN KUPKA", MENU_NORMAL ); delay(200); lcd.LCD_write_string( 0, 3, " ", MENU_NORMAL ); lcd.LCD_write_string( 0, 3, "TIN KUPKA", MENU_NORMAL ); delay(200);

etc..

Ich jedoch habe das mit einer for-Schleife gelöst(bei mir dient Hallo als Laufschrift): "Es stehen Spalte 0...83 und Zeile 0...5 zur Textpositionierung zur Verfügung."

void loop() {

for(i = 0 ;i < 54; i++) { lcd.LCD_write_string(i, 1, "HALLO", MENU_NORMAL ); delay(100); lcd.LCD_write_string(i, 1, " ", MENU_NORMAL );

}

for(i = 54 ;i > 0; i--) { lcd.LCD_write_string(i, 1, "HALLO", MENU_NORMAL ); delay(100); lcd.LCD_write_string(i, 1, " ", MENU_NORMAL );

}

}

Alles hat wunderbar geklappt, aber ich verstehe es nicht warum es 54 hier i = 0 ;i < 54; i++ heißen muss.

PS: Habe es durch Probieren geschafft auf diese Nummer zu kommen

Freue mich auf Antworten!

programmieren, Arduino, Aufschrift, For-Schleife
Welche Fähigkeiten hat der Wemo D1 (Mini) im Vergleich zum Arduino und welche Möglichkeiten bietet das W-Lan?

Hallo,

ich habe mich hier angemeldet, da ich mich für das Basteln mit Elektronik-Entwickler-Boards interessiere, aber mich nicht wirklich gut auskenne. Bisher habe ich ich einige Arduinos, und bin zufällig auf den ESP8266, bzw. auf die Wemos-Produkte gestoßen. Grundsätzlich bin ich mit Arduino voll zufrieden, aber wenn ich eine Funkübertragung herstellen möchte, ist das damit ein relativ großer Aufwand (bzw. teuer), da man bei den häufig empfohlenen Funkmodulen oft einen Level-Shifter benötigt, oder die Platinen mit eingebautem Shifter mit 20 Euro pro Stück für mich zu teuer sind. (Mit den billigen 433Mhz-Modulen habe ich schlechte Erfahrungen gemacht).

Erste Frage zum Vergleich mit dem Arduino: Ich würde gerne vorhandene Hardware, wie z.B. ein 20x4 oder 16x2 Display verwenden, kann ich das genauso am Wemos D1 Mini anschließen? In Beispielen sehe ich sonst immer nur grafische Displays...

Und zum Funk: Ich möchte gerne einfache Daten zwischen zwei Geräten verschicken, z.B. zwischen zwei Wemos oder einem Wemos und einem Raspberry Pi. Müssen beide Geräte an einem gemeinsamen W-Lan Router angemeldet sein, oder kann man eine direkte Verbindung zwischen den beiden Devices herstellen (ähnlich wie eine Verbindung zwischen einem Smartphone und einer Kamera möglich ist)?

Computer, WLAN, Technik, Elektronik, Arduino, Funk, Raspberry Pi, ESP8266

Meistgelesene Fragen zum Thema Arduino