Zobrazují se příspěvky se štítkemarduino. Zobrazit všechny příspěvky
Zobrazují se příspěvky se štítkemarduino. Zobrazit všechny příspěvky

16. září 2018

PLL ADF4351 jako LO

Na eBay nebo Aliexpress je možné koupit velmi levné vývojové desky s PLL od Analog Devices ADF4351. Tento obvod funguje od 35 MHz do 4.4 GHz. Krok je 10 kHz. Deska má 2 výstupy. Maximální výstupní výkon je +5dBm. V základu je deska osazena oscilátorem 25 MHz. Je možné připojit extrerní oscilátor (na desce je třaba odpájet R5 a tím odpojit interní). Toto je vhodné třeba na připojení 10MHz normálu s GPS. Tímto modulem  můžeme velmi lehce realizovat LO pro MW transvertory nebo osobní maják pro testy zařízení. Případně signální generátor pro různá měření.  Navrhl jsem velmi jednoduchou destičku která se přímo nasadí na modul. Obsahuje MCU ATTiny13. Výsledný zdrojový kód je možné zkompilovat pomocí Arduino IDE za pomoci https://github.com/MCUdude/MicroCore a programátoru ISP. Do programu je nutné zadat hodnoty regisrů pro nastavení PLL.  Hodnoty registrů získáme z datasheetu a nebo jednodušeji z SW který je k dispozici na stánkách Analog Devices.


Nastavení registrů v SW.
Zdrojové ḱódy  je možné stáhnout z https://github.com/ok1cdj/ADF4351-basic-LO a stavebnici desky je možné zakoupit na hamshop.cz

23. dubna 2014

ARDUINO UNO DDS Shield verze 1.1

Před pár měsící jsem zde popsal DDS shield pro Arduino UNO. Teď je k dispozici nová verze, která přináší několik vylepšení. By přidán jumper JP2 pro uvolnění externího přerušení. Na tento problém, jsem narazil při vývoji SW pro WSPR maják, kde externí přerušení potřebuji. Dále byla přidána možnost možnost volby napájení jumperem, nyní lze napájet výstupní zesilovač přímo z pinu VIN Ardunina.



Schéma zapojení


Plošný spoj

Stavebnici je možné zakoupit na Hamshop.cz.

1. dubna 2014

Paperduino Tiny

Paperduino Tiny je velmi levná a snadno postavitelná Arduino kompatibilní deska s USB.

Paperduino Tiny nepoužívá plošný spoj, ale je celé postavené na tvrdém papíře. Místo plošného spoje si vytisknete šablonu a tu nalepíte na tvrdší papír a můžete stavět.

Kompletní návod, jak na to, najdete na paperduino.eu.

12. ledna 2014

ARDUINO UNO DDS Shield

Momentálně se dají koupit levné osazené DDS moduly s AD9850. Tak vznikl tento Shield s DDS pro Arduino UNO.  Kromě prostoru pro DDS modul je zde také oddělovací zesilovač, který je schopný dát podle kmitočtu 2-3 Vpp do 50 Ohm zátěže. Dále je zde dělička s 74AC74 plánovaná pro IQ výstup pro SDR (plánuji další desku  s jednoduchým SDR podobným Softrocku). Shield jde přímo nasadit na Arduino UNO. Je možné ho použít jako signální generátor, VFO nebo třeba jako QRSS nebo WSPR maják. Tento DDS Shield je také kompatibilní s projektem OCCAM od M0XPD, který vyšel v minulém SPRATu.

Osazení je jednoduché. Nejdříve je třeba začít s SMD součástkami na spodní straně desky. Pak je třeba osadit všechny konektory a nakonec zapájet DDS modul. Pro DDS modul není možné použít konektory a je třeba ho zapájet co nejníže nad plošný spoj. Jinak ztratíme možnost přidávat nad desku další moduly (shieldy).

Schéma zapojení
Plošný spoj
Pohled na spodní stranu plošného spoje
Seznam součástek:


SoučástkaHodnota
C1100nF
C2100nF
C3100nF
C4100nF
IC174AC74D
M1DDS Module
OUTBNC konektor
Q12n2222
Q22n2222
R11k
R2100
R31k
R4470

Zde je ukázkový kód, který zinicializuje DDS modul a začne generovat 10 MHz. Další programy budou v budoucnu následovat. Je možné jich získat spoustu také na internetu.

Ukázkový kód pro Arduino:
/* 
 * A simple single freq AD9850 Arduino test script
 * Original AD9851 DDS sketch by Andrew Smallbone at www.rocketnumbernine.com
 * Modified for testing the inexpensive AD9850 DDS modules
 * 9850 datasheet at http://www.analog.com/static/imported-files/data_sheets/AD9850.pdf
 * Use freely
 */

#define W_CLK 2 // Pin 2 - connect to AD9850 module word load clock pin (CLK)
#define FQ_UD 3 // Pin 3 - connect to freq update pin (FQ)
#define DATA 4  // Pin 4 - connect to serial data load pin (DATA)
#define RESET 5 // Pin 5 - connect to reset pin (RST).

#define pulseHigh(pin) {digitalWrite(pin, HIGH); digitalWrite(pin, LOW); }

// transfers a byte, a bit at a time, LSB first to the 9850 via serial DATA line
void tfr_byte(byte data)
{
  for (int i=0; i<8; i++, data>>=1) {
    digitalWrite(DATA, data & 0x01);
    pulseHigh(W_CLK);   //after each bit sent, CLK is pulsed high
  }
}

// frequency calc from datasheet page 8 = <sys clock> * <frequency tuning //word>/2^32
void sendFrequency(double frequency) {
  int32_t freq = frequency * 4294967295/125000000;  // note 125 MHz clock on 9850
  for (int b=0; b<4; b++, freq>>=8) {
    tfr_byte(freq & 0xFF);
  }
  tfr_byte(0x000);   // Final control byte, all 0 for 9850 chip
  pulseHigh(FQ_UD);  // Done!  Should see output
}

void setup() {
  // configure arduino data pins for output
  pinMode(FQ_UD, OUTPUT);
  pinMode(W_CLK, OUTPUT);
  pinMode(DATA, OUTPUT);
  pinMode(RESET, OUTPUT);

  pulseHigh(RESET);
  pulseHigh(W_CLK);
  pulseHigh(FQ_UD);  // this pulse enables serial mode - Datasheet page 12 figure //10
}

void loop() {
  sendFrequency(10.e6);  // freq 10.00000 MHz
  while(1);
}

Stavebnici je možné zakoupit na Hamshop.cz.

11. listopadu 2012

K3NG arduino open source cw keyer

S Danem OK1HRA jsme vytvořili další stavebnici postavenou na firmware Anthonyho K3NG. Klíčovou vlastností toho klíče je podpora K1EL WinKey, bez nutnosti instalovat ovladače pro Linux nebo Windows.

Seznam funkcí:
  • CW rychlost nastavitelná od 1 do 999 WPM 
  • Programování a propojení přes USB port ("command line interface") 
  • PS2 klávesnice - rozhraní pro provoz CW z klávesnice bez počítače 
  • PTT výstup s nastavitelnou dobou odpadu 
  •  Paměti s makry 
  • Sériová čísla 
  • Potenciometr pro nastavení rychlost​i 
  • QRSS a HSCW Beacon/Fox režim 
  • Iambic A a B klíčování 
  • Možnost reverzního pádla 
  • Hellschreiber režim 
  • Nastavitelná frekvence příposlechu 
  • Příkazový režim - pro použití pádla ke změně nastavení, programové paměti, atd. 
  • Nastavení Dah-Dit Ratio Weighting 
  • Výukový režim 
  • Emulace protokolu K1EL WinKey 1.0 a 2.0 
  • "Dead Operator Watchdog” 
  • Autospace 
  • Nastavení Wordspace
  • Modulární konstrukce umožňuje výběr funkcí kódu a snadné modifikace 
  • Rozměry 80x40x80mm (ŠxVxH) 
  • Hmotnost 150g (205g včetně baterií)
Klíč je dodáván ve formě stavebnice, integrované obvody jsou již na desce zapájené a v MCU je naprogramován zavaděč pro Arduino. Součástí stavebnice jsou i všechny mechanické komponenty včetně krabičky s laserovanými čely a samolepkami. Stavebnice vyžaduje zkušenosti se součástkami SMD.


Jednotlivé funkce jsou popsané přímo v kódu firmwaru, nebo na stránkách autora. Kompilací podle vlastních preferencí je možné získat zařízení šité na míru konkrétnímu použití. Manuál ke stavbě je ke stažení zde. Více fotek najdete na facebooku. Stavebnici je možné zakoupit na hamshop.cz.

6. září 2012

Ovládání rotátoru

Anthony K3NG napsal  open source kód pro ovládání rotátoru pro Arduino. S Danem OK1HRA jsme udělali plošný spoj, zatím jen pro azimut (časem snad přibude i deska s elevací). Rozhraní umožňuje softwarově přes usb, nebo přímo pomocí tlačítek ovládat libovolný stejnosměrný motor s napěťovým snímačem (potenciometr) nebo komerční rotátory např. YAESU. Zdrojový kód je otevřený a uživatel si ho může pokud chce libovolně modifikovat (např. jiné snímání polohy, změna textů). Kompletní manuál naleznete zde.

 
Hotový výrobek, stavebnice a další komponenty jsou k dostání na hamshop.cz.