Forum: Mikrocontroller und Digitale Elektronik DDS VFO Bandlimit festlegen


von Silvio (Gast)


Lesenswert?

Hallo
Wie bewerkstellige ich es, daß beim DDS VFO mit Bandumschaltung ein 
Bandlimit festgelegt wird.
Hier mal ein Auszug aus dem C Programm

eeprom unsigned long band0= 1800000; // Mittenfrequenz
eeprom unsigned long band1= 3600000;
eeprom unsigned long band2= 7000000;
eeprom unsigned long band3=10100000;
eeprom unsigned long band4=14000000;
eeprom unsigned long band5=18100000;
eeprom unsigned long band6=21000000;
eeprom unsigned long band7=24900000;
eeprom unsigned long band8=28500000;

************************************************************************ 
***
eeprom unsigned long band0_lo= 1800000;     //Bandlimit
eeprom unsigned long band0_hi= 2000000;
eeprom unsigned long band1_lo= 3500000;
eeprom unsigned long band1_hi= 3800000;
eeprom unsigned long band2_lo= 7000000;
eeprom unsigned long band2_hi= 7200000;
************************************************************************ 
***


switch(l)
{
case 1:{frequency=band0,n=1,b0=1; break;}; // 1,9
case 2:{frequency=band1,n=1,b1=1; break;};
case 3:{frequency=band2,n=1,b2=1; break;};
case 4:{frequency=band3,n=1,b3=1; break;};
case 5:{frequency=band4,n=0,b4=1; break;};
case 6:{frequency=band5,n=0,b5=1; break;};
case 7:{frequency=band6,n=0,b6=1; break;};
case 8:{frequency=band7,n=0,b7=1; break;};
case 9:{frequency=band8,n=0,b8=1; break;};  // 28
}


while(defult==1)
{
band0= 1800000;
band1= 3600000;
band2= 7000000;
band3=10100000;
band4=14000000;
band5=18100000;
band6=21000000;
band7=24900000;
band8=28500000;


************************************************************************ 
***
band0_lo= 1800000;
band0_hi= 2000000;
band1_lo= 3500000;
band1_hi= 3800000;
band2_lo= 7000000;
band2_hi= 7200000;
************************************************************************ 
***

ifnorm= 10000000;
ifrev=  10000000;
ifcw=   10000000;
f_op=   125000000;




Die in* narkirten habe ich festgelegt und werden ins EEprom geschrieben
und hier meine Eingabe die nicht funktioniert.zb für 2 Bänder.


if(frequency<band0_lo && frequency>band0_hi)
{frequency=band0_lo,frequency=band0_hi;}; //  1,9
if(frequency<band1_lo && 
frequency>band1_hi){frequency=band1_lo,frequency=band1_hi;}; //  3,5

Soll etwa heissen
wenn Frequenz kleiner als Band0_lo und grösser als Band0_hi-------
dann frequenz= band0_lo (1800000) und frequenz= Band_hi (2000000)

Falls es totaler Quatsch ist bitte nicht lachen ich habe nicht viel 
Ahnung davon

Gruß Silvio

: Verschoben durch User
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.