Show Posts
Pages: [1] 2
1  Using Arduino / Programming Questions / Can I change the pins when I use the library LiquidCrystal on: April 04, 2014, 01:23:14 am
Hi,

I want to connect a display to my already existing circuit. My problem is that the pins D10 to D13 are already connected. Can I change the pin configuration of the library without problems or not?
Normal:

* LCD RS pin to digital pin 12
 * LCD Enable pin to digital pin 11
 * LCD D4 pin to digital pin 5
 * LCD D5 pin to digital pin 4
 * LCD D6 pin to digital pin 3
 * LCD D7 pin to digital pin 2
 * LCD R/W pin to ground

So I have to change pin 11 and 12, to which other pins I can connect them?

2  International / Deutsch / Zahl mit vielen Kommazahlen on: June 24, 2013, 09:46:59 am
Hallo,

für viele wird das jetzt eine einfache Aufgabe sein, aber ich habe wirklich Probleme damit.

Ich habe fogende Codezeile:

offsetfaktor= (4096-zwischenwert)/TIME;

wobei zwischenwert ca 4000 entspricht und TIME etwa 100000, es müsste also ca 0,000096 rauskommen.

Nun ist meine Frage wie ich dies im Arduionoprogramm realisieren kann. Bzw auch bo ich "offsetfaktor" also float oder double oder ... deklarieren soll.

Wie kann ich offsetfaktor auf der Konsole mit vielen Hinterkommastellen ausgeben lassen?


Wäre super wenn ihr mir helfen könntet
3  International / Deutsch / Re: Richtige Länge von Char überprüfen, ggf Char löschen on: May 06, 2013, 07:46:53 am
Wie kann ich den Buffer löschen, wenn da noch Daten vom vorherigen Ablauf drin sind? Geht das irgendwie?

Also ich hab 14 Zeichen eingegeben. Dann werden 13 abgeholt und eine Zahl ist noch im Buffer. Wie könnte ich die löschen?

4  Using Arduino / Programming Questions / Proove a datastream of Length on: May 06, 2013, 06:14:32 am
Hi,

I´ve got the following problem:
I need to receive a char with 13 signs. I realised that way:

char Einlesen [13];
...
 while (Serial.available() <= 12) {
  }
  Serial.readBytes(Einlesen, 13) ;
...


Now there is the problem, that there can be a problem with the transmisson. Somtimes the Arduino receives more or less signs than the 13 needed signs.

When the Arduino receives less than 13 signs, it stays in the while loop. If there are more than 13 signs, the Arduino works with the first 13 signs and stores the other signs. When the next data arrives, the Arduino puts the old signs before the new signs, so the datastream is also incorrect.

I don´t really know how to realise this.
The Arduino should only work with the received signs if the lenght is 13 otherwise the Arduino should delete the received data and wait for the next datatransmission.

So I hope you can help me!
5  International / Deutsch / Richtige Länge von Char überprüfen, ggf Char löschen on: May 06, 2013, 05:57:51 am
Hallo,

ich habe folgendes Problem. Ich muss einen Zeichencode mit 13 Stellen einlesen. Das habe ich bislan folgendermaßen gemacht:
char Einlesen [13];
...
 while (Serial.available() <= 12) { 
  }
  Serial.readBytes(Einlesen, 13) ;
...


Nun hat sich aber gezeigt, dass manchmal Fehler bei der Übertragung zum Arduino passieren, dh manchmal werden mehr oder weniger Zeichen als 13 zum Arduino gesendet.
Wenn weniger Zeichen als 13 übertragen werden dann bleibt der Ardunio ewig in der While schleife hängen. Wenn mehr als 13 gesendet werden, dann verarbeitet der Arduino die ersten 13 Zeichen und das 14. Zeichen merkt er sich aber und setzt es vor die nächste Zeichenkette, so dass diese nicht richtig verarbeitet wird.

Ich weis nicht wirklich wie ich das realisieren kann, dass nur wenn 13 Zeichen übertragen werden der Arduino die Zeichen verarbeitet. Bei zu vielen oder zu wenigen Zeichen soll der Arduino den Zahlencode löschen und einfach darauf warten, dass ein neuer Zeichencode gesendet wird.

Wäre sehr dankbar für Hilfe.
6  International / Deutsch / Schnellere Serielle Ausgabe möglich? on: February 13, 2013, 09:57:54 am
Hallo,

ich habe ein Programm geschrieben mit dem der Arduino Daten von einem DDC ausliest. Zu jedem Eingangssignal soll der Arduino auch einen Wert ausgeben.
Dazu ist die Serielle Schnittstelle über USB aber zu langsam.
Bei 100000 Werten werden nur ca. 50000 Werte.

Kann man die Übertragung bzw die Ausgabe verschnellern?

Bzw würde jemand eine andere Option einfallen. Oder wäre eine Ausgabe über eine andere Schnittstelle schneller?

Vielen Dank

Gruß

Markus
7  International / Deutsch / Wiring.c umschreiben, da Timer 0 benötigt wird on: January 18, 2013, 10:02:56 am
Hallo,

ich habe heute versucht die Funktion ISR(TIMER0_OVF_vect) zu verwenden.
Im Forum habe ich gelesen, dass dies nicht möglich ist, da Timer0 für die delay-Funktionen gebraucht wird. Da ich bereits alle anderen Timer benutze würde ich gerne auch Timer0 verwenden.

In einem weiteren Forumsbeitrag habe ich gelesen, dass man die Funktion wiring.c umschreiben muss um Timer 0 zu verwenden. Mir ist bewusst, dass ich dann Timer 0 so nicht verwenden sollte.

Diesen Link habe ich für die wiring.c gefunden:

https://github.com/arduino/Arduino/blob/master/hardware/arduino/cores/arduino/wiring.c#L43

Allerdings kenne ich mich damit nicht wirklich aus. Es wäre super wenn mir jemand erklären könnte was ich genau machen muss um den Timer 0 als Interruptfkt verwenden kann.


Grüße

Markus
8  Using Arduino / Programming Questions / Program stops in the loop. on: July 05, 2012, 09:01:09 am
This is an extract of my programm:

void loop(){

 
  if (state==0){
   
    // Serial.println ( "Bitte geben Sie den 11 stelligen Code ein");
    while (Serial.available() <= 10) {

    }
   
    //delay(100);
    Alts1old=Alts1;
    Alts2old=Altst2;
    Alts3old=Altst3;
    Alts4old=Altst4;
    Alts5old=Altst5;
    Alts6old=Altst6;
    Alts7old=Altst7;
    Alts8old=Altst8;
    Alts9old=Altst9;
    Alts10old=Altst10;
    Alts11old=Altst11;
   
    //Serial.println(Serial.available());
   
    //Hier werden die 11 Zeichen eingelesen       
       
    Alts1=(Serial.read()-48);
    Altst2=(Serial.read()-48);
    Altst3=(Serial.read()-48);
    Altst4=(Serial.read()-48);
    Altst5=(Serial.read()-48);
    Altst6=(Serial.read()-48);
    Altst7=(Serial.read()-48);
    Altst8=(Serial.read()-48);
    Altst9=(Serial.read()-48);
    Altst10=(Serial.read()-48);
    Altst11=(Serial.read()-48);
 
delay(500);
   Serial.println(Alts1);
   Serial.println(Altst2);
   Serial.println(Altst3);
   Serial.println(Altst4);
   Serial.println(Altst5);
   Serial.println(Altst6);
   Serial.println(Altst7);
   Serial.println(Altst8);
   Serial.println(Altst9);
   Serial.println(Altst10);
   Serial.println(Altst11);
  Serial.println("eingelesen");
 
  if (Alts1==0 && Altst2==0 && Altst3==0  && Altst4==0 && Altst5==0 && Altst6==0&& Altst7==0&& Altst8==0&& Altst9==0&& Altst10==0&& Altst11==0 ){
     Serial.println ( "Stoppfunktion! Sie befinden sich nun wieder im Initialzustand!");
     state=0;


.
.
.



The Output is:

IO-Monitor ist bereit und wartet auf eine Eingabe
0
0
0


After this the program stops und I have to reset ist.

I hope somebody can help me to solve the problem.

Markus
9  International / Deutsch / Re: Möchte bei Arduino Nano Pin A6 auf High setzen on: May 10, 2012, 09:02:17 am
Das funktioniert nicht. Das habe ich bereits ausprobiert
10  Using Arduino / Programming Questions / Set Pin A6 High (Arduino Nano) on: May 10, 2012, 08:13:44 am
Hi,

is it possible to set Pin A6 High on the Arduino Nano Board?

I want to do this in the same way I did with the other Pins

 pinMode(A6, OUTPUT);
digitalWrite(A6, HIGH);

Why doesn´t this work?

11  International / Deutsch / Möchte bei Arduino Nano Pin A6 auf High setzen on: May 10, 2012, 08:08:29 am
Hallo,

ich möchte den Pin A6 (Arduino Nano) auf High setzen. Wie funktioniert das? Bis Pin A5 ist das kein Problem. Ab Pin A6 funktioniert das nicht mehr.

So hatte ich mir das eigentlich vorgestellt:

pinMode(A6, OUTPUT);
digitalWrite(A6, HIGH);

Wäre super, wenn mir jemand weiterhelfen könnte.

Danke
12  Using Arduino / Programming Questions / Can I get 5 V output at an analog Pin? on: April 02, 2012, 10:53:00 am
I need 5V output voltage at an analog Pin. Is this possible?

How can I solve this problem?
13  International / Deutsch / 5V auf Analogem Pin ausgeben! on: April 02, 2012, 10:50:54 am
Hallo,

ich habe eine einfache Frage, kann ich auf einem analogen Pin auch dauerhaft 5 V ausgeben?

Wenn ja wie müsste ich das machen?

Gruß

Markus
14  Using Arduino / Programming Questions / Counting the impulses between two signals on: February 22, 2012, 11:01:50 am
Hi,

 I have two signals:

Signal 1: 1kHz frequency
Signal 2: user signal

My programm schould count the circles of signal 1 until signal 2 becomes active. The problem is, that the counter schould immediadly  start form 0 on to count until singal 2 becomes active again. So there schould be no circle of signal 1 lost between signal 2 becomes active. After signal 2 becomes active the numer of the circles of Signal 1 schould be given out on the monitor.

I´m sorry but I don´t know how I can realise this. Hopefully you can help me
15  International / Deutsch / Wie messe ich die Anzahl von Signaldurchläufen zwischen zwei Signalen? on: February 22, 2012, 10:51:11 am
Hallo,

ich habe auf dem Arduino Board zwei Eingänge.

Eingang 1: Ein Signal mit der Frequenz 1 kHz (Signal 1)
Eingang 2: Signal in unregelmäßigen Abständen (Signal 2)

Mein Programm soll die Anzahl der Durchläufe des Signal  1 ausgeben, wenn Signal 2 aktiv wird. Das Problem dabei ist, dass der Zähler sofort wieder bei 0 anfangen soll, wenn Signal 2 aktiv wird und anfängt wieder zu zählen. Wenn Signal zwei wieder aktiv wird, soll wieder der Wert ausgegeben werden. Dieser durchlauf so stetig durchlaufen.

Ich habe leider keine Ahung wie ich das realisieren kann. Meine Idee wäre einen Timer einzubauen und mit diesem zu zählen. Aber da bin ich auch hängen geblieben.

Wäre super wenn ihr mir helfen könntet.

Danke
Pages: [1] 2