Osmo Pasuri, OH6CJ

oh6cj@sral.fi

 

 

TAAJUUSLASKIN

14.08.2001

Artikkelin esittelykuva: PIC_LCD_counter.jpg

Kuvat, piirikaaviot, taulukot: OH6CJ paitsi kuva 4 : http://smallwonderlabs.com/ freqmite.gif)

 

File: PIC_LCD_artikkeli16_kuvat.doc

 

 

 

 

 

 

 

Sisällysluettelo

1. Johdanto *

2. Taajuusmittauksen periaate *

3. Käsitteitä *

3.1 Suora taajuuslaskin *

3.2 Ohjelmoitava taajuuslaskin ja Display Offset *

3.3 Esijakaja *

3.4 PIC *

4. Taajuuslaskintekniikka 20 vuotta sitten *

5. Taajuusindikaattorit *

5.1 7-segmenttinäyttö *

5.2 LCD eli nestekidenäyttö *

5.2.1 Taustavalolliset LCD-näytöt *

5.3 Taajuuden ilmaisu sähkötyksellä *

5.4 Taajuuden ilmaisu LED-matriisilla dekadeittain *

6. Kuinka harrastajan taajuuslaskin voitaisiin toteuttaa edullisesti nykytekniikalla? *

6.1 PIC-mikroprosessori *

7. PIC-sovellukset ja OM3CPH *

7.1 OM3CPH peruslaskimen toiminta *

8. Laskimen modifioitu HW-kytkentä *

9. Laskimen modifioitu ohjelmisto (SW) *

9.1 COUNTER MODE *

9.2 EEPROM MODE *

9.3 Muut lisätyt funktiot *

9.4 EEPROM-parametrien funktiot *

9.4.1 Display Offset ja kytkin S4 (EEPROM 00h…05h) *

9.4.2 Suora tai ohjelmoitava taajuuslaskenta (EEPROM 06h) *

9.4.3 Laskimen kalibrointi (EEPROM 07h, 08h) *

9.4.4 Näytön valinta (09h) *

9.4.5 Näytettävien numeroiden määrä (0Ah) *

9.4.6 Oletusarvojen palautus (0Fh) *

9.5 Käyttäjän asetusten muuttaminen *

9.5.1 EEPROM MODEn aktivointi *

9.5.2 Parametrien arvojen muuttaminen *

10. Laskimen rakentaminen *

11. Laskimen käyttöönotto *

11.1 Mittaukset jännitteettömänä *

11.2 Ensimittaukset jännite kytkettynä *

11.3 Loppuasennus ja testaus *

12. Laskimen tuottamat häiriöt *

13. Mistä ohjelman saa? *

14. Jatkokehitysideoita ja puutteet *

14.1 Kehitysideat *

14.2 Puutteita *

15. PIC-LCD-taajuuslaskimen osaluettelo *

16. Lähteet *

 

1. Johdanto

Tämä artikkeli kertoo taajuuslaskimen toimintaperiaatteesta ja sen toteutuksesta viimeisen 20 vuoden aikana. Taajuuslaskimia on tyypillisesti käytetty mittalaitteena esim. radioharrastajien laitteissa vastaanotto- ja lähetystaajuuden indikointiin ja näin on päästy tarkempaan tulokseen verrattuna mekaanisiin taajuusasteikkoihin. Tosin nykyisissä kaupallisissa lähetinvastaanottimissa käytetään tyypillisesti paikallisoskillaattorina DDS:ään (Direct Digital Synthetics) perustuvaa ratkaisua ja näytön taajuuslukema perustuukin DDS-piirille annettuun taajuusohjeeseen. Rakenteluesimerkkinä esitellään PIC-mikroprosessorilla ja LCD-näytöllä toteutettu 7 numeron ohjelmoitava 30 MHz:n taajuuslaskin, jonka toiminta voidaan parametroida käyttäjän tarpeen mukaan.

2. Taajuusmittauksen periaate

Vaihtosähkön taajuus määritellään värähtelyjaksojen lukumääränä aikayksikössä. Taajuushan on yksi hertzi, kun tapahtuu yksi värähdys yhdessä sekunnissa. Seuraavasta kaavasta voidaan todeta että taajuuden mittaaminen on ajan mittaamisen käänteinen toimitus. 7) Taajuus saadaan ratkaistua jakamalla mitattavan signaalin värähdysten lukumäärä tarkasteluajalla.

f (Hz) = n / t (s) f = taajuus hertzeinä

n = värähdysten lukumäärä

t = tarkasteluaika

Taajuuslaskimessa lasketaan määrämittaisena aikana (laskenta-aikaikkuna) jaksojen määrä ja muunnetaan tulos taajuudeksi. 7) Hiukan tarkennettuna toimintaperiaate on yksinkertaisesti seuraava:

  1. Lasketaan kalibroidussa laskenta-aikaikkunassa mitattavasta signaalista pulssien lukumäärä.
  2. Talletetaan pulssien määrä välimuistiin (latch)
  3. Tulostetaan laskimen näytölle pulssiluku = taajuus välimuistista. Desimaalipisteen paikka ohjataan valitun laskenta-aikaikkunan (= resoluution) mukaan
  4. Nollataan pulssilaskurit ja aloitetaan seuraava mittausjakso (hyppy kohtaan 1…)

Esimerkki:

Laskenta-aikaikkuna on 100 ms. Mitattava taajuus on 14100.155 kHz = 14100155 jaksoa sekunnissa. Laskenta-aikaikkuna määrää maksimi resoluution, jos esijakajaa ei käytetä mittaussisääntulossa eli esim. 100 ms:n aikana jaksoja tulee 14100155 x 0.1 s = 1410015. Tämä vastaa siten taajuutta 14100.15 kHz eli vähiten merkitsevä numero (5) indikoi kymmenet Hz:t. Jos aika-ikkuna olisi 1 s, niin silloin päästäisiin 1 Hz:n resoluutioon.

Taajuuslaskimen elektroniikalla on aina maksimimittaustaajuus, jonka laskin pystyy tietyissä olosuhteissa mittaamaan. Taajuusaluetta voidaan kasvattaa ylöspäin käyttämällä laskimen edessä esijakajaa tai superheterodyneperiaatetta eli alassekoittamista 7).

3. Käsitteitä

Seuraavassa muutamia käsitteitä, jotka on hyvä ymmärtää tätä artikkelia luettaessa.

3.1 Suora taajuuslaskin

Summaa mitattavia pulsseja laskenta-aikaikkunan osoittaman aikayksikön ajan ja näyttää tuloksen. 8)

3.2 Ohjelmoitava taajuuslaskin ja Display Offset

Taajuuslaskin rakennetaan ohjelmoitavaksi, kun se liitetään esim. supervastaanottimeen mittaamaan vastaanottimen VFO-taajuutta, mutta laskimen halutaan indikoivan vastaanotettu taajuus. Tällöin on vastaanottimen rakenteen mukaan AM- ja FM-modella joko vähennettävä välitaajuudesta VFO-taajuus tai lisättävä välitaajuus VFO-taajuuteen. CW- ja SSB-modella välitaajuuden asemesta käytetään BFO-taajuutta. Tätä summattavaa tai vähennettävänä olevaa lukuarvoa kutsutaan tässä artikkelissa Display Offset (näytön offsetiksi).

3.3 Esijakaja

Mitattavan taajuuden lisäjakaja, joka kytketään taajuuslaskimen sisääntuloon. Sen avulla voidaan mitata taajuuksia, jotka ovat perustaajuuslaskimen mittausalueen yläpuolella.

3.4 PIC

PIC (Programmable Interface Controller) on yksisiru (single-chip) mikroprosessori, joka sisältää ohjelman suorituksen kannalta melkein kaiken tarvittavan kuten I/O:n, RAM- ja ROM-muistit, käskydekooderin, kello-oskillaattorin ja tilakoneen. Piiri tarvitsee +5 V:n käyttöjännitteen ja oskillaattorikytkentään vastuksen ja kondensaattorin (RC) tai suuremmille taajuuksille esim. kvartsikiteen ja kaksi kondensaattoria. PIC-mikroprosessorit ovat Microchip Technology Inc. valmistamia tuotteita. 10)

4. Taajuuslaskintekniikka 20 vuotta sitten

Rakensin ensimmäisen taajuuslaskimen 1980-luvun alussa DX-kuuntelijalehdessä olleen Ilpo J. Leppäsen ansiokkaan artikkelin mukaan. Laskin oli toteutettu sen ajan tekniikan ja rakenteluhengen mukaan noin parillakymmenellä TTL-piireillä. Virrankulutus oli taattua…noin 1 A viiden voltin käyttöjännitteellä! Kolmannes mikropiireistä käytettiin muodostamaan laskenta-aikaikkuna jakamalla 1 MHz:n kidetaajuus siten että lopputuloksena positiivisen jakson pituus oli 100 ms laskenta-aikaikkunaksi. Loput piireistä olivat itse laskurina (74192), välimuistina (7475 latch) ja 7-segmenttinäytön ohjaimena (7447). Lisäsin vielä 100 Hz dekadin laskimeen ja maksimimittaustaajuutta nostin käyttämällä erillistä esijakajaa (10-jakaja) mittaustulossa 5). Näin esim. taajuus 145.550 MHz oli jakajan lähdössä 14.5550 MHz. Tarvittiin desimaalipisteen siirto oikealle, jotta laskimen indikoima taajuuslukema oli taas oikea 145.550 MHz. Muita 1980-luvun taajuuslaskinpiirejä olivat ainakin Intersil ICM 7217A yhdessä ICM 7207 (time base) kanssa 2) , ICM7226 ja Mostek MK50398 3). Ensin mainittua löytyy vieläkin komponenttikauppojen luettelosta.

 

5. Taajuusindikaattorit

Tutkitaanpa seuraavaksi millä eri tavoilla taajuuslaskimen mittaama taajuus voidaan indikoida käyttäjälle.

5.1 7-segmenttinäyttö

Näyttönä voi edelleenkin olla LED-tyyppinen 7-segmenttinäyttö, joka koostuu seitsemästä valoa emittoivasta diodista (LED) sijoitettuna numero kahdeksan muotoon. Lisäksi desimaalipisteelle (dp) on oma pinni. LEDien muodostamia viivoja kutsutaan segmenteiksi, jotka on nimetty kirjaimin a,b,c,d,e,f ja g. LEDien anodit (yhteisanodi-kytkentä) tai katodit (yhteiskatodi-kytkentä) on kytketty yhteen muodostaen kytkentään yhteisen COMMON-pinnin. 7-segmenttinäytön hyvänä ominaisuutena on numeroiden selkeä näkyvyys, mutta varjopuolena suuri virrankulutus. Jotta numerot näkyvät myös kirkkaassa auringon valossa, käytetään usein tummennettua lasi- tai muovi-ikkunaa näytön edessä. Jokainen aktivoitu segmentti kuluttaa virtaa 5…20 mA sarjavastuksen mukaan.

7-segmenttinäyttöjen ohjaus voi olla numerokohtainen kuten esim. Ilpo J. Leppäsen artikkelin laitteessa, jossa jokaiselle näytön dekadille on oma laskuri-, latch- ja dekooderipiiri. Toinen toteutustapa on ns. multipleksattu näytön ohjaus, jolloin jokaista dekadia näytetään hetki yksi kerrallaan. Kytkennässä käytetään kytkintransistoreita kytkettynä jokaisen 7-segmenttinäytön COMMON-pinniin. Transistorit ohjataan johtavaan tilaan dekadi kerrallaan multiplekserin ohjaamana ja näin ainoastaan kyseiseen näyttöön syttyvät ledit, jotka ohjataan synkronoidusti segmenttien ohjausväylästä (a…g). Kun multipleksaustaajuus on riittävän suuri, näkee silmä valon jatkuvana ilman häiritsevää vilkkumista. Multipleksatun näytön etuna on pienempi virrankulutus kuin numerokohtaisella ohjauksella, mutta haittapuolena se voi häiritä vastaanotinta ellei sitä suojata metallikoteloon.

Kuva 1. Multipleksatun 7-segmenttinäyttöryhmän ohjausperiaate. (multiplexer_block_diagram.eps)

 

5.2 LCD eli nestekidenäyttö

Vähemmän virtaa kuluttavat LCD-näytöt (LCD = Liquid Crystal Display). Näyttö itse on passiivinen 7-segmenttityyppinen näyttö, johon on yhdistetty useita numeroita esim. 3.5 numeron näyttö (maksimi lukema on 1999). Esimerkkinä tällaisesta on K1 cw-lähetinvastaanotin (USA:ssa rakennussarjana) varustettuna kolmen numeron LCD-näytöllä, jonka segmenttejä (3 x 7 = 21 I/O-pinniä) ohjataan yhdellä PIC-piirillä 16C77. 11) Piirilevyn rakenteesta tulee monimutkainen johtuen ohjattavien segmenttien suuresta määrästä.

Yksinkertaisempi soveltaa on valmis ohjauselektroniikalla varustettu LCD-näyttömoduli (esim 1 x 16 merkkiä = näytössä on yksi rivi, jossa 16 merkkiä). Tällöin näyttöä ohjataan erillisellä mikroprosessorilla 4- tai 8-bittisellä standardoidulla (esim. Hitach HD44780) dataväylällä ja kolmella ohjauslinjalla. 3) Pinnien merkitys on vakio eri tyypeillä riippumatta näytön merkkimäärästä ja riveistä. Yhdelle merkille on varattu 5 x 10 pisteen matriisi, josta normaalisti käytetään 5 x 7 pisteen alue ylhäältä lukien. Näin mahdollistetaan alareunaan myös kursoriviivan ohjaus. Näytölle voidaan tulostaa ASCII-merkkejä, sekä ohjelmoida myös tarvittaessa omia merkkiä.

Näytön voi myös asettaa 5 x 10 pisteen moodiin, jolloin tietyt pienet kirjaimet (esim. j, p, q, y…) tulostuvat oikealle korkeudelle kuten normaalisti kirjoitettaessa.

 

Taulukko 1. LCD-näyttömodulien pinnit HD44780-standardin mukaan.

Pin

Signal

Level

Function

1

Vss

Ground

 

2

Vdd

+5 VDC

Logic supply

3

VLC

+0.7 VDC

Power supply for LC driving

4

RS

L=INST, H=CHAR

LCD Register select control line

5

R/W

L=Write, H=Read

LCD Read/Write control line

6

E

Latch on fall edge

LCD Enable control line. Operation start signal for data R/W. Causes R/W to be latched on falling edge.

7

8

9

10

DB0

DB1

DB2

DB3

 

Lower order 4-bit bi-directional tri-state data-bus

11

12

13

14

DB4

DB5

DB6

DB7

 

Upper order 4-bit bi-directional tri-state data-bus

15

16

A (LED+)

K (LED-)

 

Supply voltage for LED Backlighting

LCD-näytön ohjauselektroniikka on CMOS-tekniikkaa ja kuluttaa virtaa vain muutaman mA:n. LCD-näyttömoduuleja on saatavana alle 50 mk:sta lähtien ja niiden ohjauksesta löytyy internetistä hakusanalla "LCD" runsaasti tietoa. Käytettyjä näyttömoduuleja löytyy kierrätystarkoituksiin mm. lasertulostimista ja erilaisista teollisuuden ohjauspaneeleista.

Kuva 2. Erään 2 x 20 merkkisen taustavalollisen LCD-modulin lohkokaavio. (lcd_module_block_diagram.eps)

LCD-näyttöä hankittaessa kannattaa suhtautua varauksella halvalla myytäviin näyttöihin (alle 50 mk), koska kokemuksen mukaan niiden oikea toiminta voi olla sattumanvaraista ja olisi ikävää, jos esim. PIC-LCD rakennusprojekti menisi sen takia kiville. Kokeilin laskuria neljän eri valmistajan LCD-modulilla ja lopputuloksena havaitsin, ettei näyttö toiminut halvimmalla moduleilla lainkaan, ennenkuin lisäsin ohjelmakoodiin ylimääräisiä viiveluuppeja tiettyjen LCD-komentojen jälkeen. Havaitsin tietyissä moduleissa myös häiriöherkkyyttä, jos LCD:n ja PIC:n välinen johdotus oli yli 15 cm pitkä.

LCD-näyttömodulia valittaessa toinen tärkeä asia on näytön oikea katselukulma. Jos näyttö tulee etupaneeliin, joka on pystysuorassa, tulee näytön merkkien olla myös terävät katsottaessa sitä kohtisuoraan ja hiukan yläviistosta. Esim. 1 x 16 merkkisen TM161A/B LCD-näyttömodulin paras katselukulma on edestä alhaalta (kukahan katsoo radion taajuusnäyttöä alaviistosta?). Kuitenkin kohtisuoraan katsottaessa merkit näkyvät hiukan epäterävästi. Tämähän on tuttu juttu taskulaskimien näytöistä. (Jos ostat LCD-näyttömoduulin, vaadi myyjältä selvitys näytön katselukulmaominaisuuksista).

5.2.1 Taustavalolliset LCD-näytöt

LCD-näyttö ei itse emittoi valoa, joten sen luettavuus huononee pimeässä ilman näytön tai ympäristön taustavaloa. Sitä varten on kehitetty taustavalollisia LCD-näyttöjä. Taustavalot on sijoitettu näytön alle ja itse LCD-näytön taustamateriaali päästää valoa läpi. Taustavaloina käytetään elektroluminenssiin ja LED:hin perustuvia ratkaisuja, joista jälkimäinen on pitkäikäinen ja siten suositeltava. LED-taustavalo koostuu useasta rinnankytketystä LED-diodiryhmästä, joka tarvitsee aina etuvastuksen. Itse käytin toisessa protossa 18 ohmin /0.5W vastusta sarjassa +5 V:n ja LED-näytön anodin kanssa. Taustavalo koostui 11 lediryhmästä, jossa kussakin oli kaksi lediä sarjassa. Sarjavastus rajoitti LEDien virran n. 50 mA:iin. LED:n anodi ja katodiliittimet ovat yleensä moduulin toisessa päässä ja lisäksi liittimissä 15 ja 16. LED-taustavalon virrankulutus riippuu tietysti halutusta taustavalon kirkkaudesta (esim. 50..275 mA), joten kannettavissa laitteissa taustavalolle kannattaa laittaa oma kytkin virrankulutuksen minimoimiseksi.

Kuva 3. Taustavalollinen 2 x 20 merkkinen LCD-näyttömoduli. Oikeassa reunassa näkyy taustavalon jännitesyötön liittimet ja vasemmassa reunassa kahdessa pystyrivissä näytön ohjauksen liitinnastat 1…14. (2x20_lcd.jpg)

 

5.3 Taajuuden ilmaisu sähkötyksellä

USA:ssa on myynnissä 20 dollarin hintaan PIC-piirillä toteutettu taajuuslaskin FREQ-Mite, joka aktivoitaessa indikoi taajuuden sähkötyksellä piezo-summeriin tai kaiuttimeen/kuulokkeisiin. Hyvä laite kertomaan, missä ollaan, mutta tietylle taajuudelle tulo vaatii toistoa. Oiva apuväline yksinkertaisiin QRP-laitteisiin ja myös näkövammaisille radioamatööreille. RF-tulojännitteeksi tarvitaan vähintään 200 mVpp 10 MHz:iin asti ja 600 mVpp 30 MHz:lla. Mittaustarkkuudeksi luvataan +/- 1.5 kHz 25 MHz:iin asti ja +/-2 kHz yläpäässä. Tässä sovelluksessa käytetään PIC-piirin ns. SLEEP-moodia hyväksi, jolloin piiri menee passiiviseen "unitilaan" taajuusindikoinnin jälkeen. Näin PIC-piirin kello-oskillaattori pysähtyy ja ei häiritse itse vastaanotinta. Taajuus-offset ohjelmoidaan oikosulkupistokkeilla (jumppereilla) piirilevyn liittimille. 4)

Kuva 4. Freq-Mite taajuuslaskin PIC-prosessorilla toteutettuna. (kuva http://smallwonderlabs.com/ freqmite.gif)

 

5.4 Taajuuden ilmaisu LED-matriisilla dekadeittain

Japanilaisella kekseliäisyydellä JF1OZM:n kotisivuilta löytää mainion CD4017 CMOS-piireillä tehdyn suoran taajuuslaskimen, jossa käytetään erillisledejä jokaiselle näytettävälle dekadille. Kytkentä on tehty minimi komponenttimäärällä. CMOS-piirien johdosta laskimen ylärajataajuus jää reilusti alle 10 MHz:iin. Huolellisella ledien asennuksella ja koteloinnilla saadaan näyttävä ja myös erikoinen taajuusnäyttö radioon. 9)

Kuva 5. Timon OH2BFZ homemade 80m:n lähetinvastaanotin varustettuna LED-matriisinäyttöisellä taajuuslaskimella. Ylin ledirivi indikoi 100 kHz, seuraava 10 kHz ja alin 1 kHz. (Kuva oh2bfz_trcvr.jpg)

 

6. Kuinka harrastajan taajuuslaskin voitaisiin toteuttaa edullisesti nykytekniikalla?

Nykyään ei kannata lähteä rakentamaan taajuuslaskinta erillislaskuripiireistä (TTL tai CMOS), koska kytkennästä tulee monimutkainen johtuen piirien suuresta määrästä. Kaupallisia taajuuslaskimeksi suunniteltuja yksisirupiirejä on vähän ja ne ovat kalliita johtuen ilmeisesti pienistä volyymeista. Myöskään ne eivät välttämättä ole optimoituja harrastajan tarpeeseen. Entäpä mikroprosessoripohjaiset ratkaisut? Ensimmäinen reaktioni oli: monimutkaisia, tarvitsevat useita mikropiirejä, kuinka kehittää ohjelmisto ja mistä saada kehitysympäristö minimi-investoinnilla? Yllätyksekseni otsikon kysymykseen löysin vastauksen internetistä: PIC-prosessorit.

 

6.1 PIC-mikroprosessori

Mikrochipin tuotevalikoimaan kuuluu useita erityyppisiä piirejä mm.:

- kertaohjelmoitavat piirit PROM

- uudelleenohjelmoitavat piirit perustuen EEPROM tai FLASH-piiritekniikkaan (ohjelmointi n. 13V:n jännitteellä)

- EPROM-piiritekniikkaan perustuvat piirit (nollataan UV-valolla)

Harrastajaa kiinnostaa tietysti helpoiten uudelleenohjelmoitavat piirit.

Kuva 6. 18-nastainen PIC-mikropiiri 16C84 mikropiirikannassa protopiirilevyllä. (Kuva Printed_board_view.jpg)

PIC:n lisäksi tarvitaan vain kide ja pari kondensaattoria sekä 5 V:n reguloitu apujännitelähde. Eli ei tarvita RAM-, ROM- ym. piirejä osoite- ja dataväylineen kuten yleensä vanhemmissa mikroprosessorisukupolvissa. Kaikki tämä on integroitu yhteen PIC-mikropiiriin.

Hyvin yleinen PIC-piiri on 8-bittinen 16F84 (16C84 on vanhempi EEPROM-versio), jossa on 13 ohjelmoitavaa I/O-pinniä (RA0…RA2, RB0…RB7) ja mikä parasta harrastajalle, piirin flash-ohjelmamuistin (FPROM) voi ohjelmoida n. 1000 kertaa. Tämä tarkoittaa sitä, että harrastaja voi itse niin halutessaan kehittää ja testata sovellusta n kertaa, kunnes haluttu lopputulos on saavutettu (vertaa tinaa ja kokeile…savun hälvettyä tarkistetaan ja muutetaan kytkentä …heh heh). Piirissä on myös data-muisti, johon voi tallettaa sovelluskohtaisia asetteluja. Toisena vaihtoehtona voidaan käyttää PIC-harrastajien valmiita sovelluksia, joita löytyy internetistä ja ohjelmoida PIC-piiri niillä. Myös PC:n printteriporttiin liitettävän yksinkertaisen ohjelmointilaitteen rakennusohjeita löytyy netistä. Piirin 16F84-04/P hinta (4 MHz:n tyyppi) on ollut halvimmillaan alle 40 mk.

Internetistä voi imuroida ilmaiseksi MPLAB™ ohjelmistokehitysympäristön IDE (Integrated Development Environment) tietokoneelle 10). Myös kaupallisia Basic ja C-kielen kääntäjiä on saatavilla 3).

 

7. PIC-sovellukset ja OM3CPH

Peter OM3CPH:n kotisivulla on monia PIC-pohjaisia taajuuslaskimia ja DDS-VFO-kytkentöjä. Hän on rakennellut jo 30 vuotta kotikutoisia laitteita. Hän sai ensimmäisen radioamatööriluvan 1975 kutsulla OK3CPH. Myöhemmin Tsekkoslovakian jakautuessa Tsekin ja Slovakian tasavaltaan, kutsu muuttui OM3CPH:ksi. Muutamia vuosia sitten Peter löysi radioharrasteeseen PIC-piirit! PIC taajuuslaskin- ja DDS-sovelluksia löytyy runsaasti hänen kotisivultaan. 1)

7.1 OM3CPH peruslaskimen toiminta

Seuraavassa on selostettu alkuperäisen PIC-LCD taajuuslaskinohjelman algoritmi, joka on perustana myöhemmin selostetulle laskimelle:

1. Muunnetaan 24-bittinen laskuriarvo seitsemäksi desimaalinumeroksi

2. Muunnetaan desimaaliarvot ASCII-merkeiksi LCD-näyttöä varten

3. Tyhjennetään LCD-näytöltä edellisessä laskennassa tulostetut merkit

4. Lähetetään taajuuslukema ASCII-merkki kerrallaan RB0…RB3 avulla LCD-näytölle ja asetetaan

desimaalipisteen paikka tarvittaessa

5. Nollataan laskurirekisterit

6. Aloitetaan uusi 100 ms:n mittausjakso

7. Testataan PIC:n sisäisen laskurin TMR0:n ylivuoto, jos ylivuoto on tapahtunut niin kasvatetaan

ohjelman rekisteriä TimerH:ta yhdellä

8. Hyppy kohtaan seitsemän, kunnes mittausjakso (mittausaika-ikkuna) on suoritettu.

9. Pysäytetään mittaus

10. Siirretään TimerH arvo HigB-rekisteriin ja TMR0 arvo MidB-rekisteriin

11. Lasketaan LowByte rekisterin arvo digitaalilähdön RA3 avulla Prescaler-laskurista.

12. Tehdään Display Offset laskenta valinnan mukaan (Add tai Sub).

13. Hyppy kohtaan 1.

Laskenta-aikaikkuna on siis 100 ms, jolloin vähiten merkitsevä numero näyttää kymmenet Hz:it. Laskin sisältää 24-bittisen laskurin, joka on jaettu kolmeen 8-tavuiseen laskurirekisteriin: High byte, Midbyte ja LowByte. Esim. LCD-näytölle tulostetaan taajuuslukema 7.331.02 MHz. Tällöin rekisterien arvot ovat: HighByte = 0Bh, MidByte = 2Fh ja LowByte = AE, koska 73310210 kymmenjärjestelmässä vastaa 0B2FAE16 kuusitoistajärjestelmässä.

8. Laskimen modifioitu HW-kytkentä

Tibor OM2ATM on suunnitellut alkuperäisen 1-puolisen piirilevyn, jota olen modifioinut lisäämällä +5 V:n jänniteregulaattorin ja 4 painonappia, jotka löytyivät vanhasta videonauhurin romusta. Painonappien avulla tehdään tarvittaessa käyttäjän asetukset EEPROM-muistiin. Samoihin liittimiin kytketään koskettimet varsinaisille kytkimille tai relekoskettimille tarpeen mukaan (piirikaaviossa "External Control").

Mitattava taajuus kytketään NPN-transistoriasteen vahvistamana I/O-pinneihin RA3 ja RA4. RA4 toimii schmitt trigger-tyyppisenä digitaalitulona PIC:n sisäiselle laskurimoduulille TMR0, joka muodostaakin pulssilaskennan ytimen tässä sovelluksessa. RA3:a tarvitaan digitaalilähtönä laskennan jälkeen selvitettäessä Prescaler-laskurin arvo. Tämä siksi, koska ko. laskuriarvoa ei voi PIC:ssä lukea suoraan.

Digitaalituloa RA2 käytetään LCD:n R/W toimintoon sekä Display Offsetin summaus (Add) tai vähennys (Sub) valintaan ohjelmoitavana taajuuslaskimena. Valinnan määrää tietysti vastaanottimen rakenne, onko vastaanotettu taajuus välitaajuuden ala- vai yläpuolella.

Painopiirilevy on melkein samaa kokoa itse 1 x 16 merkkisen LCD-näyttömoduulin kanssa (n. 8 cm x 3.6 cm) ja piirikortit asennetaankin päällekkäin esim. kierreholkkien ja ruuvien avulla. Näin saadaan LCD:n data- ja ohjausväylä lyhyeksi piirikorttien välillä.

Kuva 7. PIC-LCD-taajuuslaskimen kytkentäkaavio (schematic_1.eps)

LCD-modulin näyttö tarvitsee toimiakseen kontrastijännitteen, joka on normaalisti n. 0.5…0.7 V ja pakkasta kestävissä malleissa –6…-7 V 3). Kytkennässä 22 kilo-ohmin trimmeripotentiometrillä R13 säädetään näytön kontrasti sopivaksi. Koska LCD-näyttöä ohjataan 4-bittisellä väylällä (D4…D7), on pinnit D0…D3 kytkettävä nollaan, jotta näyttömoduli toimii oikein. PIC-piiri ja LCD-näyttömoduli tarvitsevat stabiloidun + 5V:n käyttöjännitteen. Regulaattoriksi löytyi komponenttilaatikosta LM317LZ max. 100 mA versio. Yhtä hyvin voisi käyttää tyyppiä 78L05, jolloin vastukset R1, R2 ja R3 voidaan jättää pois ja kytkeä regulaattorin GND piirikortin 0 V:iin (GND). Kiteenä on vanhasta väritelevisiosta purettu 4 MHz:n kide, jota löytyy myös yleisesti komponenttikaupoista. Toisessa protossa käytin trimmerikondensaattoria C6:ssa laskimen kalibroimiseksi, mutta 22 pF:n kiintokondensaattoria voi käyttää tilalla ja tehdä kalibroinnin SW:ssa. Mitattava taajuus kytketään 100 ohmin vastuksen R4 ja 22 nF:n kondensaattorin C4 kautta NPN-transistorin Q1 kannalle, joka on esijännitetty vastuksella R12 (33k…150 k) parhaan herkkyyden saavuttamiseksi transistorityypin mukaan . Diodit D1 ja D2 leikkaavat mitattavan signaalin tason +/- 0.6 V:iin suojaten transistorin Q1. Rakentamani laskinyksilön ylärajataajuus oli melkein 36 MHz huoneenlämpötilassa signaalitasolla n. 0.2 Vpp. Virrankulutus oli n. 15 mA. Käyttöjännite 8…13.8 V DC.

Huom! Digitaalitulot RB0…RB3 ovat normaalisti tilassa FALSE (0V) 1 kilo-ohmin alasvetovastusten R7…R10 avulla, jos niihin ei ole kytketty esim. ulkopuolista kytkintä. Näin digitaalituloja RB0…RB3 voidaan ohjata +5 voltin jännitteellä 1-napaisella kytkimellä tai releen koskettimella.

Kuva 8. PIC-LCD-taajuuslaskimen komponenttien sijoitus (lcd_countr_comp_layout.bmp)

Kuva 9. Piirilevy juotospuolelta katsottuna. (lcd_countr_pcb_oh6cj.bmp)

 

 

9. Laskimen modifioitu ohjelmisto (SW)

Idea taajuuslaskinohjelman edelleen kehittämisestä tuli Eeron OH5OI, Pekan OH1PP ja Pertin OH1IR taholta, koska he olivat rakentamassa OM3CPH:n taajuuslaskinta 8-bittisellä ohjausväylällä. Display Offset-asetuksia ei voinut muuttaa kuin itse lähdekoodiin ja kääntää MPASM-tiedosto uudestaan heksamuotoon ohjelmointilaitetta varten. Se tuntui hiukan hankalalta. Täytyi olla helpompi keino asettaa Display Offset-parametrit! Löysin seuraavaksi internetistä Peterin LCD_DIG4.asm taajuuslaskin-ohjelman 4-bittisellä LCD-ohjausväylällä. Kokeilin ohjelmaa, mutta näytön ohjaus ei aluksi toiminut oikein. Sähköpostiyhteys Peterin kanssa tuotti hetken päästä tuloksia (myöhemmin meillä oli myös skedi 14.250 MHz:llä). Itse halusin vielä kehittää laskuria. Kun PIC:ssä kerran on käyttäjän EEPROM-datamuisti, niin miksipä ei käytettäisi sitä hyväksi. Kopioin myös ohjelmoitavan taajuuslaskimen ominaisuudet Sub / ADD RF hänen 8-bittisestä koodista lisäten samalla kaksi eri Display Offsettia 1 ja 2. Käytän Peterin ohjelmakoodin Sub / ADD RF-termistä tässä nimitystä Display Offset = näytön offset, joka kuvaa paremmin funktiota eli siitä vähennetään tai siihen summataan mitattu taajuus.

 

9.1 COUNTER MODE

Normaalisti laskin toimii COUNTER MODE:ssa mitaten mittaustuloon kytkettyä taajuutta.

Kun LCD:n ohjausväylä muutetaan 8-bittisestä neljäksi, vapautuu neljä I/O-pinniä RB0…RB3.

Käyttäjää varten on siten ohjelmoitu digitaalituloille RB0…RB3 ja RA2 seuraavan taulukon mukaiset funktiot:

 

 

Taulukko 2. COUNTER MODEn digitaalitulojen funktiot

COUNTER MODE

Input signal

FALSE (0 V)

TRUE (+5 V)

RA2

Sub Display Offset

Add Display Offset

RB0

-

-

RB1

Display Offset1

Display Offset2

RB2

Display Offset 1&2

Direct frequency

RB3

Normal / Sub Display Offset

10-divider *)

*) RB3 tilassa TRUE voidaan desimaalipisteitä siirtää yksi dekadi oikealle. Tätä ominaisuutta tarvitaan, jos taajuuslaskurin eteen kytketään erillinen 10-jakaja mitattavan taajuusalueen laajentamiseksi VHF:lle.

 

9.2 EEPROM MODE

Lisäsin ohjelmaan toisen erillisen toimintamoodin EEPROM MODE, johon päästään vain, jos painike S0 on 1-tilassa (+5V) ja sähköt kytketään PIC:iin. Sen jälkeen painikkeiden S0…S3 ja LCD-näytön avulla voidaan tarpeen mukaan muuttaa taajuuslaskurin käyttäjän asetuksia ja tallettaa ne parametreina EEPROM-muistiin, jossa ne säilyvät sähkökatkojen yli.

Taulukko 3. EEPROM MODEn digitaalitulojen funktiot

EEPROM MODE

Input signal

FALSE (0 V)

TRUE (+5 V)

S0 (RB0)

-

Increase address

S1 (RB1)

-

Increase data value

S2 (RB2)

-

Decrease data value

S3 (RB3)

-

Save to EEPROM

9.3 Muut lisätyt funktiot

- toinen desimaalipiste lisätty 1 kHz:n ja 100 Hz:n dekadien väliin

- jos taajuus näytölle on alle 10 MHz, niin 10 MHz:n dekadin nollaa ei tulosteta (esim. 01.440.00
MHz näytetään 1.440.00 MHz)

- ylimääräisiä viiveitä lisätty LCD:n merkkien lähetysalgorimiin, jotta ohjelmisto toimisi myös

paremmin "ei standardit täyttävillä" LCD-näyttömoduleilla

- laskin toimii suorana taajuuslaskimena oletusarvoilla (katso EEPROM 06h)

- kun laskimeen kytketään ensi kertaa PIC-piirin ohjelmoinnin jälkeen sähköt päälle, talletetaan

oletusarvot automaattisesti EEPROM-muistiin. Tästä indikoi teksti "EE-INIT:00...0F" näytössä

 

9.4 EEPROM-parametrien funktiot

Seuraavassa taulukossa on listattu käyttäjän EEPROM-asetukset. EEPROM-osoite ja data näytetään ja asetetaan aina heksaluku-formaatissa (h). Sen vuoksi Display Offsettia laskettaessa on tehtävä lukumuunnos 10-järjestelmästä 16-järjestelmään. Kuulostaa hankalalta, mutta lukumuunnoksia tarvitsee tehdä vain Display Offsetteja laskettaessa ja laskinhan löytyy esim. kotitietokoneen apuohjelmat-valikosta. Asetukset ovat tyypillisesti kertaluonteisia.

 

Taulukko 4. EEPROM-muistipaikkojen 00h...0Fh funktiot:

Address

Name

Description

Default

00h

Display Offset 1 Highbyte

High Byte Display Offset1 9001.50 kHz = 0DBC36

0Dh

01h

Display Offset 1 Midbyte

Mid Byte Display Offset1

BCh

02h

Display Offset 1 Lowbyte

Low Byte Display Offset1

36h

03h

Display Offset 2 Highbyte

High Byte Display Offset2 8998.50 kHz = 0DBB0A

0Dh

04h

Display Offset 2 Midbyte

Mid Byte Display Offset2

BBh

05h

Display Offset 2 Lowbyte

Low Byte Display Offset2

0Ah

06h

Direct_frequency

Suora taajuuslaskenta ilman sub or add funktioita = 00

Sub or add function activated = 01…FF

00h

07h

EE_Fine1

Kalibrointiarvo 1 (1 == 3*4/fx = 3us)

15h

08h

EE_Fine2

Kalibrointiarvo 2 (1 == 4*4/fx = 4us)

01h

09h

1x16_Display

LCD näyttötyyppi: 00 = 1x16 LCD, 01…FF = 2x20 LCD

01h

0Ah

Digits

Näytettävien numeroiden määrä: 00 = 7 numeroa, 01…FF = 6 numeroa

01h

0Bh

not in use

-

FFh

0Ch

not in use

-

FFh

0Dh

not in use

-

FFh

0Eh

not in use

-

FFh

0Fh

EEPROM default values

Jos > 0 niin default arvot ladataan seuraavassa sähköjen päällekytkennässä.

00h

9.4.1 Display Offset ja kytkin S4 (EEPROM 00h…05h)

Kytkimen S4 avulla voidaan RB1:llä valittu Display Offset 1 tai 2 lukuarvo summata mitattuun taajuuteen tai vähentää mitatusta taajuudesta. Vastaanottimen AM- ja FM-modella välitaajuuteen summataan VFO-taajuus tai välitaajuudesta vähennetään VFO-taajuus. SSB:llä ja CW:llä välitaajuuden asemesta käytetään BFO-taajuutta sillä olettamuksella, että BFO-taajuus on vakio ja tunnettu kyseisellä sivunauhalla.

 

9.4.2 Suora tai ohjelmoitava taajuuslaskenta (EEPROM 06h)

Laskin toimii suorana taajuuslaskimena oletusarvoilla eikä digitaalituloa RB2 ei tarvitse aktivoida. Haluttaessa ohjelmoitavaa moodia muutetaan parametri arvoon 01h.

9.4.3 Laskimen kalibrointi (EEPROM 07h, 08h)

Laskenta-aikaikkuna perustuu PIC-prosessorin käskyjen tunnettuun suoritusaikaan. Yksi kellojakso t[m s] = 4/ fxtal [MHz], kun fxtal on kidetaajuus. Prosessorin käskyt vievät yhdestä kahteen kellojaksoa käskytyypin mukaan. Näistä käskyistä on ohjelmoitu 100 ms:n viiveluuppi, jota voidaan hienosäätää suhteessa 1 m s / 100000 m s EEPROM-parametrien 07h ja 08h kombinaatioilla tai vaihtoehtoisesti vielä tarkemmin muuttamalla kidekytkennän toinen kondensaattori säädettäväksi. Jos laskimen näyttö on alle referenssitaajuuden , mittausaikaikkuna on liian lyhyt. Silloin hienosäätöviivettä on kasvatettava ohjelmistossa (SW) tai kiteen taajuutta laskettava trimmerikondensaattorin avulla. Kalibrointi voidaan tehdä esim. taajuusstandardiasemien mukaan tai mittalähettimen ja toisen kalibroidun laskimen kanssa.

Seuraavasta taulukosta voidaan valita kombinaatio parametreille 07h ja 08h, jotka ovat mukana laskenta-aikaikkunan luupissa:

 

Taulukko 5. Laskenta-aikaikkunan kalibrointiarvot

Laskenta-aikaikkunan hienosäätöviive / m s

07h EE_fine1

1 yksikkö = = 3 m s

08h EE_fine2

1 yksikkö = = 4 m s

60 us

02h

09h

61 us

13h

01h

62 us

12h

02h

63 us

03h

09h

64 us

14h

01h

65 us

13h

02h

66 us

12h

03h

67 us

15h (default)

01h (default)

68 us

14h

02h

69 us

13h

03h

70 us

16h

01h

71 us

15h

02h

72 us

14h

03h

73 us

13h

04h

74 us

16h

02h

 

9.4.4 Näytön valinta (09h)

HD44780 standardin mukaan 1 x 16 merkkinen LCD-näytön ohjauksessa rivinvaihto tehdään kahdeksannen merkin jälkeen, vaikkei itse näytössä olekaan toista riviä. 2 x 20 merkkisessä näytössä tällaista kummallisuutta ei ole. Näyttötyypin valinta:

00h = 1 x 16 LCD

01h = 2 x 20 LCD

 

9.4.5 Näytettävien numeroiden määrä (0Ah)

00h = 7 digittiä, esim. 14.250.51 MHz

01h = 6 digittiä, esim. 14.250.5 MHz

 

9.4.6 Oletusarvojen palautus (0Fh)

Alkuperäiset oletusarvot voidaan palauttaa tallettamalla muistipaikkaan 0Fh erisuuriarvo kuin nolla. Kun seuraavan kerran kytketään sähköt laskimeen, palautuvat oletusdata-arvot (default) EEPROM- muistipaikkoihin 00h…0Fh.

 

9.5 Käyttäjän asetusten muuttaminen

9.5.1 EEPROM MODEn aktivointi

  1. Pidä painonappi S0 pohjassa ja kytke jännite laskurille. Näyttöön ilmestyy teksti: "EEPROM MODE 1.2".
  2. Kun S0 vapautetaan (=FALSE) ja RB1…RB3 ovat myös tilassa FALSE, näyttöön ilmestyy parametrien asetusnäyttö: "ADDR:00 DATA:0D" jossa ADDR merkitsee EEPROM-osoitetta 00…0Fh ja DATA osoitteen muistipaikan data-arvoa.

Kuva 10. PIC-taajuuslaskin EEPROM MODEssa, jossa laskimen käyttäjän asetuksia voidaan muuttaa. (Kuva EEPROM_MODE_view.jpg)

 

9.5.2 Parametrien arvojen muuttaminen

EEPROM-muistipaikkojen osoitteet ja funktiot on selostettu aiemmin (katso taulukko 3).

  1. Muistipaikan osoitetta (00h…0Fh) kasvatetaan painamalla painonappia S0. Maksimiosoitteen 0Fh jälkeen osoitelaskuri pyörähtää taas 00h:aan.
  2. Data-arvoa joko kasvatetaan S1:llä tai vähennetään S2:lla.
  3. Jotta muutos jää pysyväksi, on kyseisen datan arvo talletettava EEPROM-muistiin painamalla painonappia S3 hetkeksi, jolloin onnistuneen talletuksen merkiksi näyttöön ilmestyy teksti "*SAVED*" ja kyseinen muistipaikka luetaan automaattisesti uudelleen muistista näyttöön.
  4. Näin tehdään jokaiselle parametrille, jota halutaan muuttaa. Kun halutut muutokset on ohjelmoitu, poistutaan EEPROM MODEsta kytkemällä laskimesta hetkeksi sähköt pois.

Esimerkki 1:

3.5 MHz / 14 MHz:n vastaanottimen BFO-taajuudeksi mitattiin LSB:llä 9001.49 kHz ja USB:llä 8998.5 kHz. Esimerkissä kytkimellä S4 Sub/Add Display Offset- funktiota voidaan käyttää vastaanottimissa, joissa molemmat sekoitustulokset käytetään hyväksi.

Taulukko 6, Display Offset esimerkki 1

 

Esim.1 SSB vastaanotin 9 MHz:n välitaajuudella.

BFO-taajuus

9001.49 kHz = 0DBC3516

8998.5 kHz = 0DBC3516

Asetettu VFO-taajuus (esim.)

5251.49 kHz

5251.49 kHz

Display Offset

=BFO-taajuus LSB

=BFO-taajuus USB

Display Offset 1 HighByte

0D16

 

Display Offset 1 MidByte

BB16

 

Display Offset 1 LowByte

0516

 

Display Offset 2 HighByte

 

0D16

Display Offset 2 MidByte

 

BB16

Display Offset 2 LowByte

 

0A16

RB1 = Display Offset valinta

FALSE (0 V) = Display Offset 1

TRUE (0 V) = Display Offset 2

S4

FALSE (0V) = Sub Display Offset

TRUE (+5V) = Add Display Offset

Näytön lukema:

3.750.00 MHz

14.249.99 MHz

 

 

Esimerkki 2:

Laskin kytketään BC-vastaanottimeen, jonka välitaajuus on 455 kHz. Vastaanottimen VFO-taajuus on aina välitaajuuden verran ylempänä vastaanottotaajuutta.

Taulukko 7, Display Offset esimerkki 2

 

Esim.3 BC-vastaanotin 455 kHz:n välitaajuudella.

Vastaanottimen välitaajuus

455 kHz

Asetettu VFO-taajuus (esim.)

1885.00 MHz

Display Offset

= välitaajuus

Display Offset 1 HighByte

0016

Display Offset 1 MidByte

B116

Display Offset 1 LowByte

BC16

RB1 = Display Offset valinta

FALSE (0 V) = Display Offset 1

S4 = +5 V, näytön lukema:

1440.00 MHz

10. Laskimen rakentaminen

Varoitus! PIC-piiri ja LCD-näyttömoduli saattavat vaurioitua staattisesta sähköstä! Käsittele niitä kuin CMOS-piirejä.

Piirilevyn kuparifoliovedot ovat aika yksinkertaisia, joten väritin kuparifoliokohdat Decon Dalo-tussikynällä ja seuraavaksi onkin vuorossa piirilevyn syövytys ferrikloridissa.

Kun piirilevy on syövytetty, porataan reiät komponenttien läpivienneille ja LCD-näyttömodulin kiinnittämiseen. Seuraavaksi juotetaan piirilevylle yhdistykset eristetyillä kytkentälangoilla (osasijoittelukuvassa viivat päätettyinä neliön muotoisella pisteellä):

  1. Vastuksen R11 (3k3) vierestä PICin nastaan 1.
  2. Kuristimen +5 V:n syötön päästä PICin nastaan 2
  3. Painonappien yhdistykset digitaalituloihin A-A, B-B, C-C ja D-D.
  4. Ground (GND) yhdistys PICin pinniin 5
  5. +5V:n jänniteregulaattorin U1 lähdöstä Out PIC:n pinniin 15 (sijaitsee 22 pF vieressä).

Seuraavaksi juotetaan U2:n mikropiirikanta, painikkeet, vastukset lukuunottamatta R7…R10, kondensaattorit ja lopuksi XT1, D1, D2, U1 ja Q1. Muista C1:n oikea napaisuus! PIC-piiriä ei vielä asenneta kantaan.

Kuva 11. Komponenttien asennusohjeita. (component installation.eps)

Juota kaapeli mittaussisääntuloon (Frequency Input) ja johdot syöttöjännitteelle.

Käytin itse osasijoittelukuvasta poiketen osittain pintaliitoskomponentteja toisen protolaitteen rakentelussa.

11. Laskimen käyttöönotto

Kun edellisen vaiheen komponentit ja yhdistyslangat on juotettu, testataan piirikortin elektroniikka ensin ilman LCD-näyttömodulia ja PIC-piiriä.

11.1 Mittaukset jännitteettömänä

  1. Mittaa yleismittarin ohmialueella U1:n nastaan In ja piirilevyn GND. Resistanssiarvo ei saa näyttää oikosulkua.
  2. Mittaa samalla tavalla U1:n lähtöpinnin Out ja GND väliltä resistanssi. Resistanssiarvo ei saa näyttää oikosulkua.

11.2 Ensimittaukset jännite kytkettynä

  1. Kytke jännite piirilevyn tuloliittimiin. Muista oikea napaisuus.
  2. Mittaa tasajännite regulaattorin lähdön Out ja GND väliltä . Sen tulee olla välillä 4.9…5.1 V. Jos jännitetaso on jotain muuta, vika löytyy todennäköisesti R1…R3 arvoista tai regulaattorin väärästä kytkennästä piirilevylle.
  3. Mittaa +5 V:n jännitejakelu PIC:n pinniin 4 ja 14 mitattuna PICin pinniä 5 vasten.
  4. Mittaa myös piirikortin LCD-modulin syöttöpinneistä +5 V väliltä 2 (+) ja 1 (GND)

11.3 Loppuasennus ja testaus

  1. Kytke sähköt pois.
  2. Asenna vastukset R7…R10 pystyasentoon osasijoittelukuvan mukaan ja juota piirilevylle. Katkaise vain sisempänä olevien vastuksien ylimääräiset johtimet. Käytä jäljelle jäänyttä yhdistyslankana LCD-modulille kuvan mukaan.
  3. Asenna piirikortit toisiinsa ja juota huolellisesti kaikki yhdistyslangat (14 kpl) käyttäen eristepäällysteistä johdinta LCD-näyttömodulin ja piirikortin välille.
  4. Asenna ohjelmoitu PIC-piiri kantaansa oikein päin (katso osasijoittelukuva).
  5. Kytke sähköt laskimeen.
  6. Aseta R13 avulla näytön kontrasti sopivaksi
  7. Jos kaikki meni oikein vastoin Mr. Murphyn lakia, laskimen tulisi nyt toimia. Kytke mitattava signaali mittaustuloon. Laskin näyttää mitattavaa taajuutta.
  8. Kalibroi laskin kappaleen Laskimen kalibrointi (EEPROM 07h, 08h) mukaan.
  9. Tee ohjelmiston parametriasetukset tarpeen mukaan.

 

12. Laskimen tuottamat häiriöt

Laskimen näytön ohjaus saattaa häiritä vastaanotinta, joten se on hyvä asentaa metallikoteloon. Myös 4 MHz:n kiteen perus- ja kerrannaistaajuudet voivat kuulua radiosta kyseisiä taajuuksia kuunneltaessa.

13. Mistä ohjelman saa?

Ohjelmiston heksakoodi LCD4DIEC.HEX tarvitaan PIC-piirin ohjelmointiin. Piirilevyn kuva sekä lähdekoodi LCD4DIEC .ASM on myös saatavissa bittinikkareille OH2HOH:n sivuilta osoitteessa (http://personal.inet.fi/cool/qrp) tai OM3CPH:n kotisivuilta 3). Lähdekoodi perustuu OM3CPH sovellukseen ja sitä ei saa käyttää kaupallisiin tarkoituksiin. Harrastajille se on ilmainen. Peterin sanoilla sanoen: "This software is free for private usage. It was created for Ham Radio community members. Commercial exploatation is allowed only with permission of authors".

Tälle laskuriohjelmistolle en anna mitään takuuta toiminnasta. Rakentamani kaksi laskinta toimivat kuitenkin minua tyydyttävällä tavalla. Laskin on rakenteeltaan yksinkertainen ja edullinen 30 MHz:n perustaajuuslaskin, jonka rakennuskustannukset jäävät halvimmillaan alle 100 mk:n hintaan.

14. Jatkokehitysideoita ja puutteet

14.1 Kehitysideat

Yleisesti saatavilla oleva esijakajan (10-jakaja) kytkentä kolmanneksi piirikortiksi varustettuna suuri-impedanssisella tulopiirillä. Usein on myös tarve mitata UHF-taajuuksia ainakin 70 cm:n alueelle asti, jolloin kymmenjakajalla ei pelkästään selvitä.

VFO:n taajuuslukitus. Mitattu taajuus asetetaan taajuusohjeeksi. Ohjelmaan lisätään vähennyslaskutoimitus: taajuusohje - mitattu taajuus. Jos vähennyslaskun tulos on negatiivinen, ohjataan yksi PIC:n digitaalilähtö nollaan. Jos tulos on positiivinen, ohjataan em. lähtö +5 V:iin. Lähtö kytketään lataamaan tai purkamaan ulkoisen integraattorin kondensaattoria. Operaatiovahvistimella toteutetun integraattorin lähtö syöttää hitaalla aikavakiolla jännitettä kapasitanssidiodiin, joka on kytkettynä VFO:n oskillaattoripiiriin. Näin taajuus pyritään pitämään vakiona. Tämä on hiukan modifioitu ratkaisu Olavi Lehden OH2BBR artikkelista Elektroniikka lehden numerosta 16/1980: Digitaalinen oskillaattorin taajuusvakavointi. 12)

14.2 Puutteita

Puutteena on vielä CW-lähetyksessä erillisen TX-offsetin puuttuminen. Sen indikointiin voidaan käyttää kyllä esim. Display Offset 2:sta, jos se ei ole muussa käytössä.

Suuri-impedanssista mittaustulovahvistinta tarvitaan heikkoja signaaleja mitattaessa.

15. PIC-LCD-taajuuslaskimen osaluettelo

R1 220R ¼ W

R2 680R ¼ W

R3 10k ¼ W

R4 100R ¼ W

R5, R6 470 R ¼ W

R7,R8,R9,R10 1 k ¼ W

R11 3k3 ¼ W

R12 33 k…150 k ¼ W (47k käytetty transistorin 2N3904 kanssa)

R13 10k…22k trimmeripotentiometri vaaka-asennettava

C1 22 m F / 25 V tantaali

C2, C3, C7 100 nF keraaminen / 25 V

C4 22 nF keraaminen / 25 V

C5 22 pF keraaminen

C6 22 pF keraaminen tai 4…20 pF trimmerikondensaattori

D1, D2 1N4148

L1 10 m H miniatyyrikuristin (1/4 W:n vastuksen näköinen)

S0,S1,S2,S3 Painonappi piirilevylle, 1 x sulkeutuva, 6 x 6 mm

Q1 Transistori UHF-NPN tyyppi esim. 2N3904

XT1 4.000 MHz rinnakkaisresonanssikide

U1 LM317LZ jänniteregulaattori max. 100 mA (tai 78L05, katso modifiointiteksti)

U2 PIC 16F84-04/P + mikropiirikanta 18 nap. 3)

U3 LCD-näyttömoduli 1 x 16 merkkiä HD44780 yhteensopiva 3)

1 kpl Laskimen 1-puolinen piirilevy n. 80 mm x 40 mm

 

 

16. Lähteet

1) OM3CPH kotisivut: http://www.qsl.net/om3cph

2) Radioamatööri 12/81 Unto Kokkarinen OH3UK: Digitaalinen taajuusnäyttö Drake

R4B:hen s. 380, CQ-DL 6/80 s. 275-276

3) LCD Tietoa Probyte Oy: http://www.sci.fi/~pri/

4) "FREQ-Mite" taajuuslaskin. http://smallwonderlabs.com/

5) E & A 1/1982 Olavi Lehti: Esijakajalla ylempiin taajuksiin

6) E & A 14/1984 Olavi Lehti: Nyt rakennetaan Etuvahvistin taajuuslaskimeen

7) Heikki E. Heinonen OH3RU: Tiimissä hamssiksi, sivu 178

8) SRAL R.Y.: Radioamatööritekniikkaa, sivu 121.

9) JF1OZL kotisivuut: http://www.intio.or.jp/jf10zl/

10) http://www.microchip.com
11) Smallwonder Labs K1 CW transceiver
http://www.elecraft.com

12) Elektroniikka 16/1980 s. 23-24, Olavi Lehti: Digitaalinen oskillaattorin taajuusvakavointi