Arduino Schaltungen #3 : Knight Rider Lauflicht

Das LED Lauflicht soll jetzt hin und her laufen, also ändern wir die Programmierung der vorherigen Lauflicht Version.

// C++ code 
// 

int l=0;
bool up=1;

void setup() { 
  for( int i=8; i<=12; i++) {
    pinMode(i, OUTPUT); 
  }
} 

void loop() { 
  delay(300);
  if(up) l++; // l=l+1
  else l--;
  if(l>=6) {
    l=4;
    up=0;
  }
  if(l<=0) {
    l=2;
    up=1;
  }
  switchled(l);
}

void switchled(int n) {
 for( int i=8; i<=12; i++) {
    digitalWrite(i,0); 
  }
  if(n==1) digitalWrite(12,1);
  if(n==2) digitalWrite(11,1);
  if(n==3) digitalWrite(10,1);
  if(n==4) digitalWrite(9,1);
  if(n==5) digitalWrite(8,1);
}

von Matthias Busse

Arduino Schaltungen #2 : LED Lauflicht

Ein LED Lauflicht wird aufgebaut und programmiert.

Und hier das fertige Programm:

// C++ code 
// 

int l=0;

void setup() { 
  for( int i=8; i<=12; i++) {
    pinMode(i, OUTPUT); 
  }
} 

void loop() { 
  delay(300); 
  l++; // l=l+1
  if(l>=6) l=1;
  switchled(l);
}

void switchled(int n) {
 for( int i=8; i<=12; i++) {
    digitalWrite(i,0); 
  }
  if(n==1) digitalWrite(12,1);
  if(n==2) digitalWrite(11,1);
  if(n==3) digitalWrite(10,1);
  if(n==4) digitalWrite(9,1);
  if(n==5) digitalWrite(8,1);
}

von Matthias Busse

Arduino Schaltungen #1 : Eine eigene LED am Arduino.

So wird eine eigene LED an den Arduino geschaltet und im Programm angesprochen.

Und hier das Programm dazu:

// C++ code
//

bool b=0;

void setup()
{
  pinMode(12, OUTPUT);
}

void loop()
{
  digitalWrite(12, b);
  delay(1000); // Wait for 1000 millisecond(s)
  b=!b;
}

 

 

10MHz OCXO Frequenz mit einem einfachen GPS USB Stick abgleichen

Den USB GPS Stick aus dem vorherigen Beitrag habe ich genommen und möchte die PPS Frequenz auf 2MHz einstellen.

Dazu gibt es bei u-blox die Software u-center kostenlos. Ich habe hier die Version 22.07 installiert und den USB GPS (bei mir COM 9) verbunden.
Receiver > Connection > COM9

Dann habe ich unter View > Configuration View das Fenster geöffnet Weiterlesen

GPS USB Stick mit 1PPS Signal

Ich habe hier einen simplen USB Stick aus China. Er wird dort z.B. unter der Bezeichnung VK-172 verkauft für unter 10 Euro. Verbaut ist ein u-blox7 Chip UBX-G7020-KT. Die GPS Patch Antenne ist eingebaut sodass es ein kompletter GPS Empfänger in einem sehr kleinen Gehäuse ist. Er hat auch schon einen USB A Anschluß Stecker dran.

Im Datenblatt ist angegeben dass er auch ein 1 PPS (1 Impuls pro Sekunde) raus geben kann und das Signal mit dem GPS Signal synchronisiert ist. Weiterlesen

TTP-229 touch pad am STM32 blue pill mit der Arduino Software programmiert

Nachdem ich nun das STM32 Board von der Arduino Software mit einem FTDI USB Adapter programmieren kann (Beschreibung hier) , will ich einmal das letzte Programm für das TTP-229 Touch Pad hier laufen lassen.

Geändert wurden die Anschlüsse:
Das TTP229 Touchpad wir jetzt mt 3,3V betrieben, dann nimmt es auch die Daten mit 3,3V und gibt sie entsprechend aus. Deshalb wird es an den 3.3V Pin und Masse angeschlossen.
SCL >> Pin B13
SDO >> Pin B12
Beeper+ >> Pin B15 Weiterlesen

Das STM32F103C8T6 Board mit der Arduino Software programmieren

Im Moment (Ende 2022) sind Arduinos schlecht zu bekommen, da die Chips ATMEGA328P Mangelware sind. Ich habe mich etwas umgesehen und bin auf das Board „Blue Pill“ mit einem STM32F103C8T6 Chip gestossen. Dieses ist weiterhin günstig zu bekommen und ist ähnlich wie der Arduino Nano aufgebaut.

Es hat aber einige Vorteile:
– 72MHz Taktfrequenz
– RTC Uhr eingebaut
– 64kB Flash Speicher und 20kB RAM
– 12bit AD Wandler
– 3x USART serielle Schnittstelle (Rx / TX)
– 2x SPI, 1x I²C, 1 x CAN Schnittstelle
– 37 GPIO Anschlüsse
– 3,3V für Spannungsversorgung und Daten, wobei viele Datenleitungen 5V tolerant sind.
und einiges mehr.

Weiterlesen

Teil 3 : 16er Touchpad TTP229 mit Bestätigung, Kommastellen und +/- Wechsel

Die TTP229 – 16 Touch Tasten Platine und der Arduino sind erweitert worden durch einen 5V Pieper.
Jetzt können auch Kommazahlen / Nachkommastellen eingegeben werden.
Das Vorzeichen kann gewechselt werden + oder –
Die Taste 10 ist zur 0 geworden.
Der Pieper bestätigt jetzt die Tasteneingabe mit einem kurzen Ton.

Ich hatte Probleme, das die Tastatur ohne Betätigung zufällig Zahlen eingelesen hat. Meist waren es die 6 oder die 7.
Das lag daran dass die Platine flach auf dem Holztisch gelegen hat. Da hat die interen Kalibration der TTP229 Chips nicht gut gearbeitet und Tasten erkannt die gar nicht gedrückt waren. Das liess sich aber einfach beheben, ich habe oben einfach zwei M3x8mm Schrauben rein gedreht und damit die Platine etwas vom Tisch angehoben. Nun funktioniert es zuverlässig und gut. Weiterlesen

Teil 2: Eine längere Zahl mit dem TTP229 Touch Pad eingeben und bei ENTER ausgeben.

Mit dem 16er Touch Pad wird eine Zahl eingelesen mit mehreren Ziffern und bei Enter wird diese Zahl ausgegeben. Als ENTER Taste wird die Taste 16 verwendet.

Der Aufbau ist identisch wie in diesem Beitrag. Weiterlesen