08-01-2020, 23:39
Cześć,
jest to mój pierwszy post na tym forum, ale widzę że tematy jakie poruszacie są bardzo ciekawe. Jestem dość początkującym użytkownikiem Arduino, a tematem, którym zajmuję się aktualnie jest zestaw skrzyneczek, które chciałbym otwierać za pomocą breloków RFID. Stronę mechaniczną projektu mam mniej więcej opanowaną - planuję zrobić to z wykorzystaniem elektrozamków zasilanych zewnętrznie z użyciem przekaźników. Moduł RFID, który kupiłem to urządzenie, którego opis można znaleźć pod tym linkiem:
https://botland.com.pl/pl/grove-moduly-d...ntena.html
Udało mi się do niego ściągnąć biblioteki ze strony producenta, które wydają się działać poprawnie. Kod wygląda tak:
Program funkcjonuje prawidłowo - pokazuje w monitorze portu szeregowego numer breloka w formacie "02002428CBC5", przez co wnioskuje, że wszystko dobrze podłączyłem.
Mam natomiast problem z uchwyceniem zmiennej, która przechowuje odczytany kod. Kiedy próbuje konstruować jakąkolwiek funkcję w oparciu o zmienną len lub dta, to program pokazuje błąd lub układ po prostu nie działa. Chciałbym, aby działało to w ten sposób, że przy odczytaniu kodu x na pin 1 kontroler podaje napięcie wysokie, a jak kod y to wysokie na pin 2 itd.
Wydaje mi się, że biblioteka korzysta z funkcji tablicowej, niestety nie potrafię na jej podstawie nic sensownego stworzyć
Czy ma ktoś jakiś pomysł jak napisać kilka linijek, które to załatwią?
jest to mój pierwszy post na tym forum, ale widzę że tematy jakie poruszacie są bardzo ciekawe. Jestem dość początkującym użytkownikiem Arduino, a tematem, którym zajmuję się aktualnie jest zestaw skrzyneczek, które chciałbym otwierać za pomocą breloków RFID. Stronę mechaniczną projektu mam mniej więcej opanowaną - planuję zrobić to z wykorzystaniem elektrozamków zasilanych zewnętrznie z użyciem przekaźników. Moduł RFID, który kupiłem to urządzenie, którego opis można znaleźć pod tym linkiem:
https://botland.com.pl/pl/grove-moduly-d...ntena.html
Udało mi się do niego ściągnąć biblioteki ze strony producenta, które wydają się działać poprawnie. Kod wygląda tak:
Kod:
#include "Suli.h"
#include "Wire.h"
#include "SoftwareSerial.h"
#include "Rfid_Reader_Arduino.h"
SoftwareSerial mySerial(A5, A4);
Rfid_Reader_Arduino rfid(&mySerial, -1);
void setup()
{
Serial.begin(115200);
}
int len;
unsigned char dta[50];
void loop()
{
if(rfid.isData())
{
len = rfid.getData(dta);
}
if(len>0)
{
for(int i=0; i<len; i++)
{
Serial.write(dta[i]);
}
len = 0;
}
}
Program funkcjonuje prawidłowo - pokazuje w monitorze portu szeregowego numer breloka w formacie "02002428CBC5", przez co wnioskuje, że wszystko dobrze podłączyłem.
Mam natomiast problem z uchwyceniem zmiennej, która przechowuje odczytany kod. Kiedy próbuje konstruować jakąkolwiek funkcję w oparciu o zmienną len lub dta, to program pokazuje błąd lub układ po prostu nie działa. Chciałbym, aby działało to w ten sposób, że przy odczytaniu kodu x na pin 1 kontroler podaje napięcie wysokie, a jak kod y to wysokie na pin 2 itd.
Wydaje mi się, że biblioteka korzysta z funkcji tablicowej, niestety nie potrafię na jej podstawie nic sensownego stworzyć
Czy ma ktoś jakiś pomysł jak napisać kilka linijek, które to załatwią?