Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Ардуино, не выводится текст в Serial plotler

Daniil Falin Ученик (95), на голосовании 3 месяца назад
 #include 

Servo rotate;

#define btn_up 2
#define btn_down 4
#define btn_left 3
#define btn_right 5

#define pinX 6
#define pinY 7
#define swPin 8

void setup() {
Serial.begin(9600);
rotate.attach(9);
pinMode(pinX, INPUT);
pinMode(pinY, INPUT);
pinMode(swPin, INPUT);
digitalWrite(swPin, HIGH);
pinMode(btn_up, INPUT);
pinMode(btn_down, INPUT);
pinMode(btn_left, INPUT);
pinMode(btn_right, INPUT);
}

void loop() {
rotate.write(260);
int X = digitalRead(pinX);
int Y = digitalRead(pinY);
int UP = digitalRead(btn_up);
int DOWN = digitalRead(btn_down);
int RIGHT = digitalRead(btn_right);
int LEFT = digitalRead(btn_left);
Serial.println("X:");
Serial.print(X);
Serial.println("Y:");
Serial.print(Y);
Serial.print("UP:");
Serial.println(UP);
Serial.print("DOWN:");
Serial.println(DOWN);
Serial.print("RIGHT:");
Serial.println(RIGHT);
Serial.print("LEFT:");
Serial.println(LEFT);
}

вот код. в Serial port выводится множество нулей
Голосование за лучший ответ
gxsizor Профи (723) 4 месяца назад
gpt в помощь
Daniil FalinУченик (95) 4 месяца назад
как он мне поможет? он отсталый в край
gxsizor Профи (723) В вашем коде есть несколько моментов, которые могут влиять на вывод в Serial Monitor и Serial Plotter. Во-первых, убедитесь, что вы правильно настроили подключение кнопок и джойстика к пинам Arduino. Во-вторых, обратите внимание на типы данных, которые вы используете для чтения и печати значений. Вот несколько рекомендаций для устранения проблем: Проверьте подключение: Убедитесь, что все кнопки и джойстик правильно подключены к Arduino. Использование правильных функций для чтения значений: Для аналоговых пинов следует использовать analogRead, а для цифровых digitalRead. Проверка кода печати: Убедитесь, что вы правильно используете функции Serial.print и Serial.println. Вот исправленный код с комментариями:
Daniil FalinУченик (95) 4 месяца назад
"знаток"
gxsizor Профи (723) Daniil Falin, ну простите учу джаву а не ардуино
gxsizorПрофи (723) 4 месяца назад
не попробуешь не узнаешь, на java 300 строчек легко пишет
gxsizorПрофи (723) 4 месяца назад
#include <Servo.h>

Servo rotate;

#define btn_up 2
#define btn_down 4
#define btn_left 3
#define btn_right 5

#define pinX A0 // Используем аналоговые пины
#define pinY A1
#define swPin 8

void setup() {
Serial.begin(9600);
rotate.attach(9);
pinMode(swPin, INPUT_PULLUP);
pinMode(btn_up, INPUT_PULLUP);
pinMode(btn_down, INPUT_PULLUP);
pinMode(btn_left, INPUT_PULLUP);
pinMode(btn_right, INPUT_PULLUP);
}

void loop() {
rotate.write(90); // Убедитесь, что значение в пределах 0-180
gxsizorПрофи (723) 4 месяца назад
int X = analogRead(pinX); // Чтение аналоговых значений

int Y = analogRead(pinY);

int UP = digitalRead(btn_up);

int DOWN = digitalRead(btn_down);

int RIGHT = digitalRead(btn_right);

int LEFT = digitalRead(btn_left);



Serial.print("X: ");

Serial.println(X);

Serial.print("Y: ");

Serial.println(Y);

Serial.print("UP: ");

Serial.println(UP);

Serial.print("DOWN: ");

Serial.println(DOWN);

Serial.print("RIGHT: ");

Serial.println(RIGHT);

Serial.print("LEFT: ");

Serial.println(LEFT);



delay(500); // Добавление задержки для удобочитаемости

}
gxsizorПрофи (723) 4 месяца назад
Некоторые изменения, внесённые в код:

Использование analogRead для чтения значений с аналоговых пинов pinX и pinY.
Изменение значения для rotate.write на 90, чтобы убедиться, что оно находится в пределах допустимого диапазона (0-180).
Добавление задержки delay(500), чтобы значения не обновлялись слишком быстро и было удобнее читать их в Serial Monitor.
Попробуйте загрузить этот код и проверить вывод в Serial Monitor. Если всё настроено правильно, вы должны видеть корректные значения, соответствующие положениям джойстика и состоянию кнопок.
Сергей Кузнецов Оракул (54879) 4 месяца назад
Ну думаю просто сигнал на портах равен нулю вот и результат
Daniil FalinУченик (95) 4 месяца назад
неа, там выводятся нули без предшествующих меток, а в графике отображается только одна переменная.
Daniil FalinУченик (95) 4 месяца назад
а также серво привод просто стоит вместо поворота на 260 градусов
Сергей КузнецовОракул (54879) 4 месяца назад
Так ты не назначил пин swPin. как вывод так что команда digitalWrite(swPin,HIGH)не работает.
А ты не выводи в график , а выведи просто в порт и посмотри
Daniil FalinУченик (95) 4 месяца назад
так serial print выводит в Serial plotler и в Serial monitor сразу :|
Daniil FalinУченик (95) 4 месяца назад
ты хоть программу Arduino IDE видел хоть раз?
Сергей КузнецовОракул (54879) 4 месяца назад
В плотное рисуется график, а в мониторе видно все в цифре. Ч ни когда и пользуюсь Портером мне это не удобно Я а вот монитором самый раз. Если там нули значит или битрейт не верный выставлен
Похожие вопросы