Voor een opdracht moet ik een ervoor zorgen dat de rode led aangezet wordt door een knop, maar dat mag pas gebeuren nadat de intensiteit van het groene led wanneer deze 50% of hoger is. Het één en ander is me op dit moment al gelukt, maar wanneer ik de potmeter terug draai onder de 50% blijft het rode ledje werken ook als ik op de knop druk. Dat zou niet mogen gebeuren. Ik programmeer met c++.
#include "mbed.h"
PwmOut ledgroen (PA_6);
InterruptIn button (PA_3, PullDown);
AnalogIn pot(PA_0);
DigitalOut led1(PA_7);
Serial pc(USBTX, USBRX);
void CheckButton()
{
led1 = !led1;
}
int PotmeterWaarde()
{
float val = pot.read();
return val * 100;
}
int main()
{
float ain; /* Variable to store the analog input*/
while(1)
{
if (PotmeterWaarde()<= 50){
ain = pot.read();
ledgroen = ain;
int n = PotmeterWaarde();
pc.printf("Intensiteit = %d \r ", n);
}
else
{
button.rise(CheckButton);
ain = pot.read();
ledgroen = ain;
}
}
}
#include "mbed.h"
PwmOut ledgroen (PA_6);
InterruptIn button (PA_3, PullDown);
AnalogIn pot(PA_0);
DigitalOut led1(PA_7);
Serial pc(USBTX, USBRX);
void CheckButton()
{
led1 = !led1;
}
int PotmeterWaarde()
{
float val = pot.read();
return val * 100;
}
int main()
{
float ain; /* Variable to store the analog input*/
while(1)
{
if (PotmeterWaarde()<= 50){
ain = pot.read();
ledgroen = ain;
int n = PotmeterWaarde();
pc.printf("Intensiteit = %d \r ", n);
}
else
{
button.rise(CheckButton);
ain = pot.read();
ledgroen = ain;
}
}
}