INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.

Antwort schreiben 
 
Themabewertung:
  • 0 Bewertungen - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
attiny85 und PIEZO Buzzer / Speaker
16.11.2019, 17:21
Beitrag #1
attiny85 und PIEZO Buzzer / Speaker
Hallo, ich mal wieder...

ich wollte mal fragen wie ich am einfachsten einen Piezo mit einem attiny85 piepsen lassen kann.

Das Projekt an dem ich arbeite soll nur 4 rgbs blinken lassen und dazu eben piepsen, da ich nicht viel platz in dem Körper habe würde ich das gerne mit einem attiny85 machen, da dieser keine Bootphase hat wie der digisparkt attiny85 / 167, mit denen das Projekt auch einwandfrei läuft nur eben nicht mit dem attiny85 alleine. Die leds machen was sie sollen aber der Piezo gibt keinen laut von sich, ich habe schon gegoogelt und diverse Corse in den Voreinstellungen der Arduino IDE über URLs intgegriert und auch in die Bibliotheken eingegliedert, es läuft trotzdem nicht so wie es soll....

hier mal der Sketch so wie er auf dem Digispark funzt:

Code:
#include<Arduino.h>
#include<Adafruit_NeoPixel.h>

#define PIN 3
#define NUMPIXELS 4

Adafruit_NeoPixel pixels = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

const int buzzer = 2;
const int taster = 0;
const int led = 3;

int p = 50;

// the setup function runs once when you press reset or power the board
void setup() {
    pixels.begin();
    pinMode(led, OUTPUT);
    pinMode(buzzer, OUTPUT);
    pinMode(taster, INPUT);
    digitalWrite(led, LOW);
    sequenz1();


}

// the loop function runs over and over again until power down or reset
void loop() {
    scharf();

}

void sequenz1() {
    for (int i = 0; i < NUMPIXELS; i++) {
        
            pixels.setPixelColor(i, pixels.Color(255, 0, 0));
            delay(100);
            pixels.show();
            tone(buzzer, 700);
            delay(p);
            noTone(buzzer);
            delay(p);
            
        
    }
    for (int i = 0; i < NUMPIXELS; i++) {
        
            pixels.setPixelColor(i, pixels.Color(0, 0, 0));
            delay(100);
            pixels.show();
        
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(90);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
        
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(90);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(80);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(80);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(70);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(70);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(60);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(60);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(50);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(50);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(40);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(40);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(30);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(30);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(20);
        pixels.show();
        tone(buzzer, 700);
        delay(p);
        noTone(buzzer);
        delay(p);
    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        delay(20);
        pixels.show();

    }
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(255, 0, 0));
        delay(10);
        pixels.show();
        tone(buzzer, 700);
        //delay(p);
        //noTone(buzzer);
        
    }
    delay(1000);
    for (int i = 0; i < NUMPIXELS; i++) {

        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        pixels.show();
        noTone(buzzer);

    }
}

void scharf() {
    for (int i = 0; i < NUMPIXELS; i++) {
        pixels.setPixelColor(i, pixels.Color(255, 80, 255));
        pixels.show();
        tone(buzzer, 900);
        
    }
    delay(200);

    for (int i = 0; i < NUMPIXELS; i++) {
        pixels.setPixelColor(i, pixels.Color(0, 0, 0));
        pixels.show();
        noTone(buzzer);
        
    }
    delay(200);
}

Irgendwo hab ich gelesen das evtl. an den Timern liegt, nur verstehe ich das nicht ganz.....

kann mir da wer helfen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.11.2019, 17:40
Beitrag #2
RE: attiny85 und PIEZO Buzzer / Speaker
Ich vermute, es liegt an der Taktfrequenz.
Der Digispark läuft von Werk an mit 16,5 MHz, der ATtiny85 ist von Haus aus mit 1 MHz, wenn du den nicht umgeflasht hast.

Gruß Dieter

I2C = weniger ist mehr: weniger Kabel, mehr Probleme. Cool
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.11.2019, 17:54
Beitrag #3
RE: attiny85 und PIEZO Buzzer / Speaker
Hm....

hab den attiny85 jetzt mit 16mhz den bootloader gebrannt, das alleine hilft aber nicht anscheinend
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.11.2019, 17:58
Beitrag #4
RE: attiny85 und PIEZO Buzzer / Speaker
Ich kenne diese Piezo Buzzer so dass sie mit Gleichspannung betrieben werden und nicht mit einem "tone(buzzer, 700);" , also einfach "digitalWrite(buzzer, HIGH);".
Zudem werden die lauter wenn die Spannung höher ist. Also wenn machbar den Buzzer über einen Transistor direkt aus der Versorgungsspannung betreiben wenn die höher als 5V ist.

Gruß Arne
Mit zunehmender Anzahl qualifizierter Informationen bei einer Fragestellung, erhöht sich zwangsläufig die Gefahr auf eine zielführende Antwort.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.11.2019, 18:20 (Dieser Beitrag wurde zuletzt bearbeitet: 16.11.2019 20:28 von Thor Wallhall.)
Beitrag #5
RE: attiny85 und PIEZO Buzzer / Speaker
ich habe in einem anderen thread, der auch dieses Thema ergreift "Keine Tonübertragung mit ATtiny85 möglich, auch über Cores gelesen.....

ich habe diese beiden URLs in den Voreinstellungen eingefügt, kann aber keine von beiden in den Bibliotheken einbinden,
wobei ich mit der zweiten URL schon die ganze Zeit meine ATtiny85 bis jetzt ohne Probleme programmiert habe, nur bis jetzt nie einen Piezo betrieben habe...

http://drazzy.com/package_drazzy.com_index.json
https://raw.githubusercontent.com/damell...index.json

Juhu......hat sich erledigt......hab den Fehler gefunden......hab nochmal die Boards neu verwaltet....jetzt gehts
Danke für die Hilfe....
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.11.2019, 20:46
Beitrag #6
RE: attiny85 und PIEZO Buzzer / Speaker
(16.11.2019 17:58)ardu_arne schrieb:  Ich kenne diese Piezo Buzzer so dass sie mit Gleichspannung betrieben werden und nicht mit einem "tone(buzzer, 700);" , also einfach "digitalWrite(buzzer, HIGH);".
Zudem werden die lauter wenn die Spannung höher ist. Also wenn machbar den Buzzer über einen Transistor direkt aus der Versorgungsspannung betreiben wenn die höher als 5V ist.
Es gibt beide Varianten.

Gruß Tommy

"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
16.11.2019, 21:14
Beitrag #7
RE: attiny85 und PIEZO Buzzer / Speaker
Mit den Core von Spence Konde läuft das...
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  ATTiny85 sleep time hYtas 7 586 22.01.2020 15:26
Letzter Beitrag: hYtas
  Programm läuft auf UNO aber nicht auf ATTINY85 Diwo13 55 3.997 17.12.2019 17:45
Letzter Beitrag: Diwo13
  Attiny85 zu wenig Speicher Harry 36 4.512 20.01.2019 16:15
Letzter Beitrag: Harry
  Attiny85 mit I2C LCD Harry 9 2.332 07.01.2019 18:33
Letzter Beitrag: Tommy56
  Attiny85 sleep Harry 2 1.149 27.12.2018 19:21
Letzter Beitrag: Harry
  Keine Tonübertragung mit ATtiny85 möglich delay 7 1.436 08.12.2018 20:49
Letzter Beitrag: georg01
  ATtiny85 - PWM mit 18-30KHz phischmi 5 2.116 09.04.2018 17:31
Letzter Beitrag: hotsystems
  Buzzer ohne Delay Harry 9 2.874 23.01.2018 12:30
Letzter Beitrag: Tommy56
  PWM auf Attiny85 Andreas75s 9 4.104 18.12.2017 18:15
Letzter Beitrag: Mathias
  ATtiny85 Digispark georg01 4 2.754 25.03.2017 20:58
Letzter Beitrag: Tommy56

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste