JavaScript is currently disabled.Please enable it for a better experience of Jumi.

Mikro-ohjainpiiriin integroitu reaaliaikainen kello- ja kalenterilohko tarjoaa suunnittelijoille kätevän tavan vähentää tarvittavien komponenttien lukumäärää ja leikata ohjelmointikuluja älykkäissä mittareissa ja muissa vastaavissa sovelluksissa.

Artikkelin kirjoittaja
Mary Tamar Tan toimii Microchip Technology -yhtiössä sovellusinsinöörinä.

Lähes kaikessa piirisuunnittelussa tärkeä tavoite on vähentää järjestelmään tarvittavien komponenttien lukumäärää ja alentaa käyttäjän ohjelmointikustannuksia. Apua näihin molempiin tuo reaaliaikaisen kellon ja kalenterin sisältävä RTCC-moduuli (real-time clock and calendar). Se tarjoaa järjestelmälle tarkan kellonajan ja päivämäärän erittäin vähäisellä tehonkulutuksella. Tämä tapahtuu suorittimen puuttumatta asiaan lainkaan tai ainoastaan hieman.

Moduuli voi tuoda merkittäviä etuja monenlaisiin sovelluksiin kuten hälyttäviin digitaalikelloihin sekä älykkäisiin energiamittareihin, joiden tärkeys kasvaa jatkuvasti, kun älykkäitä sähköverkkoja otetaan käyttöön yhä useammassa maassa.

Microchipin PIC-mikro-ohjaimiin integroitu RTCC-lohko sisältää tarkan kellon ja sadan vuoden kalenterin, joka huomioi myös karkausvuodet automaattisesti. Aikajakso ulottuu tammikuun ensimmäisestä päivästä vuonna 2000 joulukuun viimeisen päivän loppuun vuonna 2099. Ajanosoitus on 24-tuntinen ja näyttöerottelu on tarkimmillaan puoli sekuntia.

Hälytysajankohdan asetuksessa käytettävissä ovat sekuntitasolla 0,5, 1 ja 10 s, minuuttitasolla 1, 10 ja 60 min sekä kalenteritasolla päivä, viikko ja kuukausi.

Kuva 1 esittää RTCC-moduulin lohkokaaviota. Se käyttää erillistä kellosignaalia, joka tuodaan moduulin ulkopuolisesta SOSC-oskillaattorista, jonka kvartsikide värähtelee 32,768 kilohertsin taajuudella. Tämän ansiosta moduuli voi jatkaa toimintaansa, vaikka CPU-kellosignaali olisi estetty järjestelmän ollessa syvän unen tilassa (deep sleep mode).

Kuva 1. RTCC-moduulin lohkokaavio.

Jakosuhteella 1:16384 toimiva esiskaalain tarjoaa ajannäytölle 0,5 sekunnin erottelukyvyn. Tämän perusteella RTCC-ajastin lisää aikaan sekunteja, minuutteja, tunteja, päiviä, kuukausia ja vuosia, jotka tallennetaan RTCVALx-rekistereihin. Näitä arvoja verrataan käyttäjän asettamiin hälytysarvoihin ja hälytyskeskeytys liipaistaan, kun lukemat täsmäävät.

Hälytysasetukset tallennetaan ALRMVALx-rekistereihin. Jos sovelluksessa tarvitaan useita jaksollisia hälytyksiä, aikavälit eri hälytystapahtumien välille asetetaan hälytysmaskien avulla. RTCC-lähtönastaan saadaan joko sekuntikello tai puolitaajuinen hälytyspulssi käyttäjän asettamasta konfiguraatiosta riippuen.

Kiinteän ohjelmiston yksinkertaistamiseksi RTCC-moduulin aika- ja hälytysarvojen rekisteriliitännät on toteutettu käyttäen binäärikoodattua desimaalimuotoa (BCD).

Oheistoimintojen konfigurointi

Käyttäjä määrittää kellonajan kirjoittamalla halutun vuoden, kuukauden, päivän, tunnin, minuutit ja sekunnit aikarekistereihin. Moduulin sallintabitti RTCEN voidaan kuitenkin asettaa ja rekistereihin RTCVALH ja RETCVALL kirjoittaa vain silloin, kun rekisterien sallintabitti RTCWREN on asetettu ykköseksi. Muussa tapauksessa näihin rekistereihin kirjoittaminen jätetään huomiotta.

RTCC-ajastimen (RTCVALx) ja hälytysajastimen (ALRMVALx) rekistereihin päästään vain vastaavien rekisteriosoittimien kautta. Jokainen RTCVALH-rekisterin kirjoitus- tai lukutapahtuma vähentää RTCC-osoittimen arvoa yhdellä, kunnes lukema saavuttaa arvon 00.

Kun RTCC-lähtö on sallittu, käyttäjä voi valita lähdöksi joko sekuntikellon tai hälytyspulssin, jonka taajuus on puolet hälytystaajuudesta. Tarkempaan ajastukseen pääsemiseksi ja keskeytymättömän toiminnan varmistamiseksi jopa järjestelmän syvän unen aikana suositellaan kellolähteeksi moduulin ulkopuolista SOSC-oskillaattoria.

Kun RTCC on käytössä, ajastin etenee laskennassa alkaen määritellystä aloituskohdasta. RTCC-ajastinrekisteriin vahingossa kirjoittamisen estämiseksi suositellaan myös, että RTWREN-bitti nollataan aina, kun rekisteriin ei kirjoiteta.

Hälytyksen ajankohta voidaan asettaa puolesta sekunnista yhteen vuoteen ja toistovälin voi käyttäjä asettaa haluamakseen. Jokainen ALRMVALH-rekisterin luku- tai kirjoitustapahtuma vähentää hälytysosoittimen arvoa yhdellä.

Paristovarmistus

RTCC-moduuli kykenee jatkamaan toimintaansa varmistuspariston voimin mahdollisten sähkökatkosten sattuessa, jotka muuten vaikuttaisivat ajastuksen tarkkuuteen. Tässä VBAT-toimintamuodossa PIC-mikro-ohjaimen keskusyksikön tehoa alennetaan ja lisäksi RTCC-moduulin keskeytymätön tehonsyöttö varmistetaan. Tässä toimintamuodossa käytetään VBAT-nastaan kytkettyä varmistusparistoa kuvan 2 mukaisesti.

Kuva 2. VBAT-toimintamuodon rakenne.

Sirulle integroitu tehokytkin havaitsee jännitteen häviämisen VDD-syöttölinjasta ja kytkee VBAT-nastan ylläpitoregulaattorille. Syöttöjännite pysyy 1,2 voltissa, mikä riittää sekä regulaattorille että RTCC-moduulin kellolähteelle ja syvän unitilan yleiskäyttöisille rekistereille (DSPGPRx). Näin RTCC-moduuli voi jatkaa toimintaansa aivan kuin sähkökatkosta ei olisi ollutkaan.

Moduuli toipuu VBAT-tilasta heti, kun syöttöjännite VDD palautuu. Toimintatilasta herääminen tunnistetaan tarkistamalla VBAT-bitin tila. Jos bitti on asetettu ykköseksi, kun moduuli on toiminnassa ja aloittamassa nollausvektorin koodinkäsittelyä, tämä kertoo, että poistuminen tapahtui VBAT-tilasta. Tulevien VBAT-toipumistapahtumien tunnistamiseksi bitti pitää nollata ohjelmallisesti.

Yksi VBAT-toimintoa tukevista Microchipin demokorteista on LCD Explorer Demonstration Board. Siinä on valmiiksi pidike CR2032-tyyppistä nappiparistoa varten.

Hälyttävät digitaalikellot

Kuvassa 3 on esimerkki RTCC-toteutuksesta, joka sisältää LCD-ohjaimen ja CCP-lohkon (Capture-Compare-PWN) hälytyksellä varustettua digitaalikelloa varten.

Kuva 3. RTCC-moduulilla toteutettu hälyttävä digitaalikello.

Ulkopuolinen SOSC-oskillaattori tuottaa kellosignaalin RTCC-moduulille. Jos RTCC-lähtönasta on määritelty sekuntikelloksi, ledi D1 vilkkuu sekunnin välein. RTCVALx-rekisterien sisältöä ohjataan laiteohjelmistolla ja lukemat näytetään nestekidepaneelissa LCD-näytönohjaimen kautta.

Hälytyskeskeytys liipaisee CCP-lohkon tuottamaan PWM-muotoisen (pulse-width modulation) lähtösignaalin, joka aktivoi pietsosummerin P1 jokaisesta hälytystapahtumasta. Hälytyksen kestoa ohjataan laiteohjelman avulla.

S1, S2 ja S3 ovat painokytkimiä, joita käytetään asettamaan RTCC-lohkon kellonaika ja päivämäärä sekä hälytysasetukset. Yhtä painikkeista voidaan käyttää myös liipaisemaan RTCC:n laskennan tarkka aloitushetki.

Microchipin valikoimassa on useita demokortteja, joita voidaan hyödyntää tähän sovellukseen. Useissa RTCC-lohkolla varustetuissa PIC-ohjainpiireissä on mukana myös sisäinen LCD-näytönohjain, joka kykenee suoraan ohjaamaan nestekidepohjaista näyttölevyä. Muissa piireissä voidaan hyödyntää MSSP-lohkoa, joka kommunikoi LCD-näytön kanssa ja syöttää sille tiedot kellonajasta ja päivämäärästä.

Energiamittarit

Energiaa mittaaviin laitteisiin RTCC-moduuli voidaan integroida muiden oheislohkojen kanssa. Näitä ovat esimerkiksi AD-muuntimet ja LCD-näytönohjaimet. Mittaussovellukseen käytettävän suorittimen pitää saada tuekseen suureen resoluutioon yltävä AD-muunnin tarkkoja jännite- ja virtamittauksia varten. MCU:n tulee lisäksi kuluttaa niukasti tehoa ja olla käytettävissä pariston voimin RTCC-lohkon keskeytymättömän toiminnan varmistamiseksi. Suorittimeen pitää olla integroituna myös riittävästi EEPROM-muistia tiedonkeruu- ja kalibrointidatan tallentamiseksi. Microchipin valikoimissa on useita 8-bittisiä PIC-mikro-ohjaimia, jotka täyttävät nämä vaatimukset.

RTCC-moduulin määräajoin toistuvaa automaattista säätöä voidaan soveltaa AD-muunninlohkon kanssa muodostamaan ohjelmallinen lämpötilan kompensointi vieläkin tarkemman aikasignaalin tuottamiseksi. Näissä ohjainpiireissä on myös sisäinen LCD-näytönohjain, joka voi suoraan näyttää nestekidepaneelissa reaaliaikaisen energiankulutuksen. Niissä on myös ulkoinen liitäntä varmistusparistolle VBAT-nastan kautta. Tämä varmistaa RTCC-lohkon jatkuvan toiminnan myös mahdollisten sähkökatkosten aikana.

Tehokas kokonaisuus

PIC-mikro-ohjainpiirien RTCC-lohko tarjoaa kaikki tarvittavat ominaisuudet tarkan ajan ja päivämäärän ylläpitoon ja seurantaan monenlaisissa järjestelmissä. Konfigurointi on helppoa ja virheen kalibrointi hoituu automaattisesti. Tehonkulutus on lisäksi erittäin vähäistä.

Koska RTCC-lohkoa ei yleensä käytetä sellaisenaan, sen käyttökelpoisuus pääsee paremmin arvoonsa muihin oheislohkoihin yhdistettynä. PIC-ohjainpiirien valikoima tarjoaa monipuolisen valikoiman sirulle integroituja oheislohkoja, jotka voidaan ottaa käyttöön yhdessä RTCC-lohkon kanssa ja muodostaa näin hälytyksellä varustettuja kellojärjestelmiä, energianmittausjärjestelmiä ja muita vastaavia sovelluksia.

Näin yritysverkot muuttuvat tänä vuonna

Yritysverkoissa on käynnissä murros. Verkko- ja palvelinkeskusyritys Equinixillä on yli 8000 asiakasta eri puolilla maailmaa. Yhtiön Suomen toimitusjohtaja Sami Holopainen kertoo, mihin suuntaan digitaalinen transformaatio vie yritysverkkoja vuonna 2017.

Lue lisää...

Näin siirrytään C-tyypin USB-liitäntään!

USB-liitännän C-määritys esiteltiin elokuussa 2014 ja se on tuonut selvästi lisää ominaisuuksia väylään. Jotta uusista ominaisuuksista saisi edun, voi USB-portin toteuttamisen hinta kasvaa merkittävästi. On kuitenkin mahdollista suunnitella C-tyypin liitäntä kustannustehokkaasti.

Lue lisää...
 
ETN_fi Embedded World avasi ovensa tänään. ETN uutisoi messuilla laajasti. https://t.co/LoXBmMsTe7
ETN_fi Mikropiirien myynti kasvoi tammikuussa 14 prosenttia. SIA:n mukaan kasvu on nopeinta kuuteen vuoteen. https://t.co/0DeApXU868
ETN_fi Nokian Rajeev Suri pitää jo perinteisen puheensa MWC-messujen alla Barcelonassa ensi sunnuntaina. https://t.co/IkVjHgsVYT
ETN_fi Nokia, Google ja Qualcomm demosivat ensimmäistä kertaa livena yksityistä LTE-verkkoa CBRS-taajuuksilla Las Vegasin… https://t.co/PQxC5SEAN6
ETN_fi 3GPP on julkistanut 5G-tekniikalle suunnitellun logon. Logo noudattaa aiempien 3G- ja 4G-logojen tyyppiä.… https://t.co/ZYaQRonOey