Ondeggiatore: Difference between revisions

From ciapini
Jump to navigation Jump to search
No edit summary
No edit summary
Line 2: Line 2:
''VFO & controller per ricevitori a conversione diretta (e non)''
''VFO & controller per ricevitori a conversione diretta (e non)''


== DDS ==
== Device supportati ==


pro:
* AD9834 http://www.analog.com/en/digital-to-analog-converters/direct-digital-synthesis-dds/ad9834/products/product.html
* agile
* AD9850


contro:
=== SI570 ===
*spurie


AD9834 http://www.analog.com/en/digital-to-analog-converters/direct-digital-synthesis-dds/ad9834/products/product.html
Si570 CAC000141DG http://www.silabs.com/Support%20Documents/TechnicalDocs/si570.pdf
 
Fout = (fXTAL * RFREQ)/(HSDIV * N1)
* http://g4oep.atspace.com/si570vfo/570VFO.htm
* http://www.cliftonlaboratories.com/si570_kit_from_k5bcq.htm


=== Filtro di ricostruzione ===
=== Filtro di ricostruzione ===
Line 23: Line 26:


* ad9951 http://www.m0rjd.co.uk/LO.html
* ad9951 http://www.m0rjd.co.uk/LO.html
=== oscillatore ===
quel DDS non ha PLL, ergo bisogna trovare un oscillatore >= 75 mhz
http://global.kyocera.com/prdct/electro/pdf/clock/kc7050a_c3_e.pdf e' ok
== Si570 ==
Si570 CAC000141DG http://www.silabs.com/Support%20Documents/TechnicalDocs/si570.pdf
Fout = (fXTAL * RFREQ)/(HSDIV * N1)
* http://g4oep.atspace.com/si570vfo/570VFO.htm
* http://www.cliftonlaboratories.com/si570_kit_from_k5bcq.htm


== uC ==
== uC ==

Revision as of 18:53, 30 August 2016

VFO & controller per ricevitori a conversione diretta (e non)

Device supportati

SI570

Si570 CAC000141DG http://www.silabs.com/Support%20Documents/TechnicalDocs/si570.pdf

Fout = (fXTAL * RFREQ)/(HSDIV * N1)

Filtro di ricostruzione

l'uscita del DDS va fatta passare per un 'filtro di ricostruzione', che tagli via per quanto possibile le spurie e le armoniche di campionamento del DAC

si puo copiare da questo: http://www.pongrance.com/super-dds.html che pero ha un clock di 80mhz (cambia poco)

o questo http://www.elecraft.com/manual/KX1_Owner%27s_Manual_Rev_E.pdf, che e' tagliato un po piu basso

http://www.analog.com/static/imported-files/application_notes/351016224AN_837.pdf

uC

  • riceve l'input dai tasti (6 pin) o dall'encoder (4 + 2)
  • riceve l'input da eventuale PTT (shift) (1 pin)
  • riceve l'input da eventuale Carrier Detect (per lo scan) (1 pin)
  • controlla il LCD (SPI)
  • controlla il DDS (SPI) / Oscillatore (I2C)
  • controlla la Rset del DDS (1 pin)
  • controlla il banco filtri (4 pin)
  • controlla la backlight (1 pin)
  • si interfaccia con la memoria EEPROM (SPI)

24 pin totali di I/O

  • DDS, lcd e memoria esterna possono convivere sul modulo SPI

Mappa pin

Pin Funzione Nome porta sul uC I/O
1 MCLR/RA5
2 LCD_CS RA0 O
3 LCD_RS RA1 O
4 U2TX/PGED1 RB0/PGED1/U2TX O
5 U2RX/PGEC1 RB1/PGEC1/U2RX I
6 SDA2 RB2/U1RX/SDA2 I
7 SCL2 RB3/SCL2 I
8 VSS
9 GPIO_1/CD_IN RA2 O
10 GPIO_2/PTT_IN RA3 O
11 GPIO_3 RB4 O
12 GPIO_4 RA4 O
13 VDD
14 BACKLIGHT RB5 I
15 QE_UD_CHANNEL_A RB6 I
16 QE_UD_CHANNEL_B RB7/U1TX O
17 ENTER_SW RB8/SCL1 I
18 EXIT_SW RB9/SDA1 I
19 QE_LR_CHANNEL_A RA7 I
20 QE_LR_CHANNEL_B RA6 I
21 SDI RB10/SDI1 I
22 SCK RB11/SCK1 O
23 RSET RB12/DAC1OUT O
24 SDO RB13/SDO1 O
25 EEPROM_CS RB14 O
26 DDS_CS RB15 O
27 AVSS
28 AVDD

tasti

io sarei per una cosa stile nokia:

enter+exit

up+down

left+right (che potrebbe essere un encoder rotativo)

display

16x2 HD44780

oppure SPI

un fet IRLML2502 controlla l'accensione della backlight

memoria esterna

Connettori

Controllo

Pin Funzione Nome
1 FILTER_1
2 FILTER_2
3 FILTER_3
4 FILTER_4
5 CD
6 PTT

UART

Pin Funzione Nome
1 Massa GND
2 Uart tx TX
3 Uart rx RX

Firmware

Features

  • canali con nome alfanumerico su memoria esterna
  • bande con nome alfanumerico su memoria esterna
  • step (1,10,100,500,1000,1250,2500,5000,9000,10000,50000,100000,1000000) (4 byte) o semplicemente potenze di 10 ? su eeprom interna
  • frequenza 0 - 30 MHz su eeprom interna (4 byte)
  • shift TX/RX (+- 0 - 30 MHz) su eeprom interna (4 byte)
  • IF (+- 0 - 30 MHz) su eeprom interna (4 byte)
    • additiva: il display mostra la frequenza dell'IF + la frequenza del VFO
    • sottrattiva: il display mostra la frequenza dell'IF - la frequenza del VFO
  • scan (volatile)
    • dentro banda
    • dei canali
  • filtri su eeprom interna
    • numero (1 byte)
    • fmin (4 byte)
    • fmax (4 byte)
  • phase register su eeprom interna
  • frequency register su eeprom interna
  • DDS clock


la memoria viene divisa in blocchi da 32byte

ogni nuovo canale/banda viene memorizzato nel primo blocco/canale flaggato come non attivo

quando si naviga tra i canali/bande, vengono letti i blocchi in ordine finche non si trova il successivo canale/banda

Flag

00 non attivo
01 canale
10 gruppo
11 banda

Canale

16-31 12-15 1 0
channel_name frequency group_id flag

Gruppo

16-31 1 0
group_name group_id flag

Banda

16-31 12-15 8-11 4-7 0
band_name band_step frequency_min frequency_max flag

interfaccia

  1. root
    1. menu rancio
    2. navigazione
      1. frequenza
      2. step/canale
      3. scan
      4. store frequenza corrente
        1. nome canale
        2. gruppo canale
      5. banda frequenze
      6. gruppo canali
  • frequenza: 10 caratteri (mm.kkk.hhh)
  • nome canale: 16 caratteri
  • scan flag: 1 carattere (S/M) (scan, manual)
  • tx flag: 1 carattere (T/R)
  • mode flag: 1 carattere (F/C/G/B) (frequency, channel, group, band)