Nonverbis
w
да.
И после смены бауда в скетче?) Мало ли
Nonverbis
w
Ну попробуй выбрать esp generic, там настроек больше
w
Кажись кварц 26/40мгц, если не путаю, на 8266 по крайней мере. С ним у меня такой прикол был
ok-home
Nonverbis
w
ok-home
Илфат
Павел Павлович
Прошу помощи!
char* DeleteElV31(){
int cc = sizeof(matrix) / sizeof(matrix[0]);
char temp[cc][9];
char* firstelement;
if(strcmp(matrix[0], "" ) > 0)
{
// значит в масиве есть чтото будем пересоздавать
firstelement = matrix[0];
Serial.println(firstelement);
for(int i=0; i < cc;i++){
strcpy(temp[i], matrix[i + 1]);
//Serial.println(temp[i-1]);
}
for(int i=0; i < cc;i++){
strcpy(matrix[i], temp[i]);
}
}
return firstelement;
}
strcpy(matrix[0], "KD:SE:01");
strcpy(matrix[1], "KD:SE:02");
char* part = DeleteElV31();
Serial.println(part); /// Здесь KD:SE:02
Функция возвращает 1 элемент, и перезаписывает массива без первого.
Функция, как будто возвращает указатель на элемент массива part = KD:SE:02, а должен KD:SE:01
Весь код https://wokwi.com/projects/356561979993854977
ㅤ
Хотя где-то видос видел там бп принесли в ремонт. Там все мосфеты отвалились, потому что предыдущий ремонтник их на розе посадил
ok-home
Илфат
ㅤ
Или ты по умолчанию считаешь что везде галимый шлак?
ok-home
Павел Павлович
Павел Павлович
кстати - если вы под ардуино пишете код - используйте string код в разы проще станет
Я попробовал сконвертить в string. по логике стало работать
String DeleteElV31(){
int cc = sizeof(matrix) / sizeof(matrix[0]);
char temp[cc][9];
String firstelement = "";
if(strcmp(matrix[0], "" ) > 0)
{
// значит в масиве есть чтото будем пересоздавать
firstelement = String(matrix[0]);
Serial.println(firstelement);
for(int i=0; i < cc;i++){
strcpy(temp[i], matrix[i + 1]);
//Serial.println(temp[i-1]);
}
for(int i=0; i < cc;i++){
strcpy(matrix[i], temp[i]);
}
}
return firstelement;
}
ok-home
Evgen
Evgen
admin
Добрый вечер. Подскажите, пытаюсь загрузить и затестить скетч на esp-01. Поставил прошивку AT21SDK95-2015-01-24. Написал скетч, через ардуино ide загрузил скетч на плату. Скетч простой, слушает датчик движения и при срабатывании (получении нагрузки на gpio0) отправляет пост запрос на сайтик.
В итоге даже просто при подаче питания на esp он к wifi не подключается. Но если подать питание на пин 3.3в(как и при простом подключении) и на пин для прошивки чипа, он подключается к wifi и начинает без остановки отправлять пост запросы(такое ощущение, что как-будто бы слушается пин для прошивки чипа, а не gpio0). Но без него модуль даже к вайфаю не подрубается. Как можно исправить данную проблему? Первый раз работаю с данным модулем и ардуино в целом, буду рад помощи.
Вот код скетча:
https://pastebin.com/hgPaiHGH
admin
Уж второй день бьюсь с этим модулем
SSR
Ну если на пине будет high, то он будет бесконечно слать запросы
ㅤ
admin
ㅤ
SSR
ㅤ
А, точно.
ㅤ
Моя теория опять сработала
admin
Не совсем понял. Ну а если gpio2, то что?
ㅤ
Почему никто не читает документацию, я не понимаю?
ㅤ
ㅤ
Эти пины нужно трогать аккуратно. С уважением
SSR
ㅤ
Если ты не читаешь документацию и в рандоме трогаешь их - то ССЗБ
SSR
ㅤ
Лишить себя часов увлекательного дебага?
Я когда был маленький, тоже сидел часами и дебажил всякую хуйню под виндой. Не понимал почему некоторые функциию страдают хуйней. А надо было всего то в мсдн прочитать под функцией раздел REMARKS, где было указано поведение функции при определенных вводных
ㅤ
А я до туда не долистывал(
admin
Извините, если вопросы тупые, но я кучу статей перечитал, везде пишут одно и то же и везде у всех всё работает(
ㅤ
admin
везде в примерах всё, что наподобие датчиков, подключают на gpio0
ㅤ
Так смотря каких датчиков блеать. Если датчик выдает ему низкий уровень при старте - есп8266 уйдет в режим прошивки
admin
Везде и тоже про пины 0 и 2?
вот, например. - https://hackaday.io/project/189007-iot-motion-sensor-using-esp01-pir. Я с таким же датчиком пробую...
ㅤ
Это страповые пины, надо понимать что ты делаешь
ㅤ
А зачем ты вообще взял есп8266 в исполнении есп-01? Места мало?
admin
места мало
admin
да)
admin
ну и + он по цене самый недорогой, самое то для начала
ㅤ
Щас есть миниаютрные более современные есп которые со всторенным юарт и флешкой внутри чипа
ㅤ
А ну да. писят рублей оно вроде стоит
admin
Ну а всё таки дело в плате или можно как-то победить это? Я понимаю, что возможно я где-то косячнул, подключаю может неправильно или код кривой, но хз где. Там с gpio всего 4 пина, 2 из них, судя по распиновкам, используются для загрузки в флеш. Их я решил не трогать(tx, rx). Остаётся 2 пина - gpio0 и gpio2. Пробовал и на тот и на другой, результат не тот, который ожидаю.
ㅤ
Ну а всё таки дело в плате или можно как-то победить это? Я понимаю, что возможно я где-то косячнул, подключаю может неправильно или код кривой, но хз где. Там с gpio всего 4 пина, 2 из них, судя по распиновкам, используются для загрузки в флеш. Их я решил не трогать(tx, rx). Остаётся 2 пина - gpio0 и gpio2. Пробовал и на тот и на другой, результат не тот, который ожидаю.
Я же вроде написал выше. Надо убедится так чтоб при старте эти пины были в положении указанном в документации. То есть гпио0 притянут к плюсу, гпино2 тоже к плюсу. Если их что-то будет минусить, то загрузчик есп8266 перейдет в режим ожидания прошивки
ㅤ
Гпио3 и 4 так же можно использовать по своему усмотрению, но тогда ты лишишься юарта
Nonverbis
SSR
ㅤ
Или ты подумал о каком то штурвале?
SSR
SSR
Что-то типа давай немочь вместе
admin
ㅤ
ㅤ
High это vdd, low это vss
ㅤ
admin
High это vdd, low это vss
То есть нужно при старте (если брать скетчи ардуино, то в setup() указать digitalWrite(pin, High)), а через секунд 5 можно ставить им значение LOW и слушать их?
admin
или я не так логику понял
ㅤ
И только после этого запускается уже твой код с флешки
ㅤ
Короче до твоего кода есть другой код. Поведение которого ты менять не можешь
admin
Так. То есть, чтобы прошивка работала, я должен на gpio0 и gpio2 изначально чтоли питание подать?