RFID+ARDUINO+PROCCESING
- Войдите на сайт для отправки комментариев
Ср, 15/07/2020 - 15:53
Кароче, я хочу сделать так что-бы когда я ставил карточку к RFID(arduino) в COM-порт(11) просто писалось 1 например, и Proccesing должен считывать данные и проверить ли это точно 1, эсли всё будет правильно тогда должен открыться файл access+.bat там я сделал так:
start C:\Users\Admin\Desktop\rfid\1.mp3 timeout 3 taskkill /IM wmplayer.exe
Пробывал уже 100 раз но всегда ошибка, кто поможет хотя-бы просто проверку в Proccesing, спасибо!!!!
но всегда ошибка
Попробуй исправить то, что написано в ошибке. Должно помочь.
ЭТО КОД PROCCESING import processing.serial.*; Serial serial; // создаем объект последовательного порта String received; // данные, получаемые с последовательного порта void setup() { size(320, 120); String port = Serial.list()[0]; serial = new Serial(this, port, 9600); } void draw() { if ( serial.available() > 0) { // если есть данные, // считываем их и записываем в переменную received received = serial.readStringUntil('\n'); if (received == "1") { print(123); } } // Настройки для текста textSize(24); clear(); fill(10, 10, 10); if (received != null) { if (received == "1") { print(123); } text(received, 10, 30); } }ЭТО АРДУИНО-КОД
#include <SPI.h> #include <MFRC522.h> #define SS_PIN 10 #define RST_PIN 9 MFRC522 mfrc522(SS_PIN, RST_PIN); // создаем экземпляр MFRC522 instance. void setup() { Serial.begin(9600); // запускаем последовательную коммуникацию SPI.begin(); // инициализируем шину SPI mfrc522.PCD_Init(); // инициализируем MFRC522 Serial.println("Approximate your card to the reader..."); // "Приложите карту к ридеру... " Serial.println(); } void loop() { // ищем новые карты: if ( ! mfrc522.PICC_IsNewCardPresent()) { return; } // выбираем одну из карт: if ( ! mfrc522.PICC_ReadCardSerial()) { return; } // показываем UID на мониторе порта: String content= ""; byte letter; for (byte i = 0; i < mfrc522.uid.size; i++) { content.concat(String(mfrc522.uid.uidByte[i] < 0x10 ? " 0" : " ")); content.concat(String(mfrc522.uid.uidByte[i], HEX)); } content.toUpperCase(); if (content.substring(1) == "F9 51 13 C9") // впишите здесь UID тега, которому вы хотите дать доступ { Serial.println("1"); // "Доступ открыт" delay(2000); }else { Serial.println("Доступ заборонено"); // "Запрос на доступ отклонен" } }Смотри я ошибки исправил, но когда прикладываю карту ничего не происходит в Proccesing
Кароче, я хочу сделать так что-бы у меня бабла были полные карманы и чтобы мне все девки давали.
Пробывал уже 100 раз но всегда ошибка, кто поможет хотя-бы просто чтобы бабло в карманах шуршало, спасибо!!!!
Смотри я ошибки исправил, но когда прикладываю карту ничего не происходит в Proccesing
отключи пока процессинг нафиг, включи обычный монитор порта в Ардуино ИДЕ. Подключи свою ардуину, поднеси карточку к считывателю - в Мониторе порта что-нибудь появляется?
Смотри я ошибки исправил, но когда прикладываю карту ничего не происходит в Proccesing
отключи пока процессинг нафиг, включи обычный монитор порта в Ардуино ИДЕ. Подключи свою ардуину, поднеси карточку к считывателю - в Мониторе порта что-нибудь появляется?
Да
Да
что?
Да
что?
Приходит всё на ардуинку, всё данные. Мне помощь токо по коду нужна, типа как сделать проверку данных полученых с ардуинки
Приходит всё на ардуинку, всё данные.
ну значит все работает, расслабся
ЗЫ Коленька, тебе не приходит в голову, что те, кому нужна помощь - так не отвечают? тебе лет-то сколько, 13-14. наверно?
Приходит всё на ардуинку, всё данные.
ну значит все работает, расслабся
ЗЫ Коленька, тебе не приходит в голову, что те, кому нужна помощь - так не отвечают? тебе лет-то сколько, 13-14. наверно?
Слушай я даже больше скажу мне 12, и я просто хотел попросить совет.
Слушай я даже больше скажу мне 12, и я просто хотел попросить совет.
Врешь , наверно.
если хотел совета - так отвечай нормально, когда спрашивают, чтобы не надо было клещами вытягивать.
Смотри - если у тебя в Монитор все правильно выводится - значит код для Ардуино верный. Ошибка в процессинге.
Я не особо знаток в процессинге, но вот строчка 11 мне категорически не нравится. С чего ты взял. что порт, к которому подключена ардуино - будет первым в списке?
Для приема данных в PROCCESING лучше использовать void serialEvent(Serial Port), а не вставлять его в draw. Если перейти в раздел PROCCESING можно обнаружить примеры такого кода.
Отладку стоит проводить по частям, удалив все лишнее. Например, сначала передавать из ардуины одно число и убедиться, что PROCCESING получает именно его, если нет то искать ошибку, затем передавать последовательность данных и т.д.
Кроме того, наверно, стоит прямо указывать порт - COM6, а не ссылку на лист.