Цитата(n_bogoyavlensky @ Jan 3 2007, 01:00)

Прочитал всю документацию по DP1203 и XE1203, этот форум, но не нашёл ответов на некоторые вопросы.
1. В документации говорится о NRZ кодировании данных. Насколько это критично? Т. е. нужно ли самому кодировать/декодировать данные при передаче/приёме? Или можно не кодировать данные? Зачем нужно дополнительное кодирование NRZ, если есть встроенный кодек Баркера?
Представьте, что Вам нужно передать последовательность "001001001..." с длительностью одного бита 1 мс. Спектр этой последовательности уложится в полосу 500..1000 Гц. Соответствующую полосу, естесно, должен пропускать и канал связи (РЧ-передатчик и -приемник в Вашем случае).
Теперь представьте , что последовательность имеет вид "1000...например, 10^6 нулей...1". Чтобы ужать полосу спектра сигнала до допутимой величины, и используются различные способы NRZ-кодирования.
Кодек Баркера может использоваться, а может и не. С ним дополнительное NRZ-кодирование не требуется. Но реализованный в DP1203 кодек Баркера 11-го порядка для многих применений будет избыточным, а ограничения, связанные с его использованием, - недопустимыми. В большинстве случаев можно обойтись простым манчестером, 3B4 и подобными кодами.
Цитата
2. Генерация сигнала DCLK. Как я понял, в режиме приёмника он генерируется только когда идёт приём данных. А в режиме передатчика он когда генерируется? Постоянно?
В режиме приема DCLK генерится только при включенных кодеке Баркера или Bit Syncronizer'е.
В режиме передачи - только при включенном кодеке Баркера.
Цитата
3. Не совсем понятна работа с SPI. Стартбиты, стопбиты... придумали же...
Т. е. при обмене как будет выглядеть первый записываемый в трансивер байт? Вот так вот: 1 0 Х А4 А3 А2 А1 А0 ? Где Х - чтение или запись. Нуль слева - старт бит. Далее идёт байт данных (второй байт). Потом надо как-то стопбиты сделать. Как? Просто записать байт вида 1 1 Х Х Х Х Х Х (третий байт)?
Вдумчиво курить даташит. Прибор предполагает использование только адресной, а не блочной записи/чтения по SCI, т.е. старт (0) - чтение/запись (1/0) - адрес (5 бит) - данные (8 бит) - стоп (11), и не более.
Несколько неудобна работа с 17-битными посылками, но первый бит - всегда 0 (а последние два - всегда 1:)), так что заполняется буфер в контроллере, сбрасывается CARRY, и все через CARRY выталкивается наружу 17 раз со сдвигом буфера через CARRY.
Цитата
4. Назначение выводов RX, TX. Здесь я прочитал, что единица на входе RX - приёмник, на входе TX - передатчик. А если на этих входах нули, то ни приёмник не принимает, ни передатчик не передаёт и, соответственно, шума цифрового нет? Это разрешённая комбинация? А комбинация с двумя единичками запрещённая? Не понимаю, почему в даташите ничего про это не сказано...
По-видимому, Вы сейчас про DP1203 (в XE1203 таких ног вроде бы нет)? Не использовал, не знаю. Даташиты по DP где-то были на ЦД, но сейчас не нашел.
Цитата
5. Почему нельзя, чтобы часто чередовались единицы и нули при передаче?
Нужно, чтобы чередовались, а уж как часто, Вам решать (см. также п.1:)).