0,00 €

V košarici ni izdelkov.

0,00 €

V košarici ni izdelkov.

More
    DomovRevijaRazširitveni modul za Minipin razvojni sistem z RFM12B

    Razširitveni modul za Minipin razvojni sistem z RFM12B

    Port B smo uporabili zato, ker so na njem že tovarniško določene linije za SPI komunikacijo, po kateri procesor izmenjuje podatke z modulom. Port D pa smo uporabili zaradi prekinitvenih vhodov INT0 in INT1 in s tem možnosti uporabe prekinitvenih rutin. Kot indikacija VF sprejemanja je vgrajena zelena, za VF oddajanje pa rdeča LED dioda. Tipki uporabljamo za pošiljanje znakovnih nizov v oddajnem načinu. Dodatni LED diodi sta namenjeni prikazu aktivnosti izhodov glede na sprejeti niz.

     

    Istočasno lahko na Minipinu uporabljamo le en RFM12 razširitveni modul. Za različne potrebe naložimo različne programe. Na voljo sta programa za oddajo in sprejem znakovnega niza. Primeren program, ki bo združeval funkcionalnost obeh, si iz predloženega gradiva in primerov lahko izdelate sami. Za preizkušanje komunikacije je najbolj priročno uporabiti dva Minipin razvojna sistema, saj bomo istočasno delali na vsaj dveh Bascom programih (oddajni in sprejemni).

    Na tečajih Bascoma je to preprosto, saj se po dva in dva tečajnika povežeta na isti frekvenci, s tem, da eden oddaja, drugi pa sprejema odposlane nize. Prikaz sprejetega niza prikažemo tudi na LCD displeju. Če gre za dogovorjen niz, ki pripada tipki 1 ali tipki 2, se niza prikažeta za prvo tipko v zgornji in za drugo tipko v spodnji vrstici. Pred vsakim nazadnje sprejetim nizom se prikaže znakec za anteno. V nizu pošiljamo tudi zaporedno številko oddanega niza za pripadajočo tipko, in sicer do niza 255, potem začnemo od začetka. Če sprejmemo niz, ki ni dogovorjen, ga ignoriramo, vendar vseeno izpišemo na LCD displej v prvo vrstico. Pred takšnim nizom je znakec za slab sprejem.

    Naključne nize lahko pogosto sprejmemo, saj je radijska dejavnost na 433 Mhz včasih zelo živahna. Naša naloga je sprejeti pravi niz, ga analizirati in izvršiti naloge, ki so na sprejemni strani za posamezen niz predvidene.

    Opis oddajnega programa

    Oddajni program v principu deluje tako, kot je narisano v blok shemi na sliki. Dodali smo le še preverjanje, če je katera od tipk pritisnjena in v odvisnosti od tega, katera tipka to je, priredimo vsebino oddanega niza, da bomo pritisk te tipke na sprejemni strani lahko povezali z izvajanjem želenih podprogramov. Za popestritev programa z raznimi možnostmi smo v podprogram za prvo tipko vpeljali čakanje, da je tipka spuščena, torej niz oddamo le enkrat za vsak pritisk tipke. Pri drugi tipki niz odpošiljamo toliko časa, dokler je tipka pritisnjena.

    Program teče takole

    Konfiguracija modula za oddajanje

    To naredimo čisto na začetku in samo enkrat. (Opis vseh 17-ih ukazov in pomen vsakega posameznega bita v registrih je opisan v originalni dokumentaciji. Slika s kratkim opisom posameznega ukaza je na zadnji strani.)

    V konfiguracijskem delu je tudi vrednost, ki jo vpišemo za komunikacijo na posameznem kanalu in pomeni frekvenco, na kateri bo modul oddajal. Sprejemnik mora imeti za uspešno sprejemanje v ta register vpisano enako vrednost.

    Oznaka konca konfiguracije

    Zatem kot signalizacijo prižgemo in ugasnemo Tx in Rx LED diodi, s katerima označujemo sprejemanje oziroma oddajanje.

    Vrtimo se v glavni programski zanki

    1. Preberemo stanje vhodov.
    2. Ugotovimo stanje tipk.
    3. Če ugotovimo pritisk tipke, potem izvršimo njej določen podprogram.
    4. Če ni pritisnjena nobena od tipk, se vrnemo na začetek glavne programske zanke.

    Konec glavne programske zanke

    Kratek opis podprogramov

    Podprogram za 1. tipko

    • (odpošlje niz le enkrat in počaka, da spustimo tipko)
    • Odpošljemo niz „T1 on:….“, izpišemo isti niz na LCD displej
    • Preverimo stanje tipke 1
    • Počakamo, dokler ni tipka spuščena
    • Vrnemo se v glavno programsko zanko

    Podprogram za 2. tipko

    • (pošilja niz toliko časa, dokler ne spustimo tipke)
    • Odpošljemo niz „T2 on:….“, izpišemo isti niz na LCD displej
    • Preverimo stanje tipke 2
    • Če je tipka še pritisnjena, gremo spet na začetek tega podprograma
    • Če tipka ni več pritisnjena, se vrnemo v glavno programsko zanko

    Opis sprejemnega programa

    Sprejemni program v principu deluje tako, kot je narisano v blok shemi na sliki. Dodali smo še izpis na LCD displej. Sprejeti niz analiziramo in če ustreza enemu od dogovorjenih nizov ob pritisku na tipko na oddajni strani, izvedemo predvideni podprogram.

    Konfiguracija modula za sprejem

    To naredimo povsem na začetku in samo enkrat. (Opis vseh 17-ih ukazov in pomen vsakega posameznega bita v registrih je opisan v originalni dokumentaciji. Slika s kratkim opisom posameznega ukaza je na zadnji strani.) V konfiguracijskem delu je tudi vrednost, ki jo vpišemo za komunikacijo na posameznem kanalu in pomeni frekvenco, na kateri bo modul sprejemal. Oddajnik mora imeti za uspešno komunikacijo v ta register vpisano enako vrednost.

    Oznaka konca konfiguracije

    Zatem kot signalizacijo prižgemo in ugasnemo Tx in Rx LED diodi, s katerima označujemo sprejemanje oziroma oddajanje niza.

    Vrtimo se v glavni programski zanki:

    • Preverjamo „Test“ bit, ki označuje, da smo sprejeli zaključen niz.
    • Če ta bit ni postavljen, se vrnemo na začetek glavne programske zanke.
    • Če je ta bit postavljen, analiziramo sprejeti niz v podprogramu.

    Konec glavne programske zanke

    Kratek opis podprogramov

    Prekinitvena rutina, ko prispe v modul nov znak (prekinitev se zgodi vsakokrat, ko sprejmemo nov znak)

    • Znak dodamo nizu
    • Če je zadnji znak CR(ASCII=13 decimalno), je to konec niza, zato postavimo „Test“ bit
    • Vrnemo se v glavno programsko zanko na mesto zadnje prekinitve

    Analiza sprejetega niza (primerjava nizov, akcije, izpis, začetne vrednosti spremenljivk)

    • Izločimo karakteristični del niza, ki vpliva na izhodne aktivnosti
    • Primerjamo ga s tistimi nizi, ki so predvideni za aktiviranje posamezne aktivnosti
    • Če se sprejeti niz ujema s katerim od predvidenih nizov, izpeljemo ustrezne aktivnosti
    • Niz izpišemo na LCD displej
    • izbrišemo „Test“ bit in postavimo števec znakov na začetno vrednost
    • Vrnemo se v glavno programsko zanko

    Celotni članek

    DataSheet_modul

    DataSheet_čip

     

    Razširitveni modul za Minipin razvojni sistem z RFM12B
    2009_SE163_24
    Avtor: Bojan Kovač