Портал для радиолюбителей и разработчиков электроники · с 2003 годаРеклама на сайте
Найти компонент, схему или даташит

Даташиты, справочник отечественных приборов, схемы с разбором и живой форум

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

Ответ
Опции темы

Однокристальные трансиверы TRC101 от RFM...

Непрочитано 14.11.2008, 12:46   #171
ArgusB
Временная регистрация
 
Регистрация: 15.06.2008
Сообщений: 57
Сказал спасибо: 2
Сказали Спасибо 36 раз(а) в 8 сообщении(ях)
ArgusB на пути к лучшему
По умолчанию

Сообщение от Alexandr_Il
Пытаюсь понять пару вещей.
Инициализировал - это В КАКОМ СМЫСЛЕ? Результатом процесса инициализации должно быть: Конфигурация в регистрах мс, со включёнными цепями приёма, либо передачи, и выбранным режимом обработки - то есть, будет ли сигнал обрабатываться самим чипом, или, может, вся принятая фигня будет высыпаться наружу "как есть", включено ли фифо, какой частотный диапазон используется и тд. Таким образом, инициализированный чип уже готов к приёму или передаче, в зависимости от того, какой конфиг в него залили.
Для того, чтобы начать передачу, надо поместить данные в регистр передатчика. Для этого обычным способом, притягивая cs, отправляется 16-ти битная посылка, первые 8бит - адрес регистра, следующие 8 - первый байт данных. Что там должно быть?
Правильно, начало преамбулы.
Далее, появляется выбор - каким образом передать второй и все последующие байты. Можно стандартным способом - точно так же, как и первый байт, манипулируя сигналом cs.
А можно - альтернативным, который и процитирован.
Реклама:
ArgusB вне форума   Ответить с цитированием
Непрочитано 14.11.2008, 13:31   #172
Alexandr_Il
Частый гость
 
Регистрация: 09.11.2008
Сообщений: 19
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Alexandr_Il на пути к лучшему
По умолчанию

Сообщение от ArgusB

Для того, чтобы начать передачу, надо поместить данные в регистр передатчика. Для этого обычным способом, притягивая cs, отправляется 16-ти битная посылка, первые 8бит - адрес регистра, следующие 8 - первый байт данных.
аа.. дошло.
Alexandr_Il вне форума   Ответить с цитированием
Непрочитано 16.11.2008, 01:33   #173
Alexandr_Il
Частый гость
 
Регистрация: 09.11.2008
Сообщений: 19
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
Alexandr_Il на пути к лучшему
По умолчанию

Чего-то не получается..


Пытаюсь передать пару байт, но программа зацикливается на ожидании, когда SDO будет равен 1, чтобы отправить следующий байт.
Вот код:
зацикливается на последнем цикле..
Чего не так?
Код:
удалил..
Alexandr_Il вне форума   Ответить с цитированием
Непрочитано 16.11.2008, 18:00   #174
DenisPic
Прохожий
 
Регистрация: 20.08.2006
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
DenisPic на пути к лучшему
По умолчанию

Приветствую Всех!
Тоже очень интересует данная тема. Давно еще купил в тритоне 3 модуля RM101, RD101 и RC101. Но вот проблемка с RM101. модуль RD101 прошился нормально в качестве мониторинга и общается с терминалкой. Тока вот RM101 не могу запустить. Речь об отправке/приеме пока не виду, т.к. не могу даже прочитать с TRC101(RM101) статус.
Дайте совет читаю статус перед записью конфигов.

SPI софтовый, PIC18F452

Вот функция приема/передачи байта по спи
Код:
unsigned char TRC_SendByte(unsigned char data)
{
	unsigned char i, out;
	out = 0;

	for(i = 1; i ‹= 8; i++)
	{
		if(data & 0b10000000) SDI = 1; 
		else SDI = 0;
		out‹‹=1;
		SCLK = 1;
		if(SDO) out|=0b00000001;
		SCLK = 0;
		data‹‹1;
	}

	return (out);

}
а вот так читаю статус из TRC'ки
Код:
unsigned short TRC_ReadConfig()		
{
	unsigned char h,l;
	CS = 0;
	h = TRC_SendByte(0x00);
	l = TRC_SendByte(0x00);
	CS = 1;
	
	
	return ((unsigned short)h ‹‹ 8) | l;
}
DenisPic вне форума   Ответить с цитированием
Непрочитано 16.11.2008, 22:27   #175
kison
Почётный гражданин KAZUS.RUN
 
Регистрация: 13.12.2004
Сообщений: 3,168
Сказал спасибо: 11
Сказали Спасибо 691 раз(а) в 503 сообщении(ях)
kison на пути к лучшему
По умолчанию

Сообщение от DenisPic
Вот функция приема/передачи байта по спи
Код:
unsigned char TRC_SendByte(unsigned char data)
{
	unsigned char i, out;
	out = 0;

	for(i = 1; i ‹= 8; i++)
	{
		if(data & 0b10000000) SDI = 1; 
		else SDI = 0;
		out‹‹=1;
		SCLK = 1;
		if(SDO) out|=0b00000001;
		SCLK = 0;
		data‹‹1;
	}

	return (out);

}
Переменную результата сдвигаете Вы правильно. А вот о "data‹‹1;" этого не скажешь. Может добавить значек "="? Иначе отправляется 8 одинаковых бит...
kison вне форума   Ответить с цитированием
Непрочитано 16.11.2008, 22:46   #176
DenisPic
Прохожий
 
Регистрация: 20.08.2006
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
DenisPic на пути к лучшему
По умолчанию

Сообщение от kison
Сообщение от DenisPic
Переменную результата сдвигаете Вы правильно. А вот о "data‹‹1;" этого не скажешь. Может добавить значек "="? Иначе отправляется 8 одинаковых бит...
Да Kison, спасибо, Вы правы, ошибка. Исправил, но в ответ приходят попрежнему нули
DenisPic вне форума   Ответить с цитированием
Непрочитано 18.11.2008, 09:04   #177
fawkes
Частый гость
 
Регистрация: 05.04.2008
Сообщений: 20
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
fawkes на пути к лучшему
По умолчанию

DenisPic
сколько ни читал статус регистр, столько раз получал нули. после плюнул на это, слежу за прерываниями фифы.
Кстати, по моему статус регистр надо читать только в случае, когда тритон дернул лапой nIRQ, если я правильно помню логику его работы.
Хотя сейчас я и на фифу положил, читаю по последовательной шине.
fawkes вне форума   Ответить с цитированием
Непрочитано 18.11.2008, 21:41   #178
DenisPic
Прохожий
 
Регистрация: 20.08.2006
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
DenisPic на пути к лучшему
По умолчанию

Сообщение от fawkes
DenisPic
сколько ни читал статус регистр, столько раз получал нули. после плюнул на это, слежу за прерываниями фифы.
Кстати, по моему статус регистр надо читать только в случае, когда тритон дернул лапой nIRQ, если я правильно помню логику его работы.
Хотя сейчас я и на фифу положил, читаю по последовательной шине.
Понятненько. Fawkes, а есть какая-нить комманда на которую TRC отвечает что то конкретное - ну просто чтоб убедится в работоспособности модуля и софтовой части?
DenisPic вне форума   Ответить с цитированием
Непрочитано 19.11.2008, 08:46   #179
fawkes
Частый гость
 
Регистрация: 05.04.2008
Сообщений: 20
Сказал спасибо: 5
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
fawkes на пути к лучшему
По умолчанию

DenisPic
если честно, то не встречал, а проверял софтовую часть передачей команды отключения и включения генерации на лапе тритона (там 2х мгц выход на 9й по моему) и смотрел осциллографом.
fawkes вне форума   Ответить с цитированием
Непрочитано 19.11.2008, 11:11   #180
DenisPic
Прохожий
 
Регистрация: 20.08.2006
Сообщений: 6
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
DenisPic на пути к лучшему
По умолчанию

Сообщение от fawkes
DenisPic
если честно, то не встречал, а проверял софтовую часть передачей команды отключения и включения генерации на лапе тритона (там 2х мгц выход на 9й по моему) и смотрел осциллографом.
Ок, спасибо. Буду щупать, тока наверно не на 9-ой, а на 8-ой (CLKOUT).
Посже отпишусь.
DenisPic вне форума   Ответить с цитированием
Ответ


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

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Однокристальные трансиверы CC2500 (СС1100) kassiopay Микроконтроллеры, АЦП, память и т.д 2 07.06.2009 19:08


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


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.