我正在尝试将GPS坐标输入到串行监视器中,以便在无人机项目中使用
但是,每当我尝试输入GPS坐标时,它会自动写入一个GPS坐标,而不需要我的输入。例如,GPS纬度显示为0.00,但程序会等待GPS经度信息。
有关详细情况,请参阅所附图片。
int GPSNumCor;
void setup() {
// put your setup code here, to run once:
Serial.begin (115200);
Serial.print("What is the number of your GPS Coordinate? ");
w
为了学习一些基本知识,我正在做一些简单的arduino项目。
对于这个项目,我试图打印通过串行监视器发送的一行。当我打印行时,我的前导文本将与用户输入的第一个字符一起打印,然后开始一个新的行,并与其余的用户数据一起再次打印前导文本。我不知道为什么会这样。
这是我的代码:
char data[30];
void setup()
{
Serial.begin(9600);
}
void loop()
{
if (Serial.available())
{
//reset the data array
for( int i = 0; i < sizeof(da
我试图等待用户输入启动程序操作,然后当用户发送停止命令时,循环停止运行。在循环运行时,我无法让串行端口继续读取输入。
所以我希望用户按1,然后进入循环并显示来自中断的数据。但是我希望它继续监视串行输入,所以当我输入2时,我将退出循环并停止打印到Serial。
串口没有注册我的第二个输入。
我遗漏了一些代码,但重要的东西应该在那里。
int userStart = 0; // Holder for user input to start program
int userStop = 0; // Holder for user input to stop program
void setup
我在试着做调谐器。3个leds连接到Arduino Uno板,每个leds对应一种情况(过高、过低或过高)。Python根据麦克风输入处理音符的检测,并确定应该打开哪个led,但由于它是实时调谐器,Python发送信息的速度非常快。我已经知道如何一次打开一个led,只要输入没有改变,它就会一直亮着,但它只有在我手动操作的时候才能工作,Python程序如下:
code=1
while code!=0:
code=input("Code?")
ser.write(code.encode('utf-8'))
如果我尝试使用Python代码,例如:
c
我在Arduino上编写了这段代码,目标是让用户在串行监视器中输入延迟时间,然后LED应该随着该延迟时间闪烁。例如,如果我输入1000,LED应该打开1秒,然后关闭1秒,然后重复。
我的问题是,当代码运行完一次后,它会等待新的用户输入,而不是继续闪烁。我想我必须把Serial.parseInt从循环中拿出来,但我不确定为什么每次我试着把它放在其他地方时,LED就会不断亮起。
代码如下:
int ledPin = 13;
void setup() {
// put your setup code here, to run once:
pinMode(ledPin, OUTPUT);
为什么我总是得到0?我尝试了几种方法,然后我在arduino网站上使用了示例代码,但也不起作用。我总是得到Serial.available()=0
int incomingByte = 0; // for incoming serial data
void setup() {
Serial.begin(9600); // opens serial port, sets data rate to 9600 bps
}
void loop() {
// send data only when you receive data:
if
我用Arduino Uno控制来自磁性传感器的脉冲。在操作开始之前,我需要读取两个浮点数作为我的计算的参数。我的arduino代码如下:
int i=0;
while (true) //wait until parameters are read
{
if (Serial.available())
{
inData[i++]=Serial.parseFloat();
}
if (i>=initLength) {
return true;
}
}
如果我使用内置串行监视器没有问题,我可以输入,即"1.5 2.5“,并按回车键,参数读取正确。但
如果我在串行监视器中输入"forward“,我想让它转到"forward”,如果我输入"Reverse“,我想让它转到"Reverse”。
String readString;
int a = 8;
int b = 7;
void setup() {
Serial.begin(9600);
pinMode(a, OUTPUT);
pinMode(b, OUTPUT);
Serial.println("Test");
}
void loop() {
while (Serial.available()) {
dela
我在arduino制作了ambilight,现在我想弄清楚它是如何工作的。这是显示LEDS程序的主循环。
有人能告诉我第一个循环(什么是魔术词),嗨,罗,校验和,如果校验和不匹配,回去等待。
void loop() {
// Wait for first byte of Magic Word
for(i = 0; i < sizeof prefix; ++i) {
waitLoop: while (!Serial.available()) ;;
// Check next byte in Magic Word
if(prefix[i] == Serial
输入的红色LED闪烁将是任何东西,例如4。一旦我给红色LED输入:
1-红色LED闪烁4次2-显示给黄色3输入的信息-在输入之前,红色LED开始闪烁
程序正在跳过黄色LED。
int redLED;
int yellowLED;
int redLEDpin = 8;
int yellowLEDpin = 4;
void setup() {
// put your setup code here, to run once:
pinMode(redLEDpin ,OUTPUT);
pinMode(yellowLEDpin, OUTPUT);
Serial.b
我希望能够让用户输入一个字符串,并将其与另一个字符串进行比较,如果它匹配,则程序可以继续,否则它将继续请求输入。我做了一个与字符串匹配的基本输入。
我不知道如何处理要求连续输入的任务。
String defaultPassword = "pass1234";
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
Serial.println("Enter password: ");
}
void loop() {
// put your mai
我正在尝试在某个事件上从shell脚本发送回声。
echo naval > /dev/cu.usbmodem1421
在此/dev/cu.usbmodem1421串行端口上,我的Blend微型Atmega32u4板正在侦听。
但每次我发送回声时,它都会显示“资源忙”。
我不确定有什么解决方案?
Arduino代码:
int incomingByte = 0; // for incoming serial data
void setup() {
Serial.begin(9600); // opens serial port, sets data rate to 96
在YT教程之后的3天里,我一直在学习如何使用Arduino。我目前正在学习串行监视器的输入输出功能。
运行循环一次后,串行监视器自动输入0并注册为输入,然后返回到接受用户输入。
我想说的截图:
代码如下:
//inputs
int blinks;
String question = "How many times would you like the LED to blink? ";
//LED
int LEDPin = 8;
//while loop
int i = 1;
//delay
int delayTime = 500;
void setup() {
这段代码应该返回反转的字符串,但是由于某种原因循环不能工作(我选择了len=4来简化它,它的大小;最初)
char s[100];
char RevStr[100];
int availableBytes;
String mystring;
int i = 0;
int k = 0;
int len;
int j = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(9600);
}
void loop() {
if (Serial.available() > 0) {
我已经在我的上运行了一个简单的串行程序,它只是与您输入的任何内容相呼应。当在Arduino Sketch (v22)中运行时,这是非常有效的。
int incomingByte = 0; // for incoming serial data
void setup() {
Serial.begin(115200); // opens serial port, sets data rate
}
void loop() {
// send data only when you receive data:
if (Serial.available() > 0
我正在研究物体跟踪机器人。我正在使用python和OpenCV来检测对象,并将适当的数据发送到控制两个伺服电机的arduino。应发送到arduino的数据是0-180范围内的伺服电机角度。我使用示例代码来理解python和arduino是如何使用串行bus.When进行通信的。我发送一个数字,arduino接收到它并按预期工作,但是当我发送超过一个数字时,什么都不会发生。这是arduino代码:
#include <Servo.h>
int data;
Servo myservo; // create servo object to control a servo
// twe
该程序用于读取输入,并将其写入Arduino的串行监视器中。在串行监视器中只写一个字符的问题。
void setup()
{
Serial.begin(9600); //Set the serial monitor.
lcd.begin(16, 2); //Set the LCD
}
// Alignment variables
boolean left = true; //Set boolean left to true to begin to display text in middle of screen.
boolean right = false; //Other possible
目前,我正在做一个项目,从串行监视器读取字符输入,并命令Arduino打开/关闭特定的引脚。我面临的问题是,我无法读取串行监视器中输入的完整字符数组。谁能告诉我我做错了什么? #define X 13 //led pin
char txt[15];
int i;
int Status=0;
void setup() { // put your setup code here, to run once:
pinMode(X,OUTPUT);// setting the pin flow of control as output
Serial.begin(9600);