cc1000 problem z PLL

Aug 12, 2006 4 Replies

Witam! Nie mogę zgrać ze sobą modułów cc1000. Oprogramowanie zdaje się być ok. Rejestry zapisują się poprawnie, bo jeśli zrobię ich zrzut (mam podłączony LCD) to wszystko jest tak jak zapisałem. Rejestr LOCK ustawiony mam na LOCK_CONTINUOUS. Kalibacja przebiega pomyślnie dla toru TX oraz RX, PLL też jest ok aż do momentu gdy ustawię bit CAL_START na 0. Wtedy LOCK_CONTINUOUS przechodzi na 0, natomiast w rejestrze PLL ustawia się jeden z bitów ALARM_H lub ALARM_L. Sygnały na module TX pojawiają się zgodnie z założeniem. Na oscyloskopie jest właściwy sygnał DCLK oraz DIO czyli tak jakby coś wysyłał. Ale na module RX nie ma właściwego sygnało DIO, są tylko jakieś śmieci natomiast a DCLK zdaje się być jak najbadziej poprawny. Sygnał RSSI waha się w granicach od 0,55V bez włączonego modułu TX do ok 0,54 z włączonym modułem TX. Ustawienia mam obliczone według SmartRF Studio więc powinny być ok. Oto parametry:



X-tal frequency: 14.745600 MHz Internal X-tal accuracy: +/- 20 ppm RF frequency A: 434.326000 MHz Active Rx RF frequency B: 434.326000 MHz Inactive Tx RX Mode: Low Current: no, Optimal frequency: yes, Low side LO Frequency separation: 64 kHz Data rate: 2.4 kBaud Data Format: Manchester Accurate RF output power: 0 dBm LOCK indicator: Continuous IF/RSSI: RSSI Enabled



#define MAINTX 0xe1 #define MAINRX 0x11 #define CURRENTRX 0x44 #define CURRENTTX 0x81 #define PLLRX 0x48 #define PLLTX 0x48 #define POWERRX 0x00 #define POWERTX 0x0f



CC1000_FREQ_2A,0x42, CC1000_FREQ_1A,0x20, CC1000_FREQ_0A,0x00, CC1000_FREQ_2B,0x42, CC1000_FREQ_1B,0x24, CC1000_FREQ_0B,0x9c, CC1000_FSEP1,0x02, CC1000_FSEP0,0x80, CC1000_FRONT_END,0x12, CC1000_LOCK,0x10, CC1000_CAL,0x26, CC1000_MODEM2,0x8e, CC1000_MODEM1,0x6f, CC1000_MODEM0,0x27, CC1000_MATCH,0x70, CC1000_FSCTRL,0x01, CC1000_PRESCALER,0x00, CC1000_TEST4,0x25



Dodam jeszcze że nie używam pzełączania pomiędzy trybami TX i RX bo potrzebuję przesyłać dane tylko w jedną stronę, więc przeprowadzam kalibację odpowiednio tylko dla TX i RX.



Czy może ktoś zetknął się z podobnym problemem? Proszę o jakąkolwiek pomoc bo już siedzę nad tym ładnych parę dni i ani kroku do przodu. Pozrawiam


Nie wnikaj±c w szczegó³y procesu kalibracji masz ¼le ustawion± czêstotliwo¶æ odbiorcz±. Powinna byæ przesuniêta o czêstotliwo¶æ po¶redniej 150kHz w górê lub w dó³. Poza tym masz za ma³± ró¿nicê w warto¶ciach RSSI. Przy wy³±czonym nadawaniu napiêcie powino byæ znacznie wy¿sze. Byæ mo¿e w okolicy masz jakie¶ inne ¼ród³o sygna³u. Spróbuj przeskoczyæ z czêstotliwo¶ci± w trochê ine miejsce. Jako ciekawostkê za³±czam linka do obrazka z rozk³adem napiecia RSSI dla pracuj±cego CC1000.

formatting link

Te parametry są zrzutem ze SmartRFStudio i faktycznie są takie same, ale w rejestrach znajdują się takie dane: A:433,3568 0x422000 B:433,3724 0x42209C

Poprawiłem jeszcze teraz wartość FREQ_B na taką, jaką wyliczył mi Optimal_Fequency_Calculator.xsl, bo nie wiem czemu ale jest inna niż podaje SmartRFStudio, ale niestety nic to nie zmieniło. Sprawdziłem też odbionik w innym pokoju z dala od komputera i RSSI jest bez zmian. Próbowałem też na innych częstotliwościach i ciągle to samo. Nadajnik mam ustawiony tak, że nadaje cały czas tylko 0x55. Na odbiorniku DCLK mam częstotliwość bliską 1,2kHz i trochę się rozjeżdża ale to chyba normalne bez właściwego sygnału. W nadajniku DCLK mam czstotliwość 1.2kHz i jest stabilna. Nie mam pojęcia co jest grane obydwa moduły zachowują się identycznie. Kupiłem ich co prawda blisko rok temu w Propx'ie, ale przecież to nie marchewka i się nie psuje. Zastanawia mnie to dlaczego w PLL zaraz po zakończeniu kalibracji pojawiają się bity ALARM_H albo ALARM_L.

Pozdrawiam Paweł

RSSI powinno byc znacznie nizsze, bo na tym wyjsciu poziom napiecia jest tym mniejszy, im wieksza sila odbieranego sygnalu. Co miales na mysli piszac, ze powinno byc wyzsze przy nadawaniu ? Mnie spada prawie do 0V.

Mariusz

Oczywi¶cie masz racjê - mój b³±d. Mam nadziejê ze za³±czony wykres wszystko wyja¶nia.

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required