Home News Forum Kijk/Luister Sample Sets Vergelijk Benodigdheden Foto's Links Downloads Over ons

 

Volume instelling opslaan

Toon actieve onderwerpen


Berichten: 13

Geregistreerd: 23 sep 2022 16:02

Bericht 05 dec 2022 16:06

Volume instelling opslaan

Ik heb soms bij een bepaalde registratie de behoefte het geluid wat zachter in te stellen dan bij andere registraties.
Dat doe ik nu met een draaiknop of met de dB instelling en het zou handig zijn als ik een van beide opties zou kunnen opslaan in de betreffende "Master General combination" of setter. Ik kan daar niets over vinden. Is dat mogelijk?

Berichten: 5125

Geregistreerd: 12 feb 2011 01:09

Bericht 05 dec 2022 19:52

Re: Volume instelling opslaan

Volume niveau / instelling opslaan bij een registratie is niet mogelijk in HW.

Wel zou je de trim dB schuif aan een zwelpedaal van je orgel kunnen koppelen als je die over hebt.
Het heeft wel 1 nadeel: als je opneemt in HW varieert dat opgenomen volume ook. Als je "buiten" HW het volume wijzigt, in bijv. een versterker, heb je dat niet.

Berichten: 13

Geregistreerd: 23 sep 2022 16:02

Bericht 28 dec 2022 13:05

Re: Volume instelling opslaan

Ik heb dan maar even wat geknutseld om een digitale potmeter te maken met een Arduino Nano, waarmee ik in 6 stappen het volume op 100-90-80-70-60 en 0% kan zetten.
Voor de hobbyist die het ook wil maken: De +5V en GND voor de voeding komt als max/min van de potmeter uit de Gino Midi board en een van de PWM analoge uitgangen van de Arduino gaat via een RC filter (100ohm 100uF) als "loper" van de potmeter naar de Midi controller terug.

2022-12-28 11.48.37 resized.jpg

2022-12-28 11.48.49 resized.jpg


Hierbij de code.

/*
Volumeschakelaar met analoge output als simulatie van potmeter in Midi controller orgel
Voeding vanuit +5V en GND van Gino BIG midi controller.
*/
//===============================================================
// Global Variables & Constants
//===============================================================

// LEDs zijn HIGH als UIT pull-down met anode aan +, idem up-dn button.

const byte ledPin[] = {2,3,4,5,7};
const int Buttonup = 8; // Active Low, held high by 4.7K
const int Buttondn = 9; // Active Low, held high by 4.7K
const int VolumePin = 6; // Volume van 0-5V

//Logische waarde van de inputs:

int Buttonupstate;
int Buttondnstate;

int upstateold;
int dnstateold;

int Ledindex = 0;

//===============================================================
// SETUP
//===============================================================

void setup () {
//all LED pins as outputs
for (int x=0; x<=4; x++) {pinMode(ledPin[x], OUTPUT);}

pinMode(Buttonup, INPUT);
pinMode(Buttondn, INPUT);
pinMode(VolumePin, OUTPUT);

// Startsituatie ledPinzero 100% aan en output op 5V.
digitalWrite(ledPin[0], LOW);
for (int x=1; x<=4; x++) {digitalWrite(ledPin[x], HIGH);}
analogWrite(VolumePin, 255);

}

//===============================================================
// Main Loop
//===============================================================
void loop() {

//Beginnen met de button states in te lezen
Buttonupstate = digitalRead(Buttonup);
Buttondnstate = digitalRead(Buttondn);

//eerst kijken of beide knoppen tegelijk worden ingedrukt, dan moeten alle LED's uit en output op 0V, als referentie

if (Buttondnstate == LOW && Buttonupstate == LOW)
{

for (int x=0; x<=4; x++){digitalWrite(ledPin[x], HIGH);
Ledindex = 5;}
}


else {

if (Buttondnstate != dnstateold && Buttondnstate == LOW && Ledindex<4)
{
Ledindex = Ledindex+1;
for (int x=0; x<=3; x++) {digitalWrite(ledPin[x], HIGH);}
digitalWrite(ledPin[Ledindex], LOW);
}

if (Buttonupstate != upstateold && Buttonupstate == LOW && Ledindex>0)
{
Ledindex = Ledindex-1;
for (int x=0; x<=4; x++){digitalWrite(ledPin[x], HIGH);}

digitalWrite(ledPin[Ledindex], LOW);
}}
switch (Ledindex)
{
case 0:
analogWrite(VolumePin, 245);
break;
case 1:
analogWrite(VolumePin, 220);
break;
case 2:
analogWrite(VolumePin, 197);
break;
case 3:
analogWrite(VolumePin, 172);
break;
case 4:
analogWrite(VolumePin, 147);
break;
case 5:
analogWrite(VolumePin, 0);
}

upstateold = Buttonupstate;
dnstateold = Buttondnstate;

delay(100);

}
Je hebt geen permissies om de bijlage(n)) in dit bericht te zien.

Keer terug naar Hauptwerk

Wie is er online

Gebruikers op dit forum: Geen geregistreerde gebruikers. en 17 gasten




Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF. phpBB.nl Vertaling

 

Copyright (c) 2008 PCorgan.com. All rights reserved. Mail: info@PCorgan.com