Цитата(zak_ant @ Apr 21 2006, 21:32)

Цитата(cpl @ Apr 21 2006, 17:17)

По сигналам модулей pattern высталяется ? что на dclk data(in) ?
Pattern выставляется, но очень редко (для простоты 1 байт), а на dclk data(in) высокий уровень.
Дело в том что по осцилографу смотрю что принимается - сплошная каша, на глаз не отличимая от шума.
Передается меандр с паузой между байтами равной длине байта. Думаю что примерно такое же должно быть и на приеме.
Сплошная каша - значит в режиме приёма, но ничего не принимает.
Иногда появляющийся PATTERN при длине в 1 байт - это просто приёмник из шума на входе иногда ухитряется этот самый паттерн выловить, при длине в 2, 3 или 4 байта вероятность случайного обнаружения гораздо меньше.
На DCLK при этом тоже постоянно меняется период (синхронизатор пытается подстроить свою скорость по принимаемому потоку). При появлении в эфире передачи оба сигнала сразу-же становятся весьма "чистыми" и регулярными.
В прошлом году воевал с DP1203-C433, процессор MSP430F1611, Си с лёгкими украшениями из ++.
Никаких особенных граблей не обнаружено. Заработало довольно скоро, на второй день после появления платы.
Примерный перечень действий:
Скачал с их сайта примеры, почитал доку на микросхему, поразбирался с текстами.
Взявши за основу пример с сайта сделал нижний уровень для работы с модулем.
В процессе радикально переписал функцию установки режима SetRFMode(), переделал запись и чтение регистров (на первом этапе полностью программно, чтобы не разбираться ещё и с SPI).
Сделал передачу данных старшим битом вперёд, избавившись от необходимости "переворачивать" байт при записи паттерна.
Средний уровень - приём пакета(попытка приёма с выходом по примитивному таймауту) и передача пакета.
В основном цикле - три "задачи".
1. Приём посимвольно с UART командной строки, если собрали полную строку - разбор и исполнение (это мне для отладки, изменения разных параметров и прочее.., выдернуто из предыдущего проекта и приспособлено к текущим задачам)
2. если нажата кнопка - передача пакета с текстом "KEY1 pressed\r\n".
3. попытка приёма, если что-то приняли - печать буфера через UART.
Сия программа прошивается в две платы, на одной давим кнопку, на другой смотрим осциллографом и терминалом что происходит.
Пакет - как положено 24 бита преамбула, 32 бита паттерн, 8 бит - длина блока данных в байтах и сами данные.
Текстов прямо сейчас под рукой нет, но могу найти в архивах, надо?