Un progr. progetto filtri dal passato

Inviato:
28 ott 2025, 18:56
da MarcoD
Archeologia informatica.
Solo per vostra curiosità, diffondo un mio programmino di 34 anni fa, per il progetto di un filtro passa banda con operazionale, recuperato dalla memoria di un vecchio PC.
Re: Un progr. progetto filtri dal passato

Inviato:
28 ott 2025, 19:25
da stefanodelfiore
il listato basic è disponibile ?
Re: Un progr. progetto filtri dal passato

Inviato:
28 ott 2025, 20:42
da MarcoD
Si, ho rintracciato il sorgente fibanda.bas 3kbyte.
Se ti serve lo diffondo.
Purtroppo da decenni non sono sono in grado di far girare un GWBASIC o un QUICKBASIC su un sistema Windows. Se ben ricordo girava sul DOS3.0 o DOS6.0.
Re: Un progr. progetto filtri dal passato

Inviato:
28 ott 2025, 21:31
da stefanopc
Potresti provare sotto Win2000 virtuale.
Mi sembra di ricordare che funzionasse.
C'era il famoso Gorilla che lancia le banane.
In ufficio abbiamo ancora un PC funzionante per la supervisione di un impianto.
Ciao
Re: Un progr. progetto filtri dal passato

Inviato:
28 ott 2025, 21:34
da GioArca67
Forse è ora di imparare Python???
Comunque...
http://www.freebasic.net/Oppure DOSBox
https://www.dosbox.com/Bel programmino, bravo!
Re: Un progr. progetto filtri dal passato

Inviato:
29 ott 2025, 8:40
da MarcoD
Diffondo il sorgente
- Codice: Seleziona tutto
'15 11 91
'progetto filtro passa banda a guadagno infinito feedback multiplo
PRINT "
PRINT " C3 = C4 = C
PRINT "
PRINT " ----C4---+----------------
PRINT " | | |
PRINT " | R5 ********* | SCHEMA FILTRO ATTIVO
PRINT " | | * * | PASSA BANDA REALIZZATO
PRINT " +-----R1--+---C3---+--* I- * | CON AMPL.OPERAZIONALE
PRINT " | * U *----+-----+ CONFIGURAZIONE REAZIONE
PRINT " | +--* I+ * MULTIPLA CON GUADAGNO
PRINT "INGRESSO R2 | * * USCITA INFINITO
PRINT " | | ********* (adatto con Q < 20
PRINT " +---------+--------+---------------------+ e F0 < 10KHz )
PRINT " |
PRINT " GND
PRINT "
INIZIO:
INPUT"1= sint, 2= anal, 3= esci ";I
IF I = 1 THEN GOSUB SINTESI
IF I = 2 THEN GOSUB VERIFICA
IF I = 3 THEN END
GOTO INIZIO:
SINTESI:
INPUT "C in nF";C
C = C*(1E-9)
INPUT "H0 guadagno alla frequenza di risonanza ";H0
INPUT "Q fattore di merito ";Q
INPUT "F0 frequenza di risonanza Hz ";F0
'H0 = 1
'Q = 10
'F0 = 1000
B=F0/Q 'banda passante a -3 dB funzione del secondo ordine
PRINT "banda passante a -3 dB Hz ";B
PRINT
PRINT "caratteristiche richieste"
PRINT H0,F0,Q,B
W0 = 6.28 * F0
R1 = Q/(H0*W0*C)
R2 = Q/((2*Q*Q-H0)*W0*C)
R5 = 2*Q/(W0*C)
PRINT"Valori teorici di resistenza"
PRINT "R1=";R1," R2=";R2," R5=";R5
PRINT
RETURN
VERIFICA:
PRINT "Valori disponibili"
INPUT "C in nF";C
C = C*(1E-9)
INPUT; " R1 = ";R1
INPUT; " R2 = ";R2
INPUT; " R5 = ";R5
'R1=15000
'R2=820
'R5=330000
C3 = C
C4 = C
H0=1/((R1/R5)*(1+C4/C3))
W0 = SQR((1/(R5*C3*C4))*((1/R1)+(1/R2)))
ALFA = (SQR(1/(R5*((1/R1)+(1/R2)))))*(SQR(C3/C4)+SQR(C4/C3))
Q = 1/ALFA
F0 = W0/6.28
B=F0/Q 'banda passante a -3 dB funzione del secondo ordine
PRINT
PRINT "caratteristiche ottenute"
PRINT H0,F0,Q,B
RETURN
L'ho copiato con "blocco note", ma mi pare che l'allineamento del disegno si sia perso.
Grazie
GioArca67 per le indicazioni.
Gli ultimi programmi li ho scritti pochi anni fa nell'ambiente/linguaggio Processing, un simil Pascal padre dell'ambiente Arduino.
Re: Un progr. progetto filtri dal passato

Inviato:
29 ott 2025, 9:42
da lelerelele
GioArca67 ha scritto:Forse è ora di imparare Python???
allora meglio imparare il Visual basic, ha la stessa sintassi e le stesse funzioni del basicA,(o molto simile), ci puoi fare tutti i programmi che vuoi anche complessi, e girano semplicemente su win senza alcun interprete.
addirittura se lo inserissi in VBA entro access, con qualche aggiustamento magari, riesci a farlo andare con poco....
saluti.
Re: Un progr. progetto filtri dal passato

Inviato:
29 ott 2025, 10:39
da boiler
Attenzione con VisualBasic.
VisualBasic Classic (quello a cui la maggior parte della gente pensa quando si parla di VB), è obsoletissimo.
L'ultima release risale al 1998. Per dare un po' di contesto, nel 1998 Alex Britti usciva con Solo una volta o tutta la vita mentre la Lewinsky trastullava il sassofono di Clinton. Fino a settembre di quell'anno, google non esisteva. Attenzione, non sto parlando dell'anno di nascita di VB, ma di quello della sua "morte"!
C'è poi VisualBasic .NET, che è tuttora mantenuto, ma è anche un linguaggio completamente diverso dal basic originale e sicuramente non è quello che consiglierei di imparare oggi se qualcuno volesse orientarsi verso un linguaggio piú moderno.
In parte è anche questione di gusti, ma trovo che nel 2025 ci siano validi motivi per consigliare queste due opzioni:
- Python, se si vuole fare scripting o "pasticciare" e se l'obbiettivo è "che funzioni", senza chiedersi come
- C#, se si vuole imparare un linguaggio "vero", che non perdona nulla e che quindi ti obbliga ad imparare la teoria
Per ambedue i linguaggi ci sono IDE gratuite a disposizione, c'è un'enorme schiera di utenti che porta a trovare facilmente informazioni in caso di bisogno e ci sono molte librerie a disposizione.
Boiler
Re: Un progr. progetto filtri dal passato

Inviato:
29 ott 2025, 10:45
da GioArca67
Condivido le scelte.
A seconda però dell'ambito di interesse/lavoro serve conoscere anche Java/JavaScript.
Qui però l'ambito di applicazione è prettamente hobbistico, quindi Python mi sembra la scelta più appropriata.
