Dit Instructable beschrijft de bouw en werking van een zelfstandige frequentie synthesizer geschikt voor gebruik als een signaalgenerator, of voor gebruik als de lokale oscillator in een amateur band zender of ontvanger.
Mijn prototype was gebouwd op een stuk "Vero" bestuur. De ATmega328P moet worden socketed als u ervoor kiest om uw eigen "Vero" board Arduino. De broncode van de Arduino is goed geannoteerde en bevat koppelingen naar alle van de vereiste "libraries". Bouw is niet kritisch.
Het hart van deze frequentie synthesizer is de "Adafruit Si5351A klok Generator Breakout Board" die maximaal drie uitgangen in het frequentiebereik van 8KHz tot 160MHz genereren kunnen. De Si5351 breakout board is ontworpen om afspoeling van 5 volt en heeft een interface die maakt het gemakkelijk om het verbinden van een Arduino I2C. Alles wat u nodig hebt is een Arduino, een roterende encoder, een 16 x 2 lijn I2C LCD karakterdisplay en sommige software. Het uitvoerniveau van deze synthesizer is ongeveer 3 volt piek-tot-piek.
De tweede belangrijkste component is het roterende encoder die het volgende two-bit "Grijze" code patroon uitgangen:
.
11 (streepje - CCW)
10
00
01
11 (streepje - verwijzing)
10
00
01
11 (streepje - CW)
.
Het coderingsprogramma ligt altijd aan een streepje (patroon 11) wanneer de knop tuning stilstaat. Als de tuning knop staat CCW (counter clock-wise) dan is de volgorde van de patroon tussen streepje 01 00, 10, 11. Indien echter de tuning knop CW (Clockwise) dan de volgorde van de patroon tussen streepje staat is 10 00, 01, 11. Deze omkering patroon laat ons toe om de tuning richting bepalen. De nieuwe frequentie wordt bepaald door het aantal "streepje" te vermenigvuldigen door het afstemmen van de stap-grootte en toe te voegen/aftrekken van deze verschuiving naar/vanuit de huidige frequentie.
De roterende encoder komt uitgerust met een eenpolige push-schakelaar die ik gebruik om de tuning stap-grootte in stappen van 10, 100, 1000, 10000 en 100000 Hz. Een korte druk op de knop tuning neemt de tuning stap-grootte. Een langere duw op de tuning-knop zorgt ervoor dat de stap-grootte te verminderen.
Alle mechanische schakelaars lijden contact bounce waardoor grillige af te stemmen. In plaats van "debouncing" elke switch met hardware ben ik met behulp van een software-integrator.
Een schakelaar van de band-change SPST is opgenomen. Wanneer de schakelaar is geactiveerd kan elk van de amateur radiobanden doorlopen door het draaien van de tuning-knop. De tuning knop normaal gedraagt zich als de schakelaar wordt gedeactiveerd.
De ATmega328P microcontroller programmeren is relatief eenvoudig. Installeer eerst de "bibliotheken" beschreven in "source_code.txt". Plak de inhoud van "source_code.txt" in een nieuwe arduino schets en sla het op als "signal_generator.ino". Klik op "bestand/uploaden" en alle gaat goed, "_generator.ino signaal" zal compileren en vervolgens uploaden naar uw Arduino R3 UNO. Zodra het bestand is geüpload, koppel de ATmega328P microcontroller van uw Arduino R3 UNO en plaatst u deze in uw "Vero" bestuur-aansluiting. Toepassing van 9 volt en alles moet oplichten.
Belangrijk: Hoewel de breakout board van 5 volt loopt, de Si5351-chip zelf loopt uit 3.3 volt. Dit betekent dat de maximale spanning van elke uitgang 3.3 volt. Een buffer is daarom vereist wanneer interfacing naar 5 volt logische circuits.