Ik zou graag willen weten waar ik de uitvoer kan zien als ik het commando printf
gebruik. Ik programmeer met de Arduino-interface.
Update
Ik zal een paar regels code toevoegen voor een beter begrip:
#include <stdio.h> int main(void) { printf("Hello World"); return 0; }
Reacties
Antwoord
Als je met de standaard Arduino-omgeving en bibliotheken werkt, dan is printf()
geeft nergens iets weer. De reden is dat microcontrollers op elke manier op een willekeurig aantal verschillende uitvoer- / communicatieapparaten kunnen worden aangesloten. stdio
zou geen idee hebben hoe of waar t hij gegevens.
De meest gebruikelijke benadering voor het uitvoeren van tekst vanaf een Arduino (vooral tijdens de ontwikkeling) is om deze naar de primaire UART-poort te sturen met Serial.begin()
en Serial.print()
. Als de Arduino via USB op uw computer is aangesloten, zou de seriële monitor van de Arduino IDE het resultaat moeten weergeven.
Als u echt maar dan is het mogelijk om het te laten werken (of vergelijkbare functionaliteit te implementeren). Een volledige uitleg staat op deze pagina:
Antwoord
In setup()
, start serieel en kies je snelheid:
Serial.begin(9600);
Waar je ook naar serie wilt schrijven:
Serial.write("write this");
Waar u maar een nieuwe regel wilt:
Serial.println();
voorbeeld
void setup() { // put your setup code here, to run once: Serial.begin(9600); Serial.write("Hello World"); } void loop() { // put your main code here, to run repeatedly: }
Reacties
- mijn vraag is eigenlijk waar ik print als ik niet ' t definieer
Serial
invoid setup()
en typ gewoonprintf
invoid loop()
? - @ironzion lion als je de printf documentatie leest .. je zult het vinden …
- @ironzionlion het ' is een LCD … tadaaaaaaa playground.arduino.cc/Main/Printf
main
in Arduino. Je hebt desetup
voor initialisatie en deloop
voor de voortdurende lusmain
in Arduino, maar deze is verborgen seeedstudio.com/wiki/Where_is_Main_Function