Sostieni il forum con una donazione! Il tuo contributo ci aiuterà a rimanere online!
Immagine

Semplice switcher programmabile

Discussioni di carattere generale sugli effetti analogici e non..
Rispondi
Avatar utente
luix
Amministratore
Amministratore
Messaggi: 3422
Iscritto il: 06/05/2006, 14:26

Semplice switcher programmabile

Messaggio da luix » 12/05/2006, 14:54

Ve lo copio pari pari per ampliare il forum...

Salve a tutti,
visto che oggi mi sento magnanime vi presento il progettino che buttai giù tempo fa per switchare i canali di un ampli che poi non ho  più costruito (come al solito  :ok_1:)

E' un progetto che fa uso di un PIC16F84 per attivare dei relè o semplicemente dei canali di una testata, questo è lo schema:

Immagine

Questo è il programma del PIC:

;**************************************************
; LUIX CHANNEL SWITCH                            *
;**************************************************

      PROCESSOR          16F84;   
      INCLUDE            "P16F84.INC";
      ERRORLEVEL        -302;

ra0    EQU        0D
ra1    EQU      01D
ra2    EQU      02D
ra3    EQU      03D
ra4    EQU      04D
rb0    EQU        0D
rb1    EQU      01D
rb2    EQU      02D
rb3    EQU      03D
rb4    EQU      04D
rb5    EQU      05D
rb6    EQU      06D
rb7    EQU      07D


        ORG        00H
INIZIO 
        bsf        STATUS,RP0
        movlw      00000000B
        movwf      TRISB
        movlw      11111B
        movwf      TRISA
        bcf        STATUS,RP0
        clrw
        bsf        PORTB,rb0
        bcf        PORTB,rb1
        bcf        PORTB,rb2
        bcf        PORTB,rb3
        bcf        PORTB,rb4
        bcf        PORTB,rb5
        bcf        PORTB,rb6
        bcf        PORTB,rb7

       
KEYSCAN 
        btfss      PORTA,ra0
        call      CH1
        nop
        btfss      PORTA,ra1
        call      CH2
        nop
        btfss      PORTA,ra2
        call      CH3
        nop
        btfss      PORTA,ra3
        call      CH4
        nop
        btfss      PORTA,ra4
        call      CH5
        nop
        goto      KEYSCAN

CH1
        bsf        PORTB,rb0
        bcf        PORTB,rb1
        bcf        PORTB,rb2
        bcf        PORTB,rb3
        bcf        PORTB,rb4
        return
CH2
        bcf        PORTB,rb0
        bsf        PORTB,rb1
        bcf        PORTB,rb2
        bcf        PORTB,rb3
        bcf        PORTB,rb4
        return
CH3
        bcf        PORTB,rb0
        bcf        PORTB,rb1
        bsf        PORTB,rb2
        bcf        PORTB,rb3
        bcf        PORTB,rb4
        return
CH4
        bcf        PORTB,rb0
        bcf        PORTB,rb1
        bcf        PORTB,rb2
        bsf        PORTB,rb3
        bcf        PORTB,rb4
        return
CH5     
        bcf        PORTB,rb0
        bcf        PORTB,rb1
        bcf        PORTB,rb2
        bcf        PORTB,rb3
        bsf        PORTB,rb4
        return       

        END

La funzione Keyscan serve a scansionare i tasti corrispondenti alla porta di ingresso (A), l'istruzione "btfss" (bit test skip if zero) serve per l'appunto a vedere se un tasto si trova a 1, in questo caso chiama la rispettiva funzione CHx, ad esempio se premiamo il tasto RA0 il PIC va alla funzione CH1.

Le varie funzioni CH1 CH2 ect... servono a portare i pin della porta B del PIC ad uno stato alto o basso a seconda che l'istruzione sia "bsf" (bit set) o "bcf" (bit clear) in questo modo tramite l'istruzione bsf "bit set" si attivano i bit della porta B e tramite l'istruzione "bcf" si disattivano i bit della porta, ad esempio nel canale CH5 i bit disattivati sono rb0 rb1 rb2 rb3 ed il bit attivo è rb4.

Come potete vedere potete programmare i 5 canali come vi pare, l'unica limitazione è che non potete farlo onboard, per riprogrammare il PIC dovrete smontarlo dalla scheda....

Quì trovate il pacchetto completo di file hex da caricare nel PIC.

Se di microcontrollori non ne capite nulla prima di fare domande vi prego di informarvi sull'argomento xchè non ho nessuna intenzione di rispondere a domande del tipo "ho messo il PIC in lavatrice ma non si è programmato, come posso fare per caricare il programma...?"
MEMENTO trimmer Humdinger :lol1:

Avatar utente
Leo
Diyer Eroe
Diyer Eroe
Messaggi: 827
Iscritto il: 30/09/2006, 13:42

Re:Semplice switcher programmabile

Messaggio da Leo » 22/09/2009, 0:14

Bel progettino, complimenti luix, mi hai fatto venire un'idea malsana in testa...

E se questo switcher lo implementassi in un ampli (ovviamente mi basterebbero 3 switch quindi 3 preset ed eventuali altri relè da mettere in parallelo) sai che bella cosa?

L'unica cosa che mi viene, ora non ho controllato ma mi pare tu abbia usato i canali RC e RB del Pic, potrei usarne uno come semplice input per poter controllare il tutto via midi?

mick
Amministratore
Amministratore
Messaggi: 1727
Iscritto il: 06/05/2006, 16:24

Re:Semplice switcher programmabile

Messaggio da mick » 22/09/2009, 0:19

luix ha scritto: "ho messo il PIC in lavatrice ma non si è programmato, come posso fare per caricare il programma...?"
:funn: :funn: :funn: :funn: :funn:

Avatar utente
capello
Diyer Eroe
Diyer Eroe
Messaggi: 690
Iscritto il: 08/05/2006, 10:35

Re:Semplice switcher programmabile

Messaggio da capello » 22/09/2009, 9:08

bella li' Luix!

:numb1: :numb1: :numb1:

Avatar utente
Leo
Diyer Eroe
Diyer Eroe
Messaggi: 827
Iscritto il: 30/09/2006, 13:42

Re:Semplice switcher programmabile

Messaggio da Leo » 22/09/2009, 12:10

Perfetto :D ho finito tutto!

Sto finendo il programma con il parsic e poi lo testo!

Luix grazie per l'impulso (ahaha a proposito di PIC) XD

El.guerrero
Diyer Eroe
Diyer Eroe
Messaggi: 714
Iscritto il: 01/01/2007, 21:10
Località: Prov, Como

Re:Semplice switcher programmabile

Messaggio da El.guerrero » 22/09/2009, 19:21

Wella luix! bella come al solito!
Diy: Fat boost,Red Llama...And Soldano Slo 50w

[url=http://ubanimator.com][img]http://img225.imageshack.us/img225/8759/userbar529479ge7.gif[/img][/url]

Avatar utente
luix
Amministratore
Amministratore
Messaggi: 3422
Iscritto il: 06/05/2006, 14:26

Re:Semplice switcher programmabile

Messaggio da luix » 23/09/2009, 9:03

Leo ha scritto: Perfetto :D ho finito tutto!

Sto finendo il programma con il parsic e poi lo testo!

Luix grazie per l'impulso (ahaha a proposito di PIC) XD
ma il parsic l'hai comprato o da qualche parte si trova scazzato?
MEMENTO trimmer Humdinger :lol1:

Avatar utente
Leo
Diyer Eroe
Diyer Eroe
Messaggi: 827
Iscritto il: 30/09/2006, 13:42

Re:Semplice switcher programmabile

Messaggio da Leo » 01/10/2009, 0:44

Ce l'ha un mio amico, funziona con una chiavetta USB, ho mandato una mail per chiedere il costo e vogliono 180€ con il 20% di sconto agli studenti...

So che è tantissimo, ma credo sia l'unico programma così semplice e potente... sto cercando in giro qualcosa di free ma niente..

PS. Ho implementato il tuo looper, 50 banchi, più controllo relè programmabile per cambiare contemporaneamente sia loop di pedali che effetti a rack (nel mio caso G-Major) che cambio canale dell'ampli... tutto con un solo click XD
IO AMO IL MIDI!

Appena finisco tutto, metto online qualche progretto semplificato pronto all'uso!

Rispondi