logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.
REKLAMA
  • Udalo mi sie uruchomic transmisje radiowa na bazie CC1000PP. Na prosbe Fakiros'a udostepniam kod programu (Bascom+Assembler) dla AVR.

    W zalacznikach trzeba zmienic rozszerzenie pliku (CC1000MAN.TXT na CC1000MAN.INC oraz CC1000XMIT.TXT na CC1000XMIT.BAS)

    CC1000MAN.INC - inicjalizacja i programowanie CC1000
    CC1000XMIT.BAS - procedury przesylania danych, Manchaster; dla 8515 i podobnych
    Załączniki:
    • CC1000MAN.txt (8.4 KB) Musisz być zalogowany, aby pobrać ten załącznik.
    • cc1000xmit.txt (7.98 KB) Musisz być zalogowany, aby pobrać ten załącznik.

    Fajne? Ranking DIY
    O autorze
    lelekx
    Poziom 30  
    Offline 
    lelekx napisał 1220 postów o ocenie 90, pomógł 158 razy. Jest z nami od 2003 roku.
  • REKLAMA
  • #2 614950
    androot
    VIP Zasłużony dla elektroda
    Posty: 1801
    Pomógł: 54
    Ocena: 635
    Gdzie kupiles te popularne ostatnio w EP moduly?
  • REKLAMA
  • #4 616757
    lelekx
    Poziom 30  
    Posty: 1220
    Pomógł: 158
    Ocena: 90
    Co w tym ciekawego? Jesli chodzi o CC1000MAN.inc to jest transkompilacja z noty aplikacyjnej Chipcona przygotowanej dla mikrokontrolera PIC. To samo tyczy fragmentów CC1000xmit.bas.
    Zeszlo mi kupe czasu nad dobraniem wlasciwych czestotliwosci (zeby przy przelaczaniu czestotliwosci nie zawiesic CC1000) ale najwazniejsze ze dziala :D

    Połączenie CC1000PP <-> uC:

    PIN CC1000PP -- PIN 90S8515/8535
    PA -- PORTC.0
    PD -- PORTC.1
    PC -- PORTC.2

    CLK -- PORTD.2 (INT0)
    DIO -- PORTC.4
    CHP -- N/C

    Dla 90S2313:
    PA -- PORTD.5
    PD -- PORTD.4
    PC -- PORTD.3
    CLK -- PORTD.2
    DIO -- PORTD.0
  • REKLAMA
  • #5 710332
    Konto nie istnieje
    Konto nie istnieje  
  • REKLAMA
  • #6 1034973
    FXR
    Poziom 13  
    Posty: 82
    Ocena: 4
    Moze ktos pochwalic sie zasiegiem. Koncze sterowany samochodzik na cc1000 (ale moduly robione) i do 80 metrow jest ok
    Fxr
  • #7 2874072
    thorin00
    Poziom 14  
    Posty: 163
    Pomógł: 2
    witam
    szukam czegos o tym module i procedurach obslugi w bascomie i znalazlem ten temat
    chcialbym to wyprubowac lecz mam kilka pytan, mianowicie
    jaka czestotliwoscia (kwarcem) mam taktowac uP uzywajac kodu programu zamieszczonego w tym poscie?
    w jakich zmennych zapisywane sa odebane i wysylane dane? chcialbym je przeslac dalej przez UARTa z tego co przegladalem kod programu (dopiero ucze sie asemblera jednak dluga droga przedema a czasu mi brakuje) wydaje mi sie ze sa zapisywane w zmiennych Queuein i Queueout jednak to sa tabice tzn ze kazda odebrana dana jest zapisywana w kolejnej zmiennej w tablicy?
    cc1000 pracuje na napieciu 3,3V czy uP tez ma pracowac na takim napieciu czy zastosowano w ukladzie jakies konwentery napiecia ? jezeli tak to jakie? chcialbym zastosowac uklady 74lvx125 i 74hct126 jedak przy kierunku przesylania danych prze linie i/o trzeba wybrac ktory z tych ukladow ma pracowac wiec potrzebny jest jakis sygnal sterujacy z uP

    a moze ktos ma jakies inne procedury do bascoma obslugi tym modulow chcialbym przeslylac dane pomiedzy uP za pomoca tych modulow (poniewaz mam dwa takie i chcialbym wyprubowac jak dzialaja) z predkoscia 9600

    z gory dziekuje za pomoc
    pozdrawiam
  • #8 2876752
    lelekx
    Poziom 30  
    Posty: 1220
    Pomógł: 158
    Ocena: 90
    Ad 1. Zależy od tego, z jaką częstotliwością mają być przesyłane dane; dla 9600bps powinien 1MHz wystarczyć

    Ad 2. Tak

    Ad 3. Najlepiej, kiedy uC pracuje na 3,3V razem z CC1000; jeżeli musi na 5V można użyć buforów lub prostszej metody - dzielniki napięcia jak w załączniku

    Ad 4. Procedury są sprawdzone i jest pewne, że mają błędy. Mam gdzieś poprawione procedury, jak znajdę to je tu umieszczę.
    Załączniki:
    • Chipcon CC1000PP cc1000dzielnik.png (307 Bajtów) Musisz być zalogowany, aby pobrać ten załącznik.
  • #9 2877375
    thorin00
    Poziom 14  
    Posty: 163
    Pomógł: 2
    dzieki @lelekx

    i bylbym wdzieczny jezeli udostepnilbys te wsady wraz z opisem podlaczenia do uP
    chcialbym nauczyc sie obslugi tego modulu a najlepiej na przykladzie

    jezeli chodzi o dzielnik napiecia to byloby najlepsze rozwiazania ale jezeli dane beda przedylane z cc1000 do uP to napiecie trzeba zwiekszyc z 3v na 5V, narazie jednak zostane przy uP zasilanym nap 3V (a wlasciwie3,3v)
  • #10 2877619
    lelekx
    Poziom 30  
    Posty: 1220
    Pomógł: 158
    Ocena: 90
    Nie ma potrzeby zwiększać napięcia, uC poprawnie zinterpretuje stany wejść. A schemat i program podrzucę jak będę w domu
  • #11 2884261
    lbugiera
    Poziom 21  
    Posty: 348
    Pomógł: 45
    Ocena: 5
    lelekx napisał:

    Zeszlo mi kupe czasu nad dobraniem wlasciwych czestotliwosci (zeby przy przelaczaniu czestotliwosci nie zawiesic CC1000) ale najwazniejsze ze dziala :D


    Najlepsza częstotliwość to 434,326 Mhz (dla modułów na 433). Wtedy rejestr sterujący VCO ma tą samą wartość dla TX i RX. Przy tej częstotliwości powstaje najmniej zakłamań.

    Pozdrowienia
    Boogie
  • #12 2896220
    thorin00
    Poziom 14  
    Posty: 163
    Pomógł: 2
    @lbugiera
    a moze Ty posiadasz jakies gotowe procedury obslugi tego modulu pod bascom?
  • #13 3042807
    Kozi130
    Poziom 11  
    Posty: 33
    Witam wszystkich, czy ktoś mógłby mi powiedzieć gdzie w tym programie należy zmienić wartości rejestrów? Chodzi mi o ten umieszczony na początku tematu. Mam moduł podłączony do procesora ATmega16L i drugi do ATmega8L i ten program nie chce dzialac u mnie, wiem ze potrzebuje innych danych w rejestrach ale siedze nad tym juz kilka dni i już nie daje rady :/ Czy coś poza tym jeszcze musze pozmieniać ?

    Dodam jeszcze że używam w obydwu procesorach kwarców 8MHz i orginalnych modulow soytera CC1000PP.

    Pozdrawiam
  • #14 4048227
    Konto nie istnieje
    Konto nie istnieje  
  • #15 4050396
    lelekx
    Poziom 30  
    Posty: 1220
    Pomógł: 158
    Ocena: 90
    Nie, nie spowalnia ale uniemożliwia pracę na większych przepływnościach modułu. Przy przepływności 19,2kbps AVR na 4MHz dobrze mi działał. Większej przepływności nie testowałem.
    PS. program jest mocno nieaktualny i posiada kilka irytujących błędów. Póki co nie umieszczę uaktualnienia, ale pewnie za jakiś czas to zrobię. W tej chwili trwają jeszcze prace nad nim - kod został przeniesiony na ATMega8 i ATMega8535.
  • #16 4147468
    pawwik
    Poziom 11  
    Posty: 74
    Pomógł: 1
    a czy robil ktos te moduly na swoich plytkach lub na tych co w soyterze mozna kupic ? mial jakies problemy ? bo wychodzi troche taniej lutujac samemu.

Podsumowanie tematu

LABEL_AI_GENERATED
Dyskusja dotyczy uruchomienia transmisji radiowej z wykorzystaniem modułu Chipcon CC1000PP oraz mikrokontrolerów AVR, głównie 90S8515, 90S8535, 90S2313, ATmega8, ATmega16L i ATmega162. Udostępniono kod źródłowy w Bascom i asemblerze, zawierający pliki CC1000MAN.INC (inicjalizacja i programowanie CC1000) oraz CC1000XMIT.BAS (procedury przesyłania danych z kodowaniem Manchester). Omówiono połączenia pinów modułu CC1000PP z portami mikrokontrolerów. Zalecane jest zasilanie mikrokontrolera i modułu na 3,3 V, ewentualnie stosowanie dzielników napięcia lub buforów logicznych (np. 74LVX125, 74HCT126) przy pracy z 5 V. Optymalna częstotliwość pracy modułu to około 434,326 MHz dla minimalizacji zakłóceń. Prędkość transmisji 9600 bps jest osiągalna przy taktowaniu mikrokontrolera 1 MHz, a przy 4 MHz możliwe jest działanie do 19,2 kbps. Kod programu wymaga korekt i jest w trakcie aktualizacji, zwłaszcza dla platform ATMega8 i ATMega8535. Użytkownicy zgłaszali pytania dotyczące konfiguracji rejestrów, schematów połączeń oraz problemów z kompatybilnością napięć i częstotliwości kwarcu. Moduły CC1000PP można nabyć m.in. w firmie Soyter. Zasięg transmisji w praktyce wynosi około 80 metrów przy zastosowaniu gotowych modułów.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA