Archiv der Kategorie: Mikrocontroller

Der Quadcopter auf github

Es gibt tolle Neuigkeiten bezüglich des Quadcopter-Projekts. Den kompletten Programmcode kann man nun auf github finden. Der Code steht öffentlich zur Verfügung und wird immer weiter entwickelt. Mal kommt was neues dazu, mal werden bestehende Probleme beseitigt, mal werden ganze Klassen wieder umgekrempelt, weil man damit entweder Code sparen kann oder es anschließend einfacher komfortabler wird. Schaut es euch einfach in Ruhe an: Quadcopter auf github. Und wie immer: Bei Fragen, fragt.

Y-Adapter für den Logikanalysator

For english version please click here.
In diesem Blogbeitrag wollen wir Euch eine ganz einfache, aber sehr effiziente Lösung für das Debuggen von Schaltungen vorstellen. Wie Ihr vielleicht schon wisst, sind wir nun in der Lage die Signale, welche wir vom Mikrocontroller aus senden, auch mit einem Logikanalysator taktgenau zu messen. Nun möchte man manchmal auch die Antwort des angesteuerten Chips messen können, was uns auch zu der hier vorgestellten Lösung gebracht hat.
Wir bauen uns einen DIP-Y-Adapter!

So ist man in der Lage auf Platinen befindliche Steckleisten zu kontaktieren und die Signale auf zwei Geräte, in dem Fall den Logikanalysator und den Zielchip zu verteilen.

Y-Adapter für den Logikanalysator weiterlesen

AVR-Entwicklung in Eclipse und seine Tücken

Vielleicht ist es manchen von euch schon passiert, dass Eclipse in euren Quellcodes Fehler anzeigt, wo der Compiler keine sieht.

Das hat meistens den einfachen Grund, dass der Indexer von Eclipse nicht aktuell ist oder sogar Includes für den falschen AVR indiziert, sodass dann z.B. PORTC rot unterstrichen wird, obwohl euer ATMega16 den ja unterstützt.

Um das Problem zu lösen gibt es drei verschiedene Herangehensweisen vom einfachen MCU-Typ umstellen, über den Index neu zu generieren und die Holzhammermethode, die Eclipse anweist dann wirklich das Include zu verwenden. Dewegen will ich hier mal alle Möglichkeiten aufschlüsseln und zeigen wie man es nicht macht. Der Index wird übrigens erstellt, indem Eclipse alle Include-Pfade und die Includes, die ihr in eurem Code nutzt, durchscannt, damit es weiß welche Symbole, Konstanten, Variablen und Funktionen zur Verfügung stehen.

AVR-Entwicklung in Eclipse und seine Tücken weiterlesen

Unser erstes xMega-Testboard mit USB

Hallo liebe Bastelfreunde,

heute dürfen wir Euch wieder mit einem Update beglücken. Das Layout für das Testboard für den xMega mit USB-Anbindung ist fertig! Darauf kann der Chip im TQFP-Package mit 0.8mm pitch Platz finden, nicht zu verwechseln mit dem TQFN-Package von Atmel und einem pitch von 0.5mm. Die sonstige Beschaltung ist relativ einfach, die Platine bekam zur Spannungsregelung einen LM317 spendiert, vielleicht nicht die beste Wahl, aber ein Festspannungsrregler war gerade nicht zur Hand. Wichtig ist, dass man den Chip mit 3,3V betreibt und nicht mit den ursprünglichen 5V der USB-Schnittstelle. Die Datenleitungen der USB-Schnittstelle können auf 3,3V-TTL kommunizieren, daher stellt diese Art des Betriebs kein Problem dar. Leider ist der LM317 auch kein SMD-Modell, das Problem wird jedoch im nächsten Layout bestimmt besser gelöst werden. Lediglich die Schutzdioden wurden in dem Testboard nicht verbaut, dies sollte aber ebenfalls ein kleineres Problem darstellen.

Das Layout das ihr hier findet ist gespiegelt, um mit dem Tonertransferverfahren oder der Belichtungsmethode auf die Platine gebracht zu werden.

XmegaA3U_sch

 

Gruß

Thomas

 

 

USB-Anbindung zum XMEGA

Wir haben zwei neue xmega von Atmel geordert. Mit dabei ist dort ein Chip mit der Endung „U“, was auf einen nativen USB-Port hinweist. In der nächsten Woche werden wir mal ein Entwicklungsboard auf Basis dieses Mikrocontrollers aufbauen und dann mit der Anbindung dieses Chips an den Computer experimentieren. Weiterhin geplant ist die Kommunikation per Matlab, die später eine relativ einfache und flexible Möglichkeit bietet, Daten zu erfassen und zu verarbeiten.

Bis bald

Mikrocontroller Artikelwettbewerb

Hallo Leute

Wie ihr vielleicht schon erfahren habt, hat der Bastelkeller beim Artikelwettbewerb teilgenommen. Mit unserem Artikel über den DMA bei ATxmegas haben wir leider nur einen Platinengutschein gewinnen können, aber uns gleichzeitig für das nächste Mal vorgenommen, ein ganzes Projekt zu beschreiben wie es die hochplatzierten getan haben.
Für interessierte Leser werden wir den Artikel in bearbeiteter und erweiterter Form auch hier online stellen.

Bis bald!

AVR ISP mkII Kabelupgrade

Heute Nacht habe ich mal wieder eine für mich nützliche Erweiterung gebastelt, indem ich das ISP6-Kabel von unserem AVR ISP mkII Programmer mit einem Stecker erweitert habe, der von der Pinbelegung her exakt auf einen Atmega16 oder Atmega8535 passt. Das war unter anderem gerade deswegen notwendig, weil unsere RGB-LED-Matrix mal wieder umprogrammiert werden musste und unsere anderen Programmer aus dem Billigpreissegment ja einfach nicht mehr funktionieren wollten.

Hier seht ihr die fertige Friemelei:

AVR ISP mkII KabelupgradeAuf der kunstvollen Zeichnung im Hintergrund kann man die Verdrahtung erkennen und daneben ist nochmal die Pinbelegung eines Atmega16 aufgelistet zum Vergleich. Was hier auf den ersten Blick noch etwas verwirrend erscheint ist wohl der 10 kOhm Widerstand auf dem ISP6-Stecker. Dieser verbindet gerade Vcc und Reset, damit der Reset-Pin immer auf logisch 1 steht und unser Programmer nicht wie wild orange zu blinken beginnt. Normalerweise gehört dieser Widerstand direkt auf die Platine, auf der auch der AVR platziert ist, aber in unserem speziellen Fall war dieser Pull-Up dort noch nicht vorhanden und musste kurzerhand dazu gesteckt werden.

Günstig in die Welt der ARM-Prozessorprogrammierung einsteigen

Texas Instruments bietet aktuell ein low-cost evaluation kit um den hauseigenen ARM-Prozessor Stellaris an. Verbaut ist darin der LM4F120H5QR, der mit einer auf dem Evalutation-Board befindlichen USB-Schnittstelle programmiert werden kann. Wir haben eines dieser Boards für nur 4.99$ bestellt und werden Euch bald schon davon berichten können und einige kleine Tutorials aus der Welt der ARM-Prozessoren zeigen.

Einige der Features der Stellaris-Serie möchte ich dann mal noch hervorheben, weil sie gerade auch im Hobbybereich von Belang sein können. So bieten diese mit 80MHz laufenden Chips z.B.:

  • 32Bit CPU
  • Eingebaute ADCs (12Bit)
  • FPU für Fließkommaoperationen
  • PWM-Ausgänge
  • 4 SPI-Schnittstellen
  • Flashspeicher von 32 bis 256kB

Wie ihr seht, erhaltet ihr damit ein recht leistungsstarkes Paket für wenig Geld. Weitere Informationen erhaltet ihr bei Texas Instruments.

Ich werde mal gleich beginnen, die zugehörige Software von TI zu installieren, damit es so schnell wie möglich mit dem Experimentieren los gehen kann.