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

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

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

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

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

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

Автоматика и аппаратура связи Дистанционное и непосредственное управление исполнительными механизмами, сотовая, а также радиосвязь.

Ответ
Опции темы
Непрочитано 04.02.2016, 17:12   #1281
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Попробовать держать ногу CSN на плюсе резистором, чтобы пока проц в ауте, чип не писал мусор в регистры.
Реклама:
Easyrider83 вне форума   Ответить с цитированием
Непрочитано 10.02.2016, 19:02   #1282
vrt90
Временная регистрация
 
Регистрация: 25.01.2004
Адрес: Казахстан Северный
Сообщений: 81
Сказал спасибо: 2,771
Сказали Спасибо 80 раз(а) в 22 сообщении(ях)
vrt90 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Здравствуйте. Не нашел соответствующей темы, решил спросить здесь. Пришли с Китая радиомодули NRF905.
http://www.ebay.com/itm/NRF905-PTR80...8AAOSw1ZBUwGqS
Кто с ними уже работал, просьба подсказать, существует ли быстрый способ для проверки их работоспособности. Когда разбирался с GSM модулями WISMO 228 сначала научился АТ командами производить звонки, отправлять СМС, потом все эти последовательности после обкатки на компьютере реализовал в виде программы на PIC и отправлял через UART в модуль. Существует ли аналогичная готовая программная оболочка для связи с модулем NRF905? Первым делом хочу научиться программировать частоту приема/передачи в радиомодуле, потом уже изучать структуру пакета данных. Если все правильно понял, протокол SPI, как аппаратно бюджетно организовать для связи с компьютером по RS-232?
Любителям разводить пальцы веером и тыкать в изучение англо-даташита просьба не беспокоиться. Спасибо
vrt90 вне форума   Ответить с цитированием
Непрочитано 10.02.2016, 19:14   #1283
vrt90
Временная регистрация
 
Регистрация: 25.01.2004
Адрес: Казахстан Северный
Сообщений: 81
Сказал спасибо: 2,771
Сказали Спасибо 80 раз(а) в 22 сообщении(ях)
vrt90 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Для WISMO использовал ПО Sierra Wireless Software Suite v2.34
vrt90 вне форума   Ответить с цитированием
Непрочитано 03.03.2016, 11:39   #1284
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Update!
Обновил свою библиотеку под nRF24L01. Файлы прикреплены к первому сообщению.
Список изменений:
- Использован энумированный тип. Теперь в дебаге хорошо видно, что именно означает код ошибки
- Изменен процесс обращения к SPI. Использованы функции SPI_Select и SPI_Deselect, что позволило выбросить обращение к GPIO из файла библиотеки и что самое важное - корректно работает передача данных в буфер без перерыва за счет использования буфера передачи на микроконтроллерах STM. Есть там такая полезная фича, позволяющая передавать данные без перерыва без использования прерываний и DMA. Подробнее в статье
- Изменена структура инитиализации. Вместо фиксированных массивов с адресами используем указатели. Теперь можно указывать на данные во флеши, что слегка экономит оперативную память.
- Добавлена процедура быстрого переконфигурирования RX-TX и режима сна.
Все отлажено и прекрасно работает с STM8L/S и STM32. На пиках-аврах потребуется легкая корректировка прослойки SPI-GPIO.
Easyrider83 вне форума   Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо Easyrider83 за это сообщение:
korka123 (15.07.2016), Loole (03.03.2016)
Непрочитано 27.03.2016, 09:58   #1285
IvanPletnev
Прохожий
 
Регистрация: 27.10.2009
Сообщений: 1
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
IvanPletnev на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Сообщение от wlad773 Посмотреть сообщение
Вот и я добрался и подключил NRF24L01 + PA+LNA. И моему удивлению и разочарованию не было предела, когда выяснилось, что дальность такая же как у безантенных модулей. Кто нибудь может прояснить ситуацию?
Не знаю, у меня в промышленной эксплуатации такие модули. Они шлют пакет 18 байт с частотой 560 раз в секунду на расстояние 1200м. С антеннами yagi 16 dB. Уже два года работают отлично.
IvanPletnev вне форума   Ответить с цитированием
Непрочитано 27.03.2016, 10:43   #1286
zöner
Гражданин KAZUS.RU
 
Регистрация: 16.02.2012
Сообщений: 441
Сказал спасибо: 89
Сказали Спасибо 735 раз(а) в 149 сообщении(ях)
zöner на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

еще либа, может кому пригодится:
.h: http://pastebin.com/vC76GFJF
.c: http://pastebin.com/ZHMx9m0r
zöner вне форума   Ответить с цитированием
Непрочитано 28.03.2016, 16:12   #1287
ZoomerJuk
Временная регистрация
 
Регистрация: 12.09.2008
Сообщений: 61
Сказал спасибо: 20
Сказали Спасибо 7 раз(а) в 5 сообщении(ях)
ZoomerJuk на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Столкнулся с непонятной (для меня) проблемой.

Передающий модуль циклически каждые 4мс меняет частоту и передаёт 1 раз (один и тот же) пакет. Частот всего 4 (65,24,56,33 каналы).
Приёмник при включении перестраивается последовательно с 0 по 125 канал, слушая каждый 18мс (что-бы охватить все 4 смены частоты передатчика).


Если после приёма и чтения данных делаю сброс флагов так
Код:
if(rf_read_reg1(0x17) & 0x01)		//RXFIFO emty?
rf_write_reg1(0x07, 0x40);		//clear RX_DR
else
{
rf_write_reg1(0xE2, 0x00);		//Flush RX
rf_write_reg1(0x07, 0x40);		//clear RX_DR
}
то приёмник видит только 24 и 33 канал.
Я смотрел по логическому анализатору, приём при этом идёт правильно, модуль выдаёт правильное количество принятых байт, чтение проходит правильно, на запрос состояния FIFO выдаётся 0х11, т.е. что буфер пуст и видно, что флаг RX_DR сбрасывается. Но приняв данные на 24 и 33 каналах, 56 и 65 модуль не видит.

Как только делаю после приёма и чтения данных вот так
Код:
rf_write_reg1(0xE2, 0x00);			//Flush RX
rf_write_reg1(0x07, 0x40);			//clear RX_DR
то есть внаглую смываю буфер (хотя он же пуст?) и сбрасываю RX_DR - все каналы с таким кодом принимаются нормально.

Как правильно организовать приём и как использовать Flush RX?
ПС использую модули NRF24L01+, включен только приём pipe 0.

Последний раз редактировалось ZoomerJuk; 28.03.2016 в 16:49.
ZoomerJuk вне форума   Ответить с цитированием
Непрочитано 12.04.2016, 11:30   #1288
krug_vv
Вид на жительство
 
Регистрация: 09.12.2009
Адрес: Россия, Тула
Сообщений: 377
Сказал спасибо: 192
Сказали Спасибо 156 раз(а) в 99 сообщении(ях)
krug_vv на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Господа, столкнулся с непоняткой.

Есть хорошо работающая система, у которой приемник и пультик.
С пультика можно сделать только "Включить-выключить-горячее-холоднее".
Т.е. для блондинок.
Возникла задача добавить еще один пульт для тонких настроек параметров, повесить его на Pipe1.

адреса задаю вот так:

Код:
	start_RF_addr[0]=0xE7; 
	start_RF_addr[1]='F';//(u8)(RF_Addr››24); 
	start_RF_addr[2]='K';//(u8)(RF_Addr››16); 
	start_RF_addr[3]='E';//(u8)(RF_Addr››8); 
	start_RF_addr[4]='Y';//(u8)(RF_Addr);

	Pipe1_Addr[0] = 0xE7;
	Pipe1_Addr[1] = 'P';
	Pipe1_Addr[2] = 'I';
	Pipe1_Addr[3] = 'P';
	Pipe1_Addr[4] = 'E';
Инит вот такой:

Код:
unsigned char Init_NRF24L01 (unsigned char RF_Mode, u8 *addr)
{
  /*24L01 INIT*/
  RF_InitTypeDef RF_InitStruct;
	
	CE_L();
  RF_InitStruct.RF_Power_State=RF_Power_On;

	if(RF_Mode==RF_Mode_TX)
	{	 RF_InitStruct.RF_Config=RF_Config_IRQ_RX_Off|RF_Co  nfig_IRQ_TX_On|RF_Confing_IRQ_Max_Rt_Off;	} //RF_Confing_IRQ_Max_Rt_On;
	else
	{  RF_InitStruct.RF_Config=RF_Config_IRQ_RX_On|RF_Con  fig_IRQ_TX_Off|RF_Confing_IRQ_Max_Rt_Off;	}

	RF_InitStruct.RF_Mode=RF_Mode;	

  RF_InitStruct.RF_CRC_Mode      = RF_CRC16_On;
  RF_InitStruct.RF_Pipe_Auto_Ack = 0;//RF_Pipe0_Ack_Enable;
  RF_InitStruct.RF_Enable_Pipe   = RF_Pipe0_Enable | RF_Pipe1_Enable;
  RF_InitStruct.RF_Setup         = RF_Setup_5_Byte_Adress;
  RF_InitStruct.RF_TX_Power      = RF_TX_Power_High;
  RF_InitStruct.RF_Data_Rate     = RF_Data_Rate_256kbs;
  RF_InitStruct.RF_Channel       = 100;
  
  RF_InitStruct.RF_RX_Adress_Pipe0[0]=addr[0];
  RF_InitStruct.RF_RX_Adress_Pipe0[1]=addr[1];
  RF_InitStruct.RF_RX_Adress_Pipe0[2]=addr[2];
  RF_InitStruct.RF_RX_Adress_Pipe0[3]=addr[3];
  RF_InitStruct.RF_RX_Adress_Pipe0[4]=addr[4];

  RF_InitStruct.RF_RX_Adress_Pipe1[0]=Pipe1_Addr[0];
  RF_InitStruct.RF_RX_Adress_Pipe1[1]=Pipe1_Addr[1];
  RF_InitStruct.RF_RX_Adress_Pipe1[2]=Pipe1_Addr[2];
  RF_InitStruct.RF_RX_Adress_Pipe1[3]=Pipe1_Addr[3];
  RF_InitStruct.RF_RX_Adress_Pipe1[4]=Pipe1_Addr[4];
  
  RF_InitStruct.RF_TX_Adress[0]=RF_InitStruct.RF_RX_Adress_Pipe0[0];
  RF_InitStruct.RF_TX_Adress[1]=RF_InitStruct.RF_RX_Adress_Pipe0[1];
  RF_InitStruct.RF_TX_Adress[2]=RF_InitStruct.RF_RX_Adress_Pipe0[2];
  RF_InitStruct.RF_TX_Adress[3]=RF_InitStruct.RF_RX_Adress_Pipe0[3];
  RF_InitStruct.RF_TX_Adress[4]=RF_InitStruct.RF_RX_Adress_Pipe0[4];
	
  RF_InitStruct.RF_Payload_Size_Pipe0=16;
  RF_InitStruct.RF_Payload_Size_Pipe1=16;
	
  RF_InitStruct.RF_Auto_Retransmit_Count=15;
  RF_InitStruct.RF_Auto_Retransmit_Delay=6;
  return RF_Init(&RF_InitStruct);
}
//
Когда прописываю оба адреса, Pipe0 и Pipe1 - приемник не работает вообще, IRQ не дрыгается. Думал он зависает, так нет, на передачу работает.
Стоит закомментировать инит любого из адресов (хоть Pipe0, хоть Pipe1) - всё начинает приниматься. Правда после сброса питания, видать помнит старое.
Что бы это могло быть? Почему пара pipe не работает?
krug_vv вне форума   Ответить с цитированием
Непрочитано 12.04.2016, 11:42   #1289
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Либа проверялась со всеми включенными пайпами. Обновите либу, чтобы использовать указатели, а не лепить побайтное копирование из флеши в рам.
И убедитесь, что адреса пайпов различаются.
Easyrider83 вне форума   Ответить с цитированием
Непрочитано 12.04.2016, 12:06   #1290
krug_vv
Вид на жительство
 
Регистрация: 09.12.2009
Адрес: Россия, Тула
Сообщений: 377
Сказал спасибо: 192
Сказали Спасибо 156 раз(а) в 99 сообщении(ях)
krug_vv на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Обновил, проверил. То же самое.
В отладчике прогнал, адреса пишутся разные.
Назначение: адреса 0x0A и 0x0B.
На либу грешить не стОит, ведь по-одному работает хорошо.
А в паре - не хочет.
Попробовал другой приемник - то же самое.
Может чё из параметров еще надо?
Сейчас задается только
RF_InitStruct.RF_Enable_Pipe = RF_Pipe0_Enable | RF_Pipe1_Enable;
и
RF_InitStruct.RF_Payload_Size_Pipe0=16;
RF_InitStruct.RF_Payload_Size_Pipe1=16;
krug_vv вне форума   Ответить с цитированием
Ответ

Закладки


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Кто работал с драйвером DM132? sdsrem Микроконтроллеры, АЦП, память и т.д 0 06.07.2010 21:37
Кто нибудь имеет описание, как обращаться к KEELOQовскому регистру в PIC12F635/PIC16F636? Make_Pic Микроконтроллеры, АЦП, память и т.д 1 07.05.2010 12:53
Кто нибудь работал с MUST II System ? trilobit Производственное оборудование 0 28.04.2010 11:51
Кто нибудь имел дело со шрифтами? Djakovskij Микроконтроллеры, АЦП, память и т.д 8 18.02.2010 20:35
Кто работал с Ad7714? ALEKSEY188 Микроконтроллеры, АЦП, память и т.д 18 11.02.2010 03:54


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


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