Als «c++» getaggte Fragen

C ++ ist die Standardsprache zum Programmieren der Arduino IDE. In der Arduino IDE sind jedoch viele Bibliotheken integriert, sodass Funktionen wie "main" nicht direkt im Skizzencode aufgerufen werden. Der meiste Online-Arduino-Code ist in dieser Sprache geschrieben.

20
Was sind die anderen IDEs für Arduino?
Der grundlegenden Arduino-IDE fehlt ein Großteil der Raffinesse, die in anderen IDEs vorhanden ist, wie z. B. Code-Vervollständigung, Code-Zusammenbruch, Ordnerorganisation usw. Gibt es andere IDEs, die das Programmieren in C oder C ++ ermöglichen und diese Aspekte verbessern?

9
C ++ gegen die Arduino-Sprache?
Was sind die Vorteile jeder Sprache bei der Verwendung des Arduino? Ich denke, das ist eine gute allgemeine Frage, aber ich füge ein bisschen hinzu, warum ich frage, ob mir jemand einen Tipp geben möchte. Ich habe Erfahrung mit vorverarbeiteten Sprachen wie JavaScript und PHP und habe mit Sprachen wie …
81 c++  arduino-ide 





5
Welche Overheads und andere Überlegungen gibt es bei der Verwendung einer Struktur gegenüber einer Klasse?
C auf eingebetteten Systemen verwendet traditionell Strukturen, um strukturierte Daten zu speichern. Arduino bringt C ++ auf den Tisch, sodass wir stattdessen Klassen verwenden können. Nehmen wir an, wir haben zwei unterschiedliche Datenstrukturen, die als sehr ähnlich angesehen werden könnten: typedef struct { int valueOne; int valueTwo; int valueThree; } …


4
Ist Setup und Loop zur Bequemlichkeit vorgesehen?
Arduino-Skizzen weisen normalerweise eine setupund loop-Funktion auf. Werden diese Funktionen nur zur Vereinfachung bereitgestellt oder haben sie tatsächlich spezielle Zwecke? (zB: sind einige Operationen in Setup und Loop nicht erlaubt oder erlaubt) Entsprechen diese beiden Codeteile: Klassisch void setup() { pinMode(LED_BUILTIN, OUTPUT); } void loop() { digitalWrite(LED_BUILTIN, HIGH); delay(1000); digitalWrite(LED_BUILTIN, …
13 programming  c++ 

3
Funktionen mit String-Parametern
In meiner Hauptschleife befindet sich diese Zeichenfolge: String string1; Ich habe eine Funktion, die string1 als Parameter verwendet und damit diesen String als SMS sendet. sendSMS(string1); Dies ist die Funktion sendSMS () (ohne Parameter): void sendSMS() { sms.beginSMS(remoteNumber); sms.print(finalstr); sms.endSMS(); lcd.setCursor(0, 0); lcd.print("Message sent!"); delay(10000); } Meine Fragen sind: Wie …
11 programming  c++ 

1
Wie funktionieren Interrupts auf dem Arduino Uno und ähnlichen Boards?
Bitte erläutern Sie, wie Interrupts auf dem Arduino Uno und verwandten Karten mit dem ATmega328P-Prozessor funktionieren. Boards wie die: Uno Mini Nano Pro Mini Seerosenblatt Bitte besprechen Sie insbesondere: Wofür Interrupts verwendet werden sollen So schreiben Sie eine Interrupt Service Routine (ISR) Zeitprobleme Kritische Abschnitte Atomarer Zugriff auf Daten Hinweis: …

2
Wie konvertiere ich einen Float in char *?
Stellte diese Frage auf Electrical Engineering Stack Exchange und wurde hier gerichtet: Ziemlich selbsterklärend; Wie würde ich einen Float in einen Char * umwandeln? Ich habe Code, in dem der Float-Widerstand ständig aktualisiert wird. Ich möchte in der Lage sein, die Variable 'Ergebnis' zu aktualisieren, um den Wert 'Widerstand' anzunehmen. …
11 arduino-uno  c++  c  float 

2
Wird eine .ino Arduino-Skizze direkt auf GCC-AVR kompiliert?
Okay, wir haben alle diese Fragen im ganzen Web gesehen, wie Arduino vs C ++ oder andere ähnliche Fragen. Und die überwiegende Mehrheit der Antworten berührt nicht einmal Kompilierungsunterschiede außer durch abstrahierte Informationen. Meine Frage zielt darauf ab, die tatsächlichen Unterschiede (nicht die Einstellungen) zu lösen, wie eine in eine …

3
Wie schreibe ich Makefile-kompatible Skizzen?
Ich möchte meine Skizzen schreiben, damit ich sie entweder mit der Arduino-IDE oder optional mit GCC und einem Makefile erstellen / hochladen kann. Ich weiß, wie man die Funktionsdeklarationen oben einfügt, aber gibt es noch etwas zu tun, damit meine Skizze von meinem Compiler als gültiges C ++ betrachtet wird? …

2
Warum ist int nur 2 Bytes?
Bei Verwendung von C / C ++ auf anderen Plattformen intbeträgt der Typ normalerweise 4 Byte (oder möglicherweise mehr). Auf Arduino sind es jedoch nur 2 Bytes. Warum ist es anders? Beeinträchtigt es die Leistung, wenn ich longstattdessen immer 4 Byte verwende?

2
Objektspeicher statisch zuordnen; dynamisch initialisieren?
Ich habe ein Objekt, dessen Konstruktor einen Parameter übergeben bekommt. Wenn ich den Parameterwert zur Kompilierungszeit kenne, kann ich das Objekt statisch erstellen: static FOOOBJ foo(3); (Ich verstehe, dass es nicht wirklich statisch gemacht wird, dh vom Compiler, sondern tatsächlich während des Setups). Wenn ich den Parameterwert zur Kompilierungszeit nicht …

2
Wie kann ich ein Objekt als Parameter an eine Funktion übergeben?
Ich mache ein winziges Spiel und möchte Highscores speichern. Ich habe oben in der Skizzendatei eine Highscore-Klasse erstellt, wie folgt: class Highscore { public: String name; int score; String toString() { return this->name + " - " + (String)score; } Highscore(String name, int score) { this->name = name; this->score = …
8 c++ 

1
Erste Bibliothek schreiben - Serielles Stream-Objekt
Ich habe einige Projekte mit Arduino gemacht, aber nie mehr als eine "Hallo Welt" in C. Ich schreibe meine erste Bibliothek und viele objektorientierte Dinge gehen mir über den Kopf. Wie auch immer, meine Bibliothek funktioniert wie es soll, ich übergebe einen Float an meine Funktion und sie formatiert ihn …
8 serial  c++  library 

5
Wie kann man analoge Pins durchlaufen?
Ich möchte etwas in der Art von tun for (int i = 0; i < 4; i++) { analogRead(i); } Was zu funktionieren scheint, aber das Folgende nicht: for (int i = 0; i < 4; i++) { pinMode(i, INPUT); pinMode(i + 4, OUTPUT); // should make Analog Pin (i …

1
Zugriff auf eine statische C ++ - Variable über gcc inline asm
Aus irgendeinem Grund möchte ich ein bisschen Assembly mit C ++ (nicht C) mischen. Damit der Code mit der Standard-Arduino-IDE kompiliert werden kann, möchte ich keine direkte Assembly-Quelle verwenden. Ich möchte auch keine Wrapper-C-Datei verwenden. Mein Problem ist wie folgt: Ich habe eine Klasse mit einer einzelnen Instanz (die eine …

3
Gerät mit mehreren SPI
Ich mag Ethernet - Karte verbinden , (W5100 HR911105A)um Arduino Leonardomit SPI und ich möchte auch zu verbinden SD - Reader. Wenn ich diese Boards separat teste, funktioniert alles. Aber wenn ich sie auf derselben Karte verbinde, schlägt das Programm bei fehlEthernet.begin(); #include <SPI.h> #include <Ethernet.h> #include <SD.h> #define SS_SD_CARD …

4
Ersetzen mehrerer pinMode () - und digitalWrite () -Pins durch ein Array
Ich möchte ‚aufzuräumen‘ einige Code, der mehrere beinhaltet pinMode()und digitalWrite()unter Verwendung einer einzelnen Zeile eines Arrays Linien. Ich bin sehr neu in beiden Arrays, daher bin ich etwas verwirrt. Die folgenden Beispiele sind Abschnitte aus Code, der eine 4-stellige 7-Segment-LED steuert. // Define display pins // Digit pins (common cathode) …
7 c++  array 

2
Warum muss das flüchtige Schlüsselwort für globale Variablen verwendet werden, wenn Interrupts in Arduino behandelt werden?
Ich bin mit dem Schlüsselwort vertraut Volatile, das zum Deklarieren von Variablen verwendet wird, die von mehreren Threads in einer Softwareanwendung (im Grunde in einer Multithread-Anwendung) gemeinsam genutzt werden. Aber warum muss ich eine Variable deklarieren, Volatilewenn der Code auf einem Arduino-Interrupt ausgeführt wird? Wird der im Interrupt ausgeführte Code …
7 c++  interrupt  isr 



3
Wie kann ich ein Arduino in reinem C programmieren?
Ich bin ein Anfänger und möchte AVR C / C ++ lernen. Kann ich das mit einem Arduino machen? (Ich frage dies, weil ich bereits eine habe). Wenn ja, kann mir jemand sagen, mit welcher IDE ich Code in reinem C / C ++ schreiben und ihn dann auf den …
7 c++ 

3
Zweckmäßigkeit der Verwendung von Bitfeldern in Strukturen
Ich muss eine große Datenmenge (für ein Arduino) in einem Programm verfolgen, während ich mich um eine ganze Reihe anderer Geschäfte kümmere. Ich habe mit einer Struktur wie dieser begonnen: struct MyStruct { // note: these names might as well be foo bar baz uint8_t color; boolean state; uint8_t area; …

2
Arduino Yun C ++ Umgebung? Bridge + Cross-Compiler
Ich erstelle einen XMPP-Chatbot für das Arduino Yun. Ich bin jedoch nicht sehr zuversichtlich in die Python-Leistung auf einem Gerät mit so geringer Leistung und bin mit C ++ viel besser vertraut. Gibt es eine C ++ - Crosscompile-Umgebung und einen Port der Bridge-Bibliothek für C ++? Alternativ Dokumentation zur …

1
Arduino Servo bewegt sich bei Verwendung von Klassen nicht
Ich versuche, eine Klasse mit Arduino zum Laufen zu bringen, aber es scheint nicht richtig auszulösen. Der Code wird perfekt kompiliert und soll das Bein eines Hexapods steuern . Auch der Beispiel-Sweep funktioniert mit diesem Servo, also hier kein Problem. Das Servo bewegt sich jedoch nicht wirklich. Ich denke, es …

1
Arduino Größe von Servo Array Objekten ist .. falsch?
Nachdem ich ziemlich lange über das Internet gesucht habe , habe ich keine andere Wahl, als jemanden zu fragen, ob er mir diese anscheinend seltsame Situation erklären kann. Ich mache einige Tests mit einigen Servomotoren und versuche, sie mit millis()und ServoObjekt fast zusammen zu bewegen . Es funktioniert natürlich entweder …
7 c++ 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.