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:
  • 1 Bewertungen - 5 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Hilfe beim Programm
22.07.2014, 08:20 (Dieser Beitrag wurde zuletzt bearbeitet: 22.07.2014 08:28 von sinidus123.)
Beitrag #17
RE: Hilfe beim Programm
(22.07.2014 08:11)rkuehle schrieb:  
Zitat:Ich war mir nicht sicher welcher Pin welche Nummer hat . Ich hab einfach von unten links angefangen und habe rundherum gezählt, ist das richtig ?
In dem Produktlink zur 7 Seg Anzeige bei Konrad gibt es auchen einen Download. Das ist das Datenblatt. Da sieht man genau welcher Pin welche Nummer hat.

Grüße RK

Ich finde es nicht auf dem Datenblatt,nur welche Nummer zu welchem Buchstabe gehört.ist dort ein Bild von dem pins mit der Belegung ?

-----------1
Ich habe alle pins gestern ausgetestet und alle gingen, es müsste jetzt nur was leuchten, auch wenn die Zahl falsch ist, aber es leuchtet garnichts.
Ich habe mal den servo abgesteckt.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.07.2014, 10:04 (Dieser Beitrag wurde zuletzt bearbeitet: 22.07.2014 10:33 von rkuehle.)
Beitrag #18
RE: Hilfe beim Programm
Im Attachment mal das Bild mit den Pin - Nummern.
Zitat:es müsste jetzt nur was leuchten, auch wenn die Zahl falsch ist, aber es leuchtet garnichts.
Bei jedem drücken des Tasters an Pin 12 sollte die Anzeige von 1 bis 9 hochzählen und dann wieder bei 1 anfangen. Wenn du den Taster an Pin 13 drückst sollte zusätzlich der Punkt leuchten. Damit wird dann die gesetzte Stundenzahl (1...9) aktiv und die Zeitschaltung läuft los.
Voraussetzung ist, dass du die Taster wie im Link in der Settings.h verkabelt hast, allerdings auf Pin 12 und 13.
Nach Ablauf der Zeitspanne geht der Servo vorwärts bis zur eingestellten Gradzahl (siehe Settings.h die Variable grad), wartet zwei Sekunden und geht dann wieder auf 0 Grad zurück.
Die GND - Anschlüsse des Servo und des Arduino müssen verbunden werden. Mit wie viel Volt betreibst du jetzt den Servo?
ich sehe gerade, dass ich einen Denkfehler hatte. Die Anzeige braucht pro Segment einen Vorwiderstand. Die gemeinsame Kathode (3 oder 8) muss direkt auf GND.
Grüße Ricardo
PS: Die Bounce Library hattest du installiert und es gab auch keine Compilerfehler?

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.07.2014, 11:20
Beitrag #19
RE: Hilfe beim Programm
(22.07.2014 10:04)rkuehle schrieb:  Im Attachment mal das Bild mit den Pin - Nummern.
Zitat:es müsste jetzt nur was leuchten, auch wenn die Zahl falsch ist, aber es leuchtet garnichts.
Bei jedem drücken des Tasters an Pin 12 sollte die Anzeige von 1 bis 9 hochzählen und dann wieder bei 1 anfangen. Wenn du den Taster an Pin 13 drückst sollte zusätzlich der Punkt leuchten. Damit wird dann die gesetzte Stundenzahl (1...9) aktiv und die Zeitschaltung läuft los.
Voraussetzung ist, dass du die Taster wie im Link in der Settings.h verkabelt hast, allerdings auf Pin 12 und 13.
Nach Ablauf der Zeitspanne geht der Servo vorwärts bis zur eingestellten Gradzahl (siehe Settings.h die Variable grad), wartet zwei Sekunden und geht dann wieder auf 0 Grad zurück.
Die GND - Anschlüsse des Servo und des Arduino müssen verbunden werden. Mit wie viel Volt betreibst du jetzt den Servo?
ich sehe gerade, dass ich einen Denkfehler hatte. Die Anzeige braucht pro Segment einen Vorwiderstand. Die gemeinsame Kathode (3 oder 8) muss direkt auf GND.
Grüße Ricardo
PS: Die Bounce Library hattest du installiert und es gab auch keine Compilerfehler?

Ich habe die Library installiert und es gab keine Fehlermeldungen.
Ich habe dann nochmal alles neu aufgebaut , vor der Anzeige hab ich noch keine wiederstände gepackt , aber das hat auch noch ohne funktoniert.später werde ich die dann dazubauen.
Leider tut sich aber nichts wenn ich den arduino starte und die knöpfe Drücke.
Ich habe die knöpfe auch richtig aufgebaut und das Display nochmal nach dem Bild an den arduino verbunden
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.07.2014, 12:29
Beitrag #20
RE: Hilfe beim Programm
Hallo sinidus,

ersetze bitte mal den Inhalt von futter.ino mit diesem Code:
Code:
#include <Bounce.h>
#include <Servo.h>
// Konstante Werte in Settings.h
#include "Settings.h"
// Variablen
// Zeitpunkt zu dem Zeitschaltung aktiviert wird
unsigned long set_time = 0;
// Zeitdifferenz von Start Zeitschaltung bis Aktion Servo im Ms
unsigned long time_diff = 0;
// ist die Zeitschaltung aktiv?
boolean counter = false;
// letzter gewählter Zeitwert auf Anzeige
uint8_t zeitwert = 0;
unsigned long servo_stop = 0;
// Instanzen zum Entprellen der Taster aufsetzen
Bounce bounce_time = Bounce( time_switch, b_time );
Bounce bounce_set = Bounce( set_switch, b_time );
// Instanz für Servo
Servo myServo;

void setup()
{
  // Einmalig die PinModes setzen
  pinMode(time_switch, INPUT);
  pinMode(set_switch, INPUT);
  pinMode(sA, OUTPUT);
  pinMode(sB, OUTPUT);
  pinMode(sC, OUTPUT);
  pinMode(sD, OUTPUT);
  pinMode(sE, OUTPUT);
  pinMode(sF, OUTPUT);
  pinMode(sG, OUTPUT);
  pinMode(sDP, OUTPUT);
  myServo.attach(pin_servo);
}
void loop()
{
  // Taster Zeiteinstellung abfragen
  if (bounce_time.update()) {
    if ( bounce_time.read() == HIGH) Do_time;
  }
  // Taster Start Zeitschaltung abfragen
  if (bounce_set.update()) {
    if (bounce_set.read() == HIGH) Set_time;
  }
  // Wenn zeitschaltung läuft
  if (counter == true)
  {
    // Zeitdifferenz zwischen Start Zeitschaltung und Wartezeit erreicht?
    if (millis() - set_time > time_diff) Do_servo();
  };
}
Grüße RK

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.07.2014, 17:01
Beitrag #21
RE: Hilfe beim Programm
(22.07.2014 12:29)rkuehle schrieb:  Hallo sinidus,

ersetze bitte mal den Inhalt von futter.ino mit diesem Code:
Code:
#include <Bounce.h>
#include <Servo.h>
// Konstante Werte in Settings.h
#include "Settings.h"
// Variablen
// Zeitpunkt zu dem Zeitschaltung aktiviert wird
unsigned long set_time = 0;
// Zeitdifferenz von Start Zeitschaltung bis Aktion Servo im Ms
unsigned long time_diff = 0;
// ist die Zeitschaltung aktiv?
boolean counter = false;
// letzter gewählter Zeitwert auf Anzeige
uint8_t zeitwert = 0;
unsigned long servo_stop = 0;
// Instanzen zum Entprellen der Taster aufsetzen
Bounce bounce_time = Bounce( time_switch, b_time );
Bounce bounce_set = Bounce( set_switch, b_time );
// Instanz für Servo
Servo myServo;

void setup()
{
  // Einmalig die PinModes setzen
  pinMode(time_switch, INPUT);
  pinMode(set_switch, INPUT);
  pinMode(sA, OUTPUT);
  pinMode(sB, OUTPUT);
  pinMode(sC, OUTPUT);
  pinMode(sD, OUTPUT);
  pinMode(sE, OUTPUT);
  pinMode(sF, OUTPUT);
  pinMode(sG, OUTPUT);
  pinMode(sDP, OUTPUT);
  myServo.attach(pin_servo);
}
void loop()
{
  // Taster Zeiteinstellung abfragen
  if (bounce_time.update()) {
    if ( bounce_time.read() == HIGH) Do_time;
  }
  // Taster Start Zeitschaltung abfragen
  if (bounce_set.update()) {
    if (bounce_set.read() == HIGH) Set_time;
  }
  // Wenn zeitschaltung läuft
  if (counter == true)
  {
    // Zeitdifferenz zwischen Start Zeitschaltung und Wartezeit erreicht?
    if (millis() - set_time > time_diff) Do_servo();
  };
}
Grüße RK

Klappt immernoch nicht :/ Ich habe mal zum test ob das display überhaupt richtig angeschlossen ist ein segment blinken lassen und es geht.
aber wenn ich es mit dem programm versuche tut sich garnichts.
Liegt das am Programm oder irgendwie an mich ?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.07.2014, 19:33 (Dieser Beitrag wurde zuletzt bearbeitet: 22.07.2014 19:40 von rkuehle.)
Beitrag #22
RE: Hilfe beim Programm
Hallo sinidus,

ist ziemlich doof dass ich die Hardware nicht hier habe. So lässt es sich kaum testen. Ersetze mal die Funktion Show_digit() mit dem folgenden Code, vorher aber die Datei Funktionen.ino wegsichern:
Code:
void Show_digit(char todo)
{
  if (todo == 'T')
  {
    counter = false;
    for (uint8_t i = 2; i < 9; i++) digitalWrite(i, LOW);
    switch (zeitwert)
    {
      case 1:
        Serial.println(zeitwert);
        break;
      case 2:
        Serial.println(zeitwert);
        break;
      case 3:
        Serial.println(zeitwert);
        break;
      case 4:
        Serial.println(zeitwert);
        break;
      case 5:
        Serial.println(zeitwert);
        break;
      case 6:
        Serial.println(zeitwert);
        break;
      case 7:
        Serial.println(zeitwert);
        break;
      case 8:
        Serial.println(zeitwert);
        break;
      case 9:
        Serial.println(zeitwert);
        break;
    }
  }
  if (todo == 'S')         Serial.println("Punkt");
}
Nach dem Compilieren sollte bei drücken des Zeittaster im Serialmonitor jeweils die gewählte Zeit ausgegeben werden, nach drücken des Set-Tasters "Punkt". Wenn dem so ist stimmt irgendwas mit der elektrischen Ansteuerung der Anzeige noch nicht.
Könntest du vielleicht die Verkabelung aufzeichnen und einstellen (Skizze auf Papier und einscannen oder grob mit mspaint gemalt ???)

Grüße RK

Nüchtern betrachtet...ist besoffen besser Big Grin
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.07.2014, 20:10
Beitrag #23
RE: Hilfe beim Programm
(22.07.2014 19:33)rkuehle schrieb:  Hallo sinidus,

ist ziemlich doof dass ich die Hardware nicht hier habe. So lässt es sich kaum testen. Ersetze mal die Funktion Show_digit() mit dem folgenden Code, vorher aber die Datei Funktionen.ino wegsichern:
Code:
void Show_digit(char todo)
{
  if (todo == 'T')
  {
    counter = false;
    for (uint8_t i = 2; i < 9; i++) digitalWrite(i, LOW);
    switch (zeitwert)
    {
      case 1:
        Serial.println(zeitwert);
        break;
      case 2:
        Serial.println(zeitwert);
        break;
      case 3:
        Serial.println(zeitwert);
        break;
      case 4:
        Serial.println(zeitwert);
        break;
      case 5:
        Serial.println(zeitwert);
        break;
      case 6:
        Serial.println(zeitwert);
        break;
      case 7:
        Serial.println(zeitwert);
        break;
      case 8:
        Serial.println(zeitwert);
        break;
      case 9:
        Serial.println(zeitwert);
        break;
    }
  }
  if (todo == 'S')         Serial.println("Punkt");
}
Nach dem Compilieren sollte bei drücken des Zeittaster im Serialmonitor jeweils die gewählte Zeit ausgegeben werden, nach drücken des Set-Tasters "Punkt". Wenn dem so ist stimmt irgendwas mit der elektrischen Ansteuerung der Anzeige noch nicht.
Könntest du vielleicht die Verkabelung aufzeichnen und einstellen (Skizze auf Papier und einscannen oder grob mit mspaint gemalt ???)

Grüße RK

Ich werde jetzt mal den Code austauschen und es versuchen.
Und gleich lade ich mir diese Fritzing Software runter dann kann ich das dort aufzeichnen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
22.07.2014, 21:21 (Dieser Beitrag wurde zuletzt bearbeitet: 22.07.2014 21:22 von sinidus123.)
Beitrag #24
RE: Hilfe beim Programm
(22.07.2014 20:10)sinidus123 schrieb:  Ich werde jetzt mal den Code austauschen und es versuchen.
Und gleich lade ich mir diese Fritzing Software runter dann kann ich das dort aufzeichnen.

So, habe den Programm mal getestet und es tut sich immernoch nichts Sad
ich glaube , dass der programm nicht zu dem teil kommt , dass die anzeige die nummern zeigt, denn wenn ich die einzelnen ports auf high stelle gehen die einzelnen segmente an.
Ich habe dann noch den plan erstellt. Alles ist so aufgebaut wie es in deinem programm steht.
Den servo habe ich noch nicht angeschlossen, wollte erst nur testen ob das display funktoniert.


Angehängte Datei(en) Thumbnail(s)
   
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren
Antwort schreiben 


Möglicherweise verwandte Themen...
Thema: Verfasser Antworten: Ansichten: Letzter Beitrag
  Fehlermedungen beim Kompilieren Franz54 7 105 Gestern 14:29
Letzter Beitrag: Pit
  Fehler in meinem Programm Franz54 7 161 01.12.2016 23:58
Letzter Beitrag: hotsystems
  Hilfe: IR Remote Steuerung, MSGEQ7 + RGB-LED Streifen dastob 1 122 14.10.2016 21:40
Letzter Beitrag: hotsystems
Sad Ich brauche Hilfe Prosac 4 235 09.10.2016 18:39
Letzter Beitrag: Prosac
  Fehler beim Kompilieren binderj1 5 295 03.10.2016 21:27
Letzter Beitrag: hotsystems
  at24c256 Hilfe Gandalf 6 249 29.08.2016 18:59
Letzter Beitrag: MKc
Smile Progammier Neuling Codeschloss bittet um Hilfe Donalonso 2 287 27.08.2016 18:23
Letzter Beitrag: Binatone
  Fehler beim Speichern von Projekten Manni66 16 687 23.08.2016 10:05
Letzter Beitrag: hotsystems
  Hilfe gesucht. Webserver Statsiche und Dynamische HTMl Seite b3ta 11 452 22.08.2016 08:07
Letzter Beitrag: b3ta
  Arduino hängt beim Upload deranda 11 502 12.08.2016 21:27
Letzter Beitrag: hotsystems

Gehe zu:


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