Labortagebuch Februar 2020

 Elektronik-Labor  Notizen  Projekte  Labortagebuch

20.2.20: LED-Kerze mit IR-Steuerung



Schon länger habe ich mich gefragt, wie man LED-Kerzen mit Fernbedienung bauen kann, die so preiswert sind, dass man sie sogar in Mengen an den Weihnachtsbaum hängt. Ich war schon in Versuchung, sowas zu kaufen, aber der Gedanke an die vielen Batterien hat mich davon abgehalten. Jetzt habe ich ein vergleichbares Teil in die Finger bekommen, das allerdings sogar drei Farben hat, die man in verschiedenen Mischungen und Verläufen fernschalten kann. Innen finden sich ein IR-Empfänger, ein Mikrocontroller mit acht Beinchen, drei Vorwiderstände und die Dreifarben-LED.

Die LED-Kerze stammt aus dem billigsten Laden unter den preiswertesten Diskountern. Also muss auf dem Hersteller ein enormer Preisduck gelastet haben. Wie hat er das wohl geschafft. Der Mikrocontroller trägt keinerlei Beschriftung. Aber da kam mir ein Verdacht. In letzter Zeit ist viel die Rede von den 3-Cent-Controllern der Firma Padauk. Einige Maker haben schon damit experimentiert, und sogar der freie C-Compiler SDCC wurde schon dafür angepasst. Mein Freund Rainer hat ihn auch schon auf dem Tisch. Deshalb habe ich ihn gefragt, wo da die Anschlüsse der Betriebsspannung liegen. Beim PMS154C passt alles genau, VDD und GND an 1 und 8, drei PWM-Ausgänge an 5,6, und 7. Es gibt diese Typen als Flash-Controller, als OTP-Controller und vermutlich in großen Stückzahlen auch maskenprogrammiert. Wenn der Controller dann bei ca. 3 Ct liegt, ist er zumindest nicht das teuerste Teil in der Kerze.


http://www.padauk.com.tw/en/product/index.aspx                     
 
Aber irgendwie könnte man mit der Platine auch ganz andere Sachen machen als nur eine bunte LED steuern. Es ist praktisch eine vollständige Dreikanal-Fernsteuerung. Sie könnte auch einen kleinen Roboter steuern oder ein Radio, drei Relais oder noch ganz andere Dinge. Es gibt immer noch was zu tun…

Lichterkette mit Timersteuerung, von Dirk Reismann



Das Bild habe ich in einer Lichterkette aufgenommen, die in den Aldi-Filialen verkauft wurde. Hierbei könnte es sich auch um einen der "3-Cent" Mikrocontroller handeln. Leider ist der Controller nicht beschriftet. Da an dieser Schaltung nicht nur ein einfacher Ein-Aus-Schalter, sondern auch noch eine Timer-gesteuerte Zeitschaltuhr sitzt, könnte ich mir vorstellen, dass dort so ein Mikrocontroller eingebaut wurde. Nach meinen Messungen mit dem Spannungsprüfer habe ich an Pin 1 VCC und an Pin 8 GND gefunden. Unten Links (Pin 4) dürfte laut Datenblatt eine Art "Reset" zu finden sein. Diese liegt wie im Bild zu sehen auf GND (V-).


18.2.20: Hardware- oder Softwarefehler


Kennen Sie das auch? Oft weiß man nicht, ob man einen Hardware- oder einen Softwarefehler suchen soll. Gerade arbeite ich am Spielekalender 2020 und versuche, die letzten kleinen Fehler aus der Firmware zu entfernen. Dabei kommt es immer mal wieder zu Situationen, wo völlig unklar ist, woher der Fehler kommt. Ach so, die Batterie ist leer, sodass der Spannungswächter sporadisch zuschlägt! Das war also ein Hardware-Problem, da kann ich ja lange im Quelltext suchen.

Ein weiteres Problem hat mich verfolgt und sich am Ende ebenfalls als Hardwarefehler herausgestellt. Ich hatte nämlich zuerst den Aufbau auf einem weißen Steckboard, den ich schon seit Jahren verwende. Inzwischen waren aber die Kontakte schon so schlecht geworden, dass die Übergangswiderstände einen Einfluss auf den Programmablauf nehmen konnten. Deshalb habe ich jetzt alles auf einem neuen, gelben Steckboard neu aufgebaut. Und jetzt funktioniert endlich alles, wie es soll. Die gelben Steckplatinen mit verbesserten Kontakten waren speziell für die kritischen Radioprojekte ausgesucht worden. Aber hier haben sie sich auch bei dem weniger kritischen Mikrocontroller bewährt.


14.2.20: Serielle Signalanalyse




Auf der Suche nach einem Timingfehler in einem Projekt mit einem FT232 und einem Mega168 wollte ich die serielle Schnittstelle belauschen. Die Frage war, ob die Zeichen schneller kommen, als sie verarbeitet werden können. Ein erster Versuch mit dem Oszilloskop war nicht erfolgreich, weil zu viele Zeichen beteiligt waren. Deshalb habe ich einen Arduino Uno mit Bascom zur Zeiterfassung programmiert. Der Eingang RX wird mit dem RX-Eingang im Zielsystem verbunden, um den Datenverkehr zu belauschen. Timer 1 wird als Zeitmesser verwendet und nach jedem empfangenen Zeichen ausgelesen und dann auf Null gesetzt. Insgesamt werden 100 Bytes empfangen und gespeichert. In einem zweiten Array werden die zugehörigen Zeiten abgelegt. Nach 100 Bytes wird alles an das Terminal gesendet.

$regfile = "m328def.dat"                                     'ATmega328p
$crystal = 16000000                                          '16 MHz
$baud =  115200

$hwstack = 16
$swstack = 16
$framesize = 64

Dim d As word
dim ch as byte
dim n as word
dim rs(100) as byte
dim dt(100) as word

Config Timer1 = Timer , Prescale = 64
OPEN "com1:" for binary as #1
start timer1

do
  for n= 1 to 100
      get #1,  ch
      dt(n) = timer1
      timer1=0
      rs(n) = ch
  next n

  for n= 1 to 100
      d = 4 * dt(n)       'Verzögerun in µs
      print " "; d;" ";
      ch = rs(n)
      put #1, ch          'Empfangenes Zeichen
  next n
loop

Hier ein Ergebnis:

 62172 k 196 a 104 x 136   120 2 112 9 120 2 112

Die gesendeten Daten waren: "kax 292". Die gemessenen Zeiten zeigen, dass im schnellsten Fall 112 µs zwischen zwei Bytes liegen. Das passt relativ gut zur Übertragungsgeschwindigkeit 115200 Baud. Am Ende konnte ich übrigens feststellen, dass kein Timingproblem existierte. Aber ich hatte einige unnötige Zeilen im Programm, die zusätzliche Zeichen gesendet haben.



12.2.20: Lautsprecher aus dem Smartphone



Wer ein altes Samsung-Smartphone zerlegt, stößt auf eine integrierte Lautsprechereinheit mit  Kopfhörerbuchse. Auf den ersten Blick sieht es so aus, als wären alle Bauteile in Plastik eingegossen. Aber heute ist mir zufällig ein kleiner Ritz aufgefallen. Mit etwas Gewalt konnte ich zwei Hälften der Einheit trennen. Und da kommt der eigentliche Lautsprecher zum Vorschein.



In der Vergrößerung erkennt man eine rechteckige Schwingspule und einen rechteckigen Magneten. Die Membran ist wie bei einem großen Lautsprecher federnd aufgehängt und hat nach oben und unten gleich viel Bewegungsraum. Inzwischen konnte ich zwei Drähte anlöten. Der kleine Lautsprecher hat einen guten Klang, wenn man ihn in eine Schallwand oder eine Box einbaut.


 Elektronik-Labor  Notizen  Projekte  Labortagebuch