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

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

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

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

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

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

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

 
Опции темы

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

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

Когда FIFO заполнится, и сигнал FINT появится. СМ. Даташит, страница 24, Alternate Read Method.
Реклама:
ArgusB вне форума  
Непрочитано 17.01.2009, 23:34  
crocko
Временная регистрация
 
Регистрация: 03.11.2006
Сообщений: 64
Сказал спасибо: 3
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
crocko на пути к лучшему
По умолчанию

Только этим Alternate Read Method`ом и смог правильно прочитать принятый байт. Командой из даташита читалась всякая ерунда. Вообще даташит написан просто ужасно
2 ArgusB: nFSEL после приема первого байта поднять и опять ждать высокого уровня FINT для чтения?
crocko вне форума  
Непрочитано 18.01.2009, 09:46  
ArgusB
Временная регистрация
 
Регистрация: 15.06.2008
Сообщений: 57
Сказал спасибо: 2
Сказали Спасибо 36 раз(а) в 8 сообщении(ях)
ArgusB на пути к лучшему
По умолчанию

Отмотай эту ветку на страницу 13 - там этот вопрос по косточкам обсосан.
ArgusB вне форума  
Непрочитано 18.01.2009, 17:28  
crocko
Временная регистрация
 
Регистрация: 03.11.2006
Сообщений: 64
Сказал спасибо: 3
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
crocko на пути к лучшему
По умолчанию

Спасибо. И как я смотрел. Три дня назад прочитал всю ветку от начала и до конца
crocko вне форума  
Непрочитано 08.03.2009, 18:59  
alekst
Прохожий
 
Регистрация: 10.06.2006
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
alekst на пути к лучшему
По умолчанию

сегодня, 8 марта 2009, наконец-то получил передачу- прием данных на TRC101. Я вижу, есть люди (_grey_ на 21 странице темы, от 15 января) , которые уже отчаялись с запуском этих приемо-передатчиков. Но прошло уже около 2-х месяцев с последних сообщений по теме...
В общем, если кому еще есть интерес к trc101, мои фрагменты исходников для PIC (PIC16F876A), которые я написал (язык СИ):
while(1) // основной цикл приема
{
// чистим и устанавливаем бит 1 для перезапуска
//опознования синхронного образца:

WriteCMD(0xCA80);
WriteCMD(0xCA82);

CheckSum=0;

nCS=1;
nFSEL=0;
// это точки для отладки в MPLAB ICD2

asm("nop");
// первый принимаемый байт - число передаваемых
//байтов
n = READ_BYTE();
asm("nop");
// второй принимаемый байт - контрольная сумма
ks = READ_BYTE(); asm("nop");
// основная информация принимвется здесь
for (j=0; j ‹ n; j++)
{
BUFER[j]=READ_BYTE();
// подсчитываем контрольную сумму
CheckSum=CheckSum+BUFER[j];
};
asm("nop");

if (CheckSum==ks)
{
// зажигаем светодиод, если равно - прием верный:
LED=0;
}
DelayMs(250); // мс всего
LED=1; // гасим


}

и еще :


//************************************************** ***********
unsigned char READ_BYTE(void) // чтение FIFO обращением к регистру
{
unsigned char i, temp;
SCK=0;
temp=0;
mm1:
if (nFINT) // ждем когда поднимется - значит байт принят
{

for(i = 0; i‹16; i++)
{
temp=temp‹‹1;
SCK=1;
DelayUs(5);
if (SDO) temp=temp|0x01;
i++;
SCK=0;
DelayUs(5);
} ;
return temp;
};
goto mm1;
}


Изюминка чтения буфера FIFO альтернативным методом чтения для меня оказалась в том, что его надо считывать 16-ю тактами , и только с 9 по 16 такты нужный мне регистр заполняется данными... Ну все правильно, FIFO 16- разрядный, данные заполняются , например, справа, а читаю с вывода SDO слева, нужная мне информация будет с 9 по 16-й такты. При заполнении буфера FIFO 8-ю битами (число предварительно запрограммировано) nFINT поднимается в 1, к этоту моменту первые 8 бит на ножке SDO ,будут нулями, вторые 8 бит -нужные данные...
alekst вне форума  
Непрочитано 08.03.2009, 19:00  
alekst
Прохожий
 
Регистрация: 10.06.2006
Сообщений: 3
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
alekst на пути к лучшему
По умолчанию

сегодня, 8 марта 2009, наконец-то получил передачу- прием данных на TRC101. Я вижу, есть люди (_grey_ на 21 странице темы, от 15 января) , которые уже отчаялись с запуском этих приемо-передатчиков. Но прошло уже около 2-х месяцев с последних сообщений по теме...
В общем, если кому еще есть интерес к trc101, мои фрагменты исходников для PIC (PIC16F876A), которые я написал (язык СИ):
while(1) // основной цикл приема
{
// чистим и устанавливаем бит 1 для перезапуска
//опознования синхронного образца:

WriteCMD(0xCA80);
WriteCMD(0xCA82);

CheckSum=0;

nCS=1;
nFSEL=0;
// это точки для отладки в MPLAB ICD2

asm("nop");
// первый принимаемый байт - число передаваемых
//байтов
n = READ_BYTE();
asm("nop");
// второй принимаемый байт - контрольная сумма
ks = READ_BYTE(); asm("nop");
// основная информация принимвется здесь
for (j=0; j ‹ n; j++)
{
BUFER[j]=READ_BYTE();
// подсчитываем контрольную сумму
CheckSum=CheckSum+BUFER[j];
};
asm("nop");

if (CheckSum==ks)
{
// зажигаем светодиод, если равно - прием верный:
LED=0;
}
DelayMs(250); // мс всего
LED=1; // гасим


}

и еще :


//************************************************** ***********
unsigned char READ_BYTE(void) // чтение FIFO обращением к регистру
{
unsigned char i, temp;
SCK=0;
temp=0;
mm1:
if (nFINT) // ждем когда поднимется - значит байт принят
{

for(i = 0; i‹16; i++)
{
temp=temp‹‹1;
SCK=1;
DelayUs(5);
if (SDO) temp=temp|0x01;
i++;
SCK=0;
DelayUs(5);
} ;
return temp;
};
goto mm1;
}


Изюминка чтения буфера FIFO альтернативным методом чтения для меня оказалась в том, что его надо считывать 16-ю тактами , и только с 9 по 16 такты нужный мне регистр заполняется данными... Ну все правильно, FIFO 16- разрядный, данные заполняются , например, справа, а читаю с вывода SDO слева, нужная мне информация будет с 9 по 16-й такты. При заполнении буфера FIFO 8-ю битами (число предварительно запрограммировано) nFINT поднимается в 1, к этоту моменту первые 8 бит на ножке SDO ,будут нулями, вторые 8 бит -нужные данные...
alekst вне форума  
Непрочитано 16.03.2009, 18:32  
Alexey_1811
Частый гость
 
Аватар для Alexey_1811
 
Регистрация: 10.11.2006
Адрес: Київ
Сообщений: 34
Сказал спасибо: 4
Сказали Спасибо 1 раз в 1 сообщении
Alexey_1811 на пути к лучшему
По умолчанию

Может кому пригодится моя прога для конфигурирования
ТРС102.

P.S. Рад что тема не умерла!!!

Прикрепленный файл: 7693006.rar
Alexey_1811 вне форума  
Непрочитано 17.03.2009, 08:48  
ArgusB
Временная регистрация
 
Регистрация: 15.06.2008
Сообщений: 57
Сказал спасибо: 2
Сказали Спасибо 36 раз(а) в 8 сообщении(ях)
ArgusB на пути к лучшему
По умолчанию

Оки-доки, дело хорошее. А как железо подключать?
ArgusB вне форума  
Непрочитано 17.03.2009, 11:37  
Alexey_1811
Частый гость
 
Аватар для Alexey_1811
 
Регистрация: 10.11.2006
Адрес: Київ
Сообщений: 34
Сказал спасибо: 4
Сказали Спасибо 1 раз в 1 сообщении
Alexey_1811 на пути к лучшему
По умолчанию

Все это дело пудключается к СОМ.
Данные регистров передаются в формате SWxxxx(13)
xxxx-содержание регистра строкой (например 8013)
Чтение статуса SR0(13) в ответ Sxxxx(13).
Alexey_1811 вне форума  
Непрочитано 30.04.2009, 19:34  
O_kazus
Частый гость
 
Регистрация: 23.05.2007
Сообщений: 24
Сказал спасибо: 5
Сказали Спасибо 9 раз(а) в 5 сообщении(ях)
O_kazus на пути к лучшему
По умолчанию

Добрый вечер Всем. Тема интересная, так как я TRC101 интересуюсь уже три месяца.За это время перевел даташит по основным командам. До этого я передавал и принимал другими ресиверами этой фирмы TR3000, и добился определенных успехов. Но у меня, как и у многих в этой теме, я увидел проблемы, которые сходу не мог решить. Не могу понять где ошибка. Использую PIC18F4550 и TRC101. При передаче видно по осцилографу, что идут пакеты, а приемник не видит паттерн. Инициализация стандартная, как прочитал в этой ветке. Может кто подскажет, где искать ошибку.
O_kazus вне форума  
 
Опции темы

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

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

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

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


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


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