SincroSauro: Difference between revisions

From ciapini
Jump to navigation Jump to search
m (Cesco moved page MicroDCRX to SincroSauro)
No edit summary
Line 142: Line 142:
* LM4667 http://www.ti.com/product/lm4667
* LM4667 http://www.ti.com/product/lm4667
* SSM2305 http://www.analog.com/en/audiovideo-products/audio-amplifiers/ssm2305/products/product.html
* SSM2305 http://www.analog.com/en/audiovideo-products/audio-amplifiers/ssm2305/products/product.html
=== Scheda digitale ===
==== DDS ====
AD9834 http://www.analog.com/en/digital-to-analog-converters/direct-digital-synthesis-dds/ad9834/products/product.html
===== 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
* 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
==== uC ====
* PIC24F16KM202 http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en560805
* 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)
* 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 =====
{|style="color:green; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
!Pin
!Funzione
!Nome
!porta sul uC
!I/O
|-
|1|| ||||MCLR/RA5||
|-
|2|| ||LCD_CS||RA0||O
|-
|3|| ||LCD_RS||RA1||O
|-
|4|| ||BACKLIGHT||RB0/PGED1||O
|-
|5|| ||CD_IN||RB1/PGEC1||I
|-
|6|| ||U1RX||RB2 o U1RX||I
|-
|7|| ||PTT_IN||RB3||I
|-
|8|| || ||VSS||
|-
|9|| ||FILTER_1||RA2||O
|-
|10|| ||FILTER_2||RA3||O
|-
|11|| ||FILTER_3||RB4||O
|-
|12|| ||FILTER_4||RA4||O
|-
|13|| || ||VDD||
|-
|14|| ||QE_UD_CHANNEL_A||RB5||I
|-
|15|| ||QE_UD_CHANNEL_B||RB6||I
|-
|16|| ||U1TX||RB7 o U1TX||O
|-
|17|| ||ENTER_SW||RB8||I
|-
|18|| ||EXIT_SW||RB9||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
* LCD a caratteri da 3.3v
** 16x2 http://www.newhavendisplay.com/nhd0216hzfswfbw33v3c-p-5169.html
** 16x2 http://www.ebay.com/itm/1602-3-3V-16x2-character-LCD-Display-Module-with-Yellow-Green-Display-Backlight-/190888625064
oppure SPI
** http://www.buy-display.com/default/serial-16x2-cog-character-lcd-display-module-1.html
un fet IRLML2502 controlla l'accensione della backlight
==== memoria esterna ====
* EEPROM 256 kbit 25LC256 o 25LC512
** http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1824&appnote=en527719
** http://www.microchip.com/wwwproducts/Devices.aspx?dDocName=en530925
==== Connettori ====
===== Controllo =====
{|style="color:green; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
!Pin
!Funzione
!Nome
|-
|1|| ||FILTER_1
|-
|2|| ||FILTER_2
|-
|3|| ||FILTER_3
|-
|4|| ||FILTER_4
|-
|5|| ||CD
|-
|6|| ||PTT
|}
===== UART =====
{|style="color:green; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
!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
{|style="color:orange; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
|00||non attivo
|-
|01||canale
|-
|10||gruppo
|-
|11||banda
|}
Canale
{|style="color:blue; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
|16-31||12-15||1||0
|-
|channel_name||frequency||group_id||flag
|}
Gruppo
{|style="color:gray; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
|16-31||1||0
|-
|group_name||group_id||flag
|}
Banda
{|style="color:green; background-color:#ffffdd;" cellpadding="10" cellspacing="0" border="1"
|16-31||12-15||8-11||4-7||0
|-
|band_name||band_step||frequency_min||frequency_max||flag
|}
=== interfaccia ===
# root
## menu rancio
## navigazione
### frequenza
### step/canale
### scan
### store frequenza corrente
#### nome canale
#### gruppo canale
### banda frequenze
### 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'')

Revision as of 12:15, 4 December 2013

un ricevitore HF cosi piccolo da poterlo custodire comodamente tra le fauci

  • piccolo
  • economico
  • a basso consumo (<100ma)
  • a bassa tensione (3.3v)

Sezioni

Scheda analogica

Filtro di ingresso

set di filtri passa basso LC commutabili dimensionati per reggere in futuro un piccolo trasmettitore (<5W)

i sistemi di switch praticabili sono:

letture:

Miscelatore

Gilbert-cell

Una cella di gilbert implementata con un array di bipolari: regge piu di un mosfet dual-gate e consuma meno di un ring di diodi

HFA3101 http://www.intersil.com/en/products/amplifiers-and-buffers/transistor-arrays/transistor-arrays---gilbert-cell-uhf/HFA3101.html

DGMOS

http://sm0vpo.com/blocks/mixers-1.htm

ma sembrano introvabili a 3.3

Commutativo

http://www.oe1ira.at/sl/mix.html

http://g4oep.atspace.com/mixers/notes_on_the_basic_operation_of_.htm

http://www.m0rjd.co.uk/bus-switches.html occhio al bias


Switch integrati
Bilanciati
  1. http://www.sm0vpo.com/_visitors/blocks/cmos-mix.htm non si capisce come possa funzionare
  2. http://home.snafu.de/graff/sbt40.pdf rf splittata a condensatori, LO split a porte logiche
  3. http://yu1lm.qrpradio.com/HF%20SDR%20RECEIVER%20CW-SSB-DRM%20YU1LM.pdf
    • RF sbilanciata
    • LO + !LO
    • OUT bilanciato
    • si puo reimplementare con un singolo SPDT
  4. http://www.qrp.pops.net/K7LR-Memorial.asp
  5. http://www.qsl.net/aa9gg/proj/dc40xx_ugly/dc40xx_ugly.htm
    • Praticamente il n 3 bilanciato
    • RF bilanciata (trasformatore)
    • 74hc4053 3xSP2T
    • OUT bilanciato
H-mode

ma uscire in audio da un trasformatore e' grigia

QSD

ma ci vuole il LO in quadratura o un accrocchio

Altri mixer:

Diplexer

sul diplexer che segue il mixer si gioca buona parte della dinamica del ricevitore

http://www.qrp.pops.net/dip2.asp

Amplificatore audio

preamp e filtro LP:


PA: