vossepiep bouwen

Projecten die niet passen in bovenstaande onderwerpen
Berichten: 9
Geregistreerd: 09 Mrt 2016, 23:45

Re: vossepiep bouwen

Berichtdoor denjamar » 12 Mrt 2016, 19:16

pinmode staat nu goed

maar ik snap even niet wat je met de rest bedoeld /

zou je een voorbeeld kunnen geven?

alvast bedankt

Advertisement

Berichten: 4067
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: vossepiep bouwen

Berichtdoor shooter » 13 Mrt 2016, 20:04

je hebt al een keer delay omgezet, nu nog voor die for loop doen, zorg ervoor dat de loop heel snel gaat.
paul deelen
shooter@home.nl

Berichten: 9
Geregistreerd: 09 Mrt 2016, 23:45

Re: vossepiep bouwen

Berichtdoor denjamar » 13 Mrt 2016, 22:44

u bedoelt zo

cpp code
//vossepiep
//versie 0.4
//dennis gijsbertsen
// 10/03/2016

// piep pin 8 and ground
#include <Wire.h>
#include <LiquidCrystal_I2C.h>


#define wait 3
#define tijd 10

int freq = 0;

int relaisState = LOW; // relais statis
int buttonState = 0; // variable for reading the pushbutton status

LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); // LCD-Display met I2C-interface

const int relaisPin = 10; // pin 10 relais
const int piepPin = 8; // pin 8 piep

unsigned long previousMillis = 0; // bij 0 relais update hi /low

const long intervalrelais = 60000; // interval (milliseconds)60 sec

void setup() {

pinMode(piepPin, OUTPUT); //geluid uitgang
pinMode(relaisPin, OUTPUT); // set the digital pin as output:

lcd.begin(16, 2);
lcd.backlight();
lcd.clear();
lcd.print("Vossepiep V0.4 !");
lcd.setCursor( 1, 1);
lcd.print("**Kanaal 15!** ");
}

void loop()
{

relais();
if (relaisState == LOW) {
geluid();
lcdinfo();
}
if (relaisState == HIGH) {
lcdstate();
}
}

void lcdstate()
{
lcd.clear();
lcd.print("Piep off air");

}
void lcdinfo()
{
lcd.clear();
lcd.print("Piep on air");

}
void lcdptttoets()
{
lcd.clear();
lcd.print("U kunt nu de mic");
lcd.setCursor( 0, 1);
lcd.print("gebruiken!!!");
}

void relais()
{
unsigned long currentMillis = millis();

if (currentMillis - previousMillis >= intervalrelais) {

previousMillis = currentMillis;

// if the relais is off turn it on and vice-versa:
if (relaisState == LOW) {
relaisState = HIGH;

} else {
relaisState = LOW;
}

digitalWrite(relaisPin, relaisState);

}
}

void geluid()
{
for (freq = 500; freq < 1000; freq += 1) {
tone(piepPin, freq, tijd); // Beep pin, freq, time
delay(wait);
}
for (freq = 1000; freq > 500; freq -= 1) {
tone(piepPin, freq, tijd); // Beep pin, freq, time
delay(wait);
}

}
//end


mod: svp code2=cpp van maken ipv code2=

Berichten: 9
Geregistreerd: 09 Mrt 2016, 23:45

Re: vossepiep bouwen

Berichtdoor denjamar » 13 Mrt 2016, 22:52

dit werkt nu prima nu nog een knop dat alles door loopt maar de relais niet aktief maakt zo dat ik de mic gewoon kan gebruiken
is ff zoeken maar denk dat het wel gaat lukken
vrgr dennis

Berichten: 4067
Geregistreerd: 16 Okt 2013, 14:31
Woonplaats: s hertogenbosch

Re: vossepiep bouwen

Berichtdoor shooter » 14 Mrt 2016, 10:28

als het werkt, prima.
voor dit kleine project gaat het prima.
je zult wel merken dat de drukknop nu een probleem wordt, want zolang er geluid gemaakt wordt kijkt het programma nergens naar.
dus de delay kun je beter omzetten naar een timer.
verder kom je in de knoei met je delay en de tijd (die in de tone zit)
om zelfde reden moet lcdinfo boven geluid staan.
paul deelen
shooter@home.nl

Vorige

Terug naar Overige projecten

Wie is er online?

Gebruikers in dit forum: Google [Bot] en 30 gasten