Coole Dinge für neuere ATMegas und Tinys

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Coole Dinge für neuere ATMegas und Tinys

      Wenn es dann mal so weit ist und BASCOM die neueren Chips mit uPDI unterstützt kommen schöne kleine Sachen in Reichweite, für die heute immer mehr Aufwand nötig ist oder es keine zufriedenstellende Lösung gibt. Hier sind ein paar schöne Möglichkeiten mit den so genannten Core Independent Peripherals (on AVR) beschrieben - LINK.

      Anfänglich war ich skeptisch was ich damit anfangen soll, aber es eröffnet neue Möglichkeiten mit wenig Aufwand die Hardware im MC zu kombinieren.

      Vielleicht bin ich auch ein bissel spät mit dem Thema und Ihr macht das schon seit 3 Jahren...
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.
    • Ja, na klar.
      Das in der AppNote beschriebene Beispiel ist ziemlich praxisnah. Folgende Funktion wird dort abgebildet:
      • Der Anwender drückt einen Taster
      • Die Entprellung erfolgt mit Hilfe des integrierten RTC, dessen 32kHz herunter geteilt als Torsignal verwendet wird.
      • Über einen Filter werden Spikes aussortiert und beim Erkennen eines dauerhaften Tastensignales eine ADC-Messung angestoßen.
      • Sobald die Messung fertig ist erfolgt per Interrupt die Signalisierung das Ergebnis per UART zu senden.
      • Das passiert mit dem integrierten Eventsystem und der konfigurierbaren Logik. Ohne Programmcode, abgesehen von der einmaligen Konfiguration.

      Einbinden lassen sich die IO‘s, ADC, TIMER, COMPARATOR, USART, SPI. Dieser Teil wird vielleicht nochmal erweitert. Zusätzlich gibt es Logikfunktionen wie AND, NAND, OR, XOR, NOR, NOT oder D-/JK-/ RS-Flip-Flop, Flankenerkennung, Synchronisierung, ...
      Und einzelne Logikblöcke lassen sich miteinander verknüpfen.
      D.h., je nach MCU gibt es dann 2...4 solcher Logikeinheiten.

      Verständlich geworden?
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.
    • Was auch recht problemlos geht: Ansteuerung von WS2812 per Hardware.

      Anmerkung am Rande: Die 16Bit Timer lassen sich in zwei unabhängige 8Bit Timer aufteilen.
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.
    • Mich haut das noch nicht um. Da war noch nichts dabei, was man nicht jetzt auch machen könnte. Tasten entprellen, WS2812, Timer für verschiedene Dinge benutzen... Das geht doch alles jetzt auch sehr gut. Mir ist doch egal, wenn das in Software gemacht wird - dafür ist der AVR doch da, um meine Befehle abzuarbeiten. So wie Du das beschreibst, müsste BASCOM quasi zu einer ganz neuen - ereignisorientierten/objektorientierten? - Sprache aufgebohrt werden und man beschreibt dann am Anfang, wie welche Hardware auf was reagieren soll. Das wäre eine neue Denkweise und meines Erachtens komplexer zu erlernen - nur, um am Ende zu den selben Ergebnissen zu kommen wie bisher. Die meisten möchten doch Uhren, Temperaturmessungen oder Blinker oder Anzeigen verschiedener Art haben, ohne sich zu tief in eine Programmiersprache einarbeiten zu müssen. Die meisten bauen ab und zu ein kleines Projekt und haben nicht als Ziel, Programmierprofi zu werden. Ich spreche mich nicht gegen Fortschritt aus, aber ich spreche mich für das jetzige BASCOM aus, das es ermöglicht, alles so schön verständlich realisieren zu lassen. Bei den Beispielen von Dir habe ich noch nichts gesehen, bei dem ich sage: „aha, stimmt, das wollte ich immer schon machen, aber das ging bisher nicht“. Kommt mir ein bisschen vor, wie mit den Xmegas. Da gibt es auch Leute, die dafür schwärmen, aber auch da habe ich noch nicht die Liste der Projekte gesehen, die mich zum Umstieg überzeugen, weil ich etwas ohne die nicht machen konnte. Ich sehe drei Motivationen, auf eine neue Plattform umzusteigen: Entweder es gibt wirklich neue, bisher nicht abbildbare Dinge oder ich möchte mich aus reinem Spaß/Selbstzweck damit beschäftigen oder bisher bewährte Lösungsmöglichkeiten werden ärgerlicherweise nicht mehr unterstützt, weil irgendjemand Geld verdienen möchte. Im Profibereich sieht das etwas anders aus: Da gibt es eventuell noch gesetzliche Änderungen und da bezahlen die Unternehmen dann für den Umstieg.
    • @stefanhamburg, weder bin ich als Missionar unterwegs noch verkaufe ich im Namen von Microchip die neuen Schaltkreise - es ist „nur“ die Begeisterung für neue Möglichkeiten. Und eine Bewertung, besser/schlechter, ist in meinen Zeilen nicht enthalten und auch nicht mein Ziel.

      Und ja, die Möglichkeiten kann ich gut gebrauchen. Eben weil ich Kram außen herum nicht mehr (Hardware) brauche und vor allem zeitkritische Themen zu lösen.

      Und: Projekte/Software ist besser zu warten, einfacher zu erweitern und ermöglicht auch die Lösung komplexer Aufgaben, für die bei mir manchmal der Aufwand zu hoch ist.

      Beispiel: Mein letztes größeres Projekt zur Erkennung von IR- und Funktelegrammen, da kann ich sehr wahrscheinlich 50% der kritischen Sachen in Hardware gießen. Da ging eine Auswertung bestimmter Signale z.B. gar nicht Bei 8 MHz und ohne ASM erst recht nicht.

      Und noch ein paar Beispiele:
      • Thema LED: Beim Thema Soft-PWM - wenn ich z.B. mehr LED‘s steuern will als Hardware-Kanäle da sind, muss man auch tiefer rein in die Programmierung.
      • Thema Tasten Entprellen oder Touch: Auch hier braucht man ein Konzept, wenn mehr als bloß LED ein/aus gemacht werden soll. Vor allem wenn die Zeit begrenzt ist (Protokolle oder die Reaktion angemessen schnell kommen muss)
      • Interrupts: Kommen von der Hardware, das Event in dem genannten Fall auch - trotz der Konfiguration per Software.


      Es kommt immer auf die Umstände an, ob „man“ das braucht, oder eben nicht.
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.
    • Ich denke monkey wollte eigentlich nur informieren, dass es jetzt Controller gibt, die etwas mehr können (Hardwareseitig).
      Eben diese Programmierbaren Logik-Einheiten per LookUp-Table etc.

      Mich erinnern die Erweiterungen an PLC's und PAL Dinge.
      Interessant finde ich das schon auch, dass man damit Gatter etc. machen kann.

      Aber wenn ich das jetzt richtig aufgeschnappt habe, gibt es nur 2 bis max. 4 solcher programmierbaren (Prozessor-Abhängig) Logik-Einheiten.
      Jede mit 3 Eingängen und einem Ausgang. Damit kann man nicht wirklich viel anfangen.
      Für eine 7-Segment-Anzeige würde es nicht reichen (denke ich). Einen Zähler oder Teiler mit 3 Stufen wäre denkbar.

      Bei dem Thema Soft-PWM bin ich hellhörig geworden. Das ist schon Resource-fressend. Um so mehr, je höher die PWM-Frequenz und die Auflösung ist.
      Aber auch hier kann ich mir nicht vorstellen, wie man das auf die Hardwareschine umgebogen bekommt. Die LUT-Tables werden auch hier nicht ausreichen (vermute ich).

      Ich muss da dem Stefan Hamburg zustimmen in dem Punkt, dass ich auch keinen Grund sehe umzusteigen.
      Bisher habe ich auch immer alles so hinbekommen.

      Ich spreche hier natürlich jetzt nur für mich. Aber aus aktueller Sicht sehe ich für mich keine Notwendigkeit für diese AVR-Typen.

      Aber wer weiß, was die Zukunft bringt. Vielleicht gibt's ja doch mal ne Anwendung.
    • monkye wrote:

      Lösung komplexer Aufgaben
      Da wäre doch ein konkretes Beispiel nützlich, bisher klingt das eher nach kleineren Modernisierungen die einen Haufen weitere Register mitbringen die man erstmal beherrschen muß. (Ähnlich z.B. das alle Pins pcint werden konnten beim tiny84) Ein eher kleiner Vorteil, den man jedoch vermisst wenn er nicht verfügbar ist (Mega8)
    • monkye wrote:

      Anfänglich war ich skeptisch was ich damit anfangen soll, aber es eröffnet neue Möglichkeiten mit wenig Aufwand die Hardware im MC zu kombinieren.
      Das sind in der Tat interessante Sachen.
      Gerade die Logikgatter-Geschichte finde ich enorm nützlich, das hätte ich manchmal gebraucht.

      Mitch64 wrote:

      Ich denke monkey wollte eigentlich nur informieren, dass es jetzt Controller gibt, die etwas mehr können (Hardwareseitig).
      Ja, dafür an monkye ein Dankeschön.

      Ich fürchte aber, diese neue Architektur wird denselben Weg wie der Xmega gehen.
      An sich ganz nützlich, aber nicht wirklich.
      Wenn es anstrengend wird, nimmt man einfach einen Raspi.

      Das Gefrickel mit der neuen Programmierschnittstelle kommt dann auch noch dazu, oder?
    • Stimmt, es ging um Informationen und die unterschwellige Frage, ob damit schon jemand arbeitet. Und „neu“ ist ja nicht wirklich richtig - die gibts ja schon fast 3 Jahre.

      Viele Register: Nee, ist überschaubar und sprechend einfach.

      uDPI-Schnittstelle: In der BASCOM-Hilfe ist von einem Widerstand + eine serielle Schnittstelle die Rede.

      Umsteigen: Kleinere Gehäuse mit Möglichkeiten eines Mega und mehr.

      Beispiele: Ausgänge können geroutet / konfiguriert werden - macht Projekte möglich ohne zum > TQFP44 Gehäuse wechseln zu müssen. (z.B. die Timer-Ausgänge an den meisten Pins der Ports)
      Mehr als ein UART in Hardware, ohne zu viel Zeit zu verlieren und die Main-Loop bleibt übersichtlicher...
      Aus datenschutzrechtlichen Gründen befindet sich die Kontaktdaten auf der Rückseite dieses Beitrages.