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

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

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

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

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

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

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

 
Опции темы
Непрочитано 01.11.2011, 16:22  
sdsrem
Почётный гражданин KAZUS.RU
 
Аватар для sdsrem
 
Регистрация: 08.09.2009
Сообщений: 1,139
Сказал спасибо: 138
Сказали Спасибо 366 раз(а) в 230 сообщении(ях)
sdsrem на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

2) Ничего делать не надо.
3) Повесить часовой кварц, и когда ничего не делаем проц работает от него, ток упадёт значительно.
4) Переключаемся на внутренний генератор 8мгц
Реклама:
sdsrem вне форума  
Сказали "Спасибо" sdsrem
LionRJ (01.11.2011)
Непрочитано 01.11.2011, 16:25  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Товарищи, будьте аккуратны. Модули с ебая идут с какой-то бета-альфа первой ревизией чипов. На них не работает контрольная сумма. Два дня проипался, пока вычислил проблему!
Easyrider83 вне форума  
Сказали "Спасибо" Easyrider83
LionRJ (01.11.2011)
Непрочитано 01.11.2011, 16:33  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Сообщение от sdsrem Посмотреть сообщение
3) Повесить часовой кварц, и когда ничего не делаем проц работает от него, ток упадёт значительно
Когда ничего не делаем - проц спит в повер-довне. Зачем ему тактирование, когда он ничего не должен делать?
niXto вне форума  
Непрочитано 02.11.2011, 08:30  
LionRJ
Прописка
 
Регистрация: 26.06.2007
Сообщений: 136
Сказал спасибо: 61
Сказали Спасибо 20 раз(а) в 17 сообщении(ях)
LionRJ на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Да, и разве возможно переключатся без программирования фьюзов с внешнего кварца на внутренний генератор?
LionRJ вне форума  
Непрочитано 02.11.2011, 14:50  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,530
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

а вот такой вопросик: а выдержит ли модуль 5В питание? По входам/выходам, должен, а вот само питание?
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 02.11.2011, 15:00  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Сообщение от DK Посмотреть сообщение
а вот такой вопросик: а выдержит ли модуль 5В питание? По входам/выходам, должен, а вот само питание?
Нормально работает и при 5.0 вольтах. Проверено.
Easyrider83 вне форума  
Непрочитано 02.11.2011, 16:59  
niXto
Почётный гражданин KAZUS.RU
 
Аватар для niXto
 
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
niXto на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Сообщение от LionRJ Посмотреть сообщение
Да, и разве возможно переключатся без программирования фьюзов с внешнего кварца на внутренний генератор?
В мегах можно (только 32к кварц на входе асинхронного таймера - внутренний 8 МГц), в тинях нельзя
niXto вне форума  
Сказали "Спасибо" niXto
LionRJ (03.11.2011)
Непрочитано 04.11.2011, 09:05  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,530
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Опять у меня что-то не то...
Как я понимю, после запуска передачи (т.е. СЕ = 1), если трансивер не смог передать данные 10 раз, то должен выставить прерывание MAX_RT? Не выдает. Но если прочитать статус - 1е. Все три прерывания в CONFIG включены по умолчанию, т.е. 0.
Код:
void RF_init()
{
	SPI_WR_REG(WRITE_REG + CONFIG, 0x0c | RF_Power_On);     // PWR_UP bit, enable CRC(2 bytes)
	delay_ms(5);
	SPI_WR_BUF(WRITE_REG + TX_ADDR, TX_ADDRESS, TX_ADR_WIDTH);    // Writes TX_Address to nRF24L01
	SPI_WR_BUF(WRITE_REG + RX_ADDR_P0, TX_ADDRESS, TX_ADR_WIDTH); // RX_Addr0 same as TX_Adr for Auto.Ack
	SPI_WR_REG(WRITE_REG + EN_AA, 0x01);      // Enable Auto.Ack:Pipe0
	SPI_WR_REG(WRITE_REG + SETUP_AW, 0x03);   // RX/TX Address field width 5 bytes                                                 
	SPI_WR_REG(WRITE_REG + EN_RXADDR, 0x01);  // Enable Pipe0
	SPI_WR_REG(WRITE_REG + SETUP_RETR, 0x1a); // 500us + 86us, 10 retrans...
	SPI_WR_REG(WRITE_REG + RF_CH, 40);        // Select RF channel 40
	SPI_WR_REG(WRITE_REG + RF_SETUP, 0x07);   // TX_PWR:0dBm, Datarate:1Mbps, LNA:HCURR
}
Код:
void TX_mode()
{
	output_low(CE);
	SPI_WR_REG(WRITE_REG + CONFIG, 0x0c | RF_mode_TX | RF_Power_On); 
}
IRQ поднимается, если в STATUS записать 1 в MAX_RT

Если у меня две железки должны обмениваться, все адреса, то есть RX_ADDR_P0 и TX_ADDR на обеих сторонах нужно поставить одинаковые (ну я так понимаю картинку 5 стр. 13 мануала)?

На приемной стороне вообще IRQ постоянно в 1 стоит. Буду разбираться. Может, ляпа какая...
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
Непрочитано 04.11.2011, 10:45  
Easyrider83
Гуру портала
 
Аватар для Easyrider83
 
Регистрация: 27.10.2008
Адрес: ЕС
Сообщений: 10,835
Сказал спасибо: 919
Сказали Спасибо 4,308 раз(а) в 2,573 сообщении(ях)
Easyrider83 на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

DK, я сейчас тоже голову ломаю над auto acknowledge и auto retransmit. Чипы у меня глючноватые. Поэтому результаты неоднозначные.
Хотя код рабочий. В этом я уверен. Вчера времени мало было, сегодня тоже. На следующей неделе буду побеждать эти чипы окончательно.
Ловите код для примера.

Например такая штука - PIPE0 включена и принимает данные. Я включаю PIPE1 Auto Acknowledge. Все, данные больше не принимаются, IRQ вечно поднято. Как прикажете такое понимать?
Вложения:
Тип файла: rar NRF24L01.rar (3.3 Кб, 116 просмотров)

Последний раз редактировалось Easyrider83; 04.11.2011 в 10:52.
Easyrider83 вне форума  
Сказали "Спасибо" Easyrider83
DK (05.11.2011)
Непрочитано 04.11.2011, 12:14  
DK
Почётный гражданин KAZUS.RU
 
Аватар для DK
 
Регистрация: 10.05.2003
Адрес: Москва
Сообщений: 2,530
Сказал спасибо: 737
Сказали Спасибо 1,927 раз(а) в 799 сообщении(ях)
DK на пути к лучшему
По умолчанию Re: Кто-нибудь работал с RF модулями nRF2401A?

Сообщение от Easyrider83 Посмотреть сообщение
Как прикажете такое понимать?
Я вообще ХЗ. Вы хоть запускали их. А я вообще первый раз влез.

За код спасибо. Только когда я вижу структуру такую, мне сразу нехорошо в мозгах делается Слишком много буковок.

Да еще кятайцы, блин... Не сразу допер, что они диоды на отладке к + подвесили Схему не смотрел... Оказалось, они при 0 светятся Уууу... черти нерусские...

Вот код передатчика. Посмотрите, все правильно?
Код:
	RF_init();
	TX_mode();
	while(true)
	{
		output_high(PIN_D7);
		output_low(CE);
		SPI_WR_BUF(WR_TX_PLOAD, bbb, TX_PLOAD_WIDTH);
		output_high(CE);
		output_high(CSN);
		delay_ms(10);
		i = 10;
		while(!input(IRQ) && --i)
			delay_ms(10);
		output_low(CE);
		j = SPI_RD_REG(_STATUS);
			fprintf(COM,"Status %x\r\n",j);
		if(j & TX_DS)
		{
			SPI_WR_REG(WRITE_REG + _STATUS,TX_DS);
			fprintf(COM,"Data send OK\r\n");
		}
		if(j & MAX_RT)
		{
			SPI_WR_REG(FLUSH_TX,0);
			SPI_WR_REG(WRITE_REG + _STATUS,MAX_RT);
			fprintf(COM,"Data not send. Status %x\r\n",j);
		}
		delay_ms(100);
	}
IRQ выдается только после записи SPI_WR_REG(WRITE_REG + _STATUS,MAX_RT);

Приемник

Код:
	RF_init();
	RX_mode();
	SPI_RW(FLUSH_RX);
	while(true)
	{
		output_high(CE);
		while(!input(IRQ))
		{
			delay_ms(10);
		}
		output_low(CE);
		st = SPI_RD_REG(_STATUS);
		fprintf(COM,"Status - %x\r\n",st);
		SPI_RD_BUF(RD_RX_PLOAD, Buffer, 16);
		SPI_RW(FLUSH_RX);
		SPI_WR_REG(WRITE_REG + _STATUS,RX_DR);
		for(i=0;i‹16;i++)
			fprintf(COM,"%x ",Buffer[i]);
		fprintf(COM,"\r\n\r\n");
		delay_ms(100);
	}
__________________
Опыт - это школа, в которой человек узнает, каким дураком он был раньше.
DK вне форума  
 

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

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

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, время: 20:30.


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