Stein21
Apr 3 2011, 02:31
Надоело писать офтоп, решил создать всё таки тему.
В общем Инициализация проходит верно. Затем, когда перехожу в режим RX или TX ток потребления возрастает на 10мА(дешёвый мультиметр утверждает), приходит ответ с состоянием RX(или TX), но по переключению (принудительному а не автоматическому(после приёма пакета)) все регистры сбиты. Что это может быть за проблема? И вообще есть ли какой нить регистр, отвечающий за обнуление регистров по переходу в другое состояние(очень уж в этом сомневаюсь).
Цитата(Stein21 @ Apr 3 2011, 06:31)

все регистры сбиты. Что это может быть за проблема? И вообще есть ли какой нить регистр, отвечающий за обнуление регистров по переходу в другое состояние(очень уж в этом сомневаюсь).
Только если выполнить команду ("строб") SRES. Причем регистры будут не "сбиты", а установлены в начальное состояние. А если информация в регистрах искажена - значит, вместо чтения данных была выполнена запись регистров. Надо вдумчиво курить даташит, чип достаточно сложный.
Stein21
Apr 3 2011, 06:37
После строба SRX можно ли сразу посылать строб SIDLE? Не нужно ли какой промежуточной комманды?
Цитата(rx3apf @ Apr 3 2011, 09:41)

А если информация в регистрах искажена - значит, вместо чтения данных была выполнена запись регистров. Надо вдумчиво курить даташит, чип достаточно сложный.
НАд этим стоит подумать.. а Я тупо плату перепаиваю, считая, что чипу не хватает питания на передачу..
Stein21
Apr 3 2011, 10:39
Выяснил, что при переходе IDLE->RX->IDLE сбиваются регистры калибровки синтезатора:
_FSCAL3 ($23): Было $E9 Стало: $EF
_FSCAL2 ($24): Было $2A Стало: $2B
_FSCAL1 ($25): Было $00 Стало: $12
Регистры брал с СмартСтудии
Что бы это значило? Автокалибровка?
Цитата(Stein21 @ Apr 3 2011, 14:39)

Что бы это значило? Автокалибровка?
Да (если указано выполнять калибровку, а полагаться на установки студии тут нельзя, зависит от конкретного кристалла). SIDLE - можно в любой момент.
Stein21
Apr 4 2011, 03:26
А чтобы в режиме передачи на GD0 пришёл 1 нужно чтоб приёмник ответил передатчику, или 1 устанавливается когда синхрослово просто отправлено, даже если приёмник не получил его?
Stein21
Apr 5 2011, 20:47
Всё ещё интересней на самом деле. Посыдлаю SIDLE($36) в ответ приходит 00001111 - что соответствует режиму RX. Посылаю STX($35) - та же фигня 00001111.
Если изначально не устанавливаю ни какой режим(хотя по умаолчанию мне кажется должен быть IDLE), посылаю 0 - в ответ те же 00001111, но регистры устанавливаются неправильно. Если же сначала послать SIDLE($36), а потом устанавливать регисты - всё устанавливается. Или Я не правильно трактую ответ(хоть и следуя даташиту), либо ответ принимаю неправильно(хоть мне так и не кажется), или ещё что?
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.