Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Удаленная работа
Помощь проекту

Делимся опытом Наступив на грабли - сообщи другим! Обмен опытом разработки и ремонта электронных устройств.

 
Опции темы
Непрочитано 04.06.2020, 18:23  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию помогите поправить ардуино скетч

братцы
подключил ардуйно нано к читателю rc522
залил скеть


#include ‹SPI.h›

#include ‹MFRC522.h›

#define RST_PIN 9 // Configurable, see typical pin layout above
#define SS_1_PIN 10 // Configurable, take a unused pin, only HIGH/LOW required, must be diffrent to SS 2
#define SS_2_PIN 8 // Configurable, take a unused pin, only HIGH/LOW required, must be diffrent to SS 1

#define NR_OF_READERS 2

byte ssPins[] = {SS_1_PIN, SS_2_PIN};

MFRC522 mfrc522[NR_OF_READERS]; // Create MFRC522 instance.

/**
* Initialize.
*/
void setup() {

Serial.begin(9600); // Initialize serial communications with the PC
while (!Serial); // Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)

SPI.begin(); // Init SPI bus

for (uint8_t reader = 0; reader ‹ NR_OF_READERS; reader++) {
mfrc522[reader].PCD_Init(ssPins[reader], RST_PIN); // Init each MFRC522 card
//Serial.print(F("Reader "));
///Serial.print(reader);
// Serial.print(F(": "));
mfrc522[reader].PCD_DumpVersionToSerial();
}
}

/**
* Main loop.
*/
void loop() {

for (uint8_t reader = 0; reader ‹ NR_OF_READERS; reader++) {
// Look for new cards

if (mfrc522[reader].PICC_IsNewCardPresent() && mfrc522[reader].PICC_ReadCardSerial()) {

dump_byte_array(mfrc522[reader].uid.uidByte, mfrc522[reader].uid.size);


MFRC522::PICC_Type piccType = mfrc522[reader].PICC_GetType(mfrc522[reader].uid.sak);



// mfrc522[reader].PICC_HaltA();

// mfrc522[reader].PCD_StopCrypto1();
} //if (mfrc522[reader].PICC_IsNewC
} //for(uint8_t reader
}

/**
* Helper routine to dump a byte array as hex values to Serial.
*/
void dump_byte_array(byte *buffer, byte bufferSize) {
for (byte i=0; i ‹ bufferSize ;i++) {
//Serial.print(buffer[i] ‹ 0x10 ? " 0" : " ");
Serial.print(buffer[i], HEX);
}
}
//----------------------------------------------
подношу карту 13мгц и он выдает, например,
40A744DA.
все четко, нo нужно поменять последовательность байтов на обратное т.е.
нужно получить DA44A740
ну, я подумал сделать так;
for (byte i=bufferSize; i›0 ;i--)
ну, последовательность то меняется, но теряются байты
0401957
попробовал так for (byte i=bufferSize-1; i›0 ;i--)
получил
401957 и опять не зватает одного
знатоки помогите пожалуйста в чем тут дело?
begun вне форума  
Непрочитано 04.06.2020, 19:06  
Ara41
Почётный гражданин KAZUS.RU
 
Регистрация: 30.09.2006
Сообщений: 1,615
Сказал спасибо: 164
Сказали Спасибо 731 раз(а) в 462 сообщении(ях)
Ara41 на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

for (byte i=bufferSize; i›=0 ;i--)
Ara41 вне форума  
Непрочитано 04.06.2020, 19:35  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

спасибо братец Ara41
я даже не могу проследить за кодом.
раньше при поднесении карты выдавал один код ,но после того как ввел

›=0 то непрерывно появляются большой частотой.
begun вне форума  
Непрочитано 04.06.2020, 21:35  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

и к тому же выдает совсем другой код
begun вне форума  
Непрочитано 04.06.2020, 21:39  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

в общем, реальная карта дает D5571940
а надо
401957D5
помогите брательнику.
begun вне форума  
Непрочитано 04.06.2020, 22:06  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

нашел другой скеч который только читает но не работает а ошибку не найду

#include ‹SPI.h›

#include ‹MFRC522.h›

#define SS_PIN 10
#define RST_PIN 9

RFID rfid(SS_PIN, RST_PIN);

// Данные о номере карты храняться в 5 переменных, будем запоминать их, чтобы проверять, считывали ли мы уже такую карту
int serNum0;
int serNum1;
int serNum2;
int serNum3;
int serNum4;

void setup()
{
Serial.begin(9600);
SPI.begin();
rfid.init();

}

void loop()
{
if (rfid.isCard()) {
if (rfid.readCardSerial()) { // Сравниваем номер карты с номером предыдущей карты
if (rfid.serNum[0] != serNum0
&& rfid.serNum[1] != serNum1
&& rfid.serNum[2] != serNum2
&& rfid.serNum[3] != serNum3
&& rfid.serNum[4] != serNum4
) {
/* Если карта - новая, то считываем*/
Serial.println(" ");
Serial.println("Card found");
serNum0 = rfid.serNum[0];
serNum1 = rfid.serNum[1];
serNum2 = rfid.serNum[2];
serNum3 = rfid.serNum[3];
serNum4 = rfid.serNum[4];

//Выводим номер карты
Serial.println("Cardnumber:");
Serial.print("Dec: ");
Serial.print(rfid.serNum[0],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[1],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[2],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[3],DEC);
Serial.print(", ");
Serial.print(rfid.serNum[4],DEC);
Serial.println(" ");

Serial.print("Hex: ");
Serial.print(rfid.serNum[0],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[1],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[2],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[3],HEX);
Serial.print(", ");
Serial.print(rfid.serNum[4],HEX);
Serial.println(" ");
} else {
/* Если это уже считанная карта, просто выводим точку */
Serial.print(".");
}
}
}

rfid.halt();
}
begun вне форума  
Непрочитано 04.06.2020, 22:08  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

выдает
'rfid' daes not name a tipe
begun вне форума  
Непрочитано 04.06.2020, 23:29  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

господин raxp
еще раз помогите пожалуйста!!
begun вне форума  
Непрочитано 05.06.2020, 17:40  
begun
Гражданин KAZUS.RU
 
Регистрация: 18.07.2006
Сообщений: 700
Сказал спасибо: 153
Сказали Спасибо 29 раз(а) в 27 сообщении(ях)
begun на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

братцы, нашелся еще один, лучший представитель человечества.
настоящий человек и большая умница.
это - COS Fi.
гениальность в простоте.
он предложил вот такую строку в конце первого скеча.
Serial.print(buffer[i-1], HEX);
и чудо свершилось .работает на высшем уровне!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
пока я не знаю как из личного кабинета с ним связаться ,чтобы отблагодарить, но надеюсь, что увидит этот пост.
begun вне форума  
Непрочитано 05.06.2020, 19:22  
akegor
Гуру портала
 
Аватар для akegor
 
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 17,453
Сказал спасибо: 2,548
Сказали Спасибо 10,867 раз(а) в 5,431 сообщении(ях)
akegor на пути к лучшему
По умолчанию Re: помогите поправить ардуино скетч

Сообщение от begun Посмотреть сообщение
пока я не знаю как из личного кабинета с ним связаться
Вот так. Жмакнуть по треугольнику и выбрать из менюшки.
Миниатюры:
Нажмите на изображение для увеличения
Название: Личка.jpg
Просмотров: 0
Размер:	45.7 Кб
ID:	153661  
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
akegor вне форума  
 

Закладки
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите с ардуино z2z AVR 6 06.03.2019 13:24
Помогите поправить схему канала ЦМУ Joiner Источники питания и свет 13 18.06.2015 21:35
Быстро проверить исправность Ардуино. 123ksn AVR 9 25.11.2014 11:54
Помогите русифицировать Anycall Samsung SEC SCHW770, SEC SCHW420, SEC SCHW2700, SEC SCHW570 Rusik_best Автоматика и аппаратура связи 0 27.12.2011 16:13
Помогите, пожалуйста, с PICом и дисплеем VaL_KX Proteus 4 15.11.2010 22:33


Часовой пояс GMT +4, время: 12:44.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd. Перевод: zCarot