DevBoy - wie ich ein Open Source-Geräteprojekt erstellt und ein Projekt auf Kickstarter gestartet habe

Hallo Freunde!

Mein Name ist Nikolai, ich bin schon lange ein Leser für Habr, aber irgendwie hat es beim Schreiben von Artikeln nicht geklappt. Es ist an der Zeit, diese Situation zu korrigieren, zumal es nur einen Grund gibt: Ich habe gerade eine Firma auf Kickstarter gegründet, um ein Open-Source-Gerät zu implementieren.



Wen kümmert es - ich bitte um eine Katze.

So kam es, dass ich seit meiner Kindheit Zugang zu den fortschrittlichen Technologien meiner Zeit ( Atari 65XE, ZX-Spectrum, EC1841 usw. ) hatte, die nicht nur die Berufswahl vorschrieben , sondern auch ein ausgezeichnetes ( meiner Meinung nach ) Hobby - Programmieren - einführten und etwas entwickeln.

In Zukunft hat mich das Schicksal erneut überrascht - die Möglichkeit einer Auswanderung in die USA vor drei Jahren. Gleichzeitig hatte ich zweimal Glück - fast sofort fand ich einen Job in genau dem Bereich, den ich wollte: C ++ und Mikrocontroller.

Von diesem Moment an erhielt mein Hobby einen neuen „ Schub “. Zuerst habe ich mich mit den hervorragenden STM32- Mikrocontrollern von ST Microelectronics getroffen ( vorher habe ich mich mit Atmel AVR beschäftigt ). Zweitens habe ich vom ersten Gehaltsscheck an einen 3D-Drucker gekauft. Im Wesentlichen bin ich ein Perfektionist - einerseits ist es gut - Sie tun Dinge ehrlich und andererseits ... manchmal ist es nicht möglich, das Projekt zu Ende zu bringen, nur weil es nicht „ perfekt “ läuft. Das Drucken von Gehäusen und die Möglichkeit, Leiterplatten zu bestellen, haben die Möglichkeiten, Projekte zu erstellen, tatsächlich auf ein neues Niveau gebracht.

Und als ich einmal die verschiedenen bestellten Module zum Aufbau eines einfachen Oszilloskops sortierte und versuchte, sie auf ein Steckbrett zu legen, erinnerte ich mich an ein Spielzeug, das ich vor langer Zeit gekauft hatte, als ich aufs College ging: GameBoy . Nachdem ich das mögliche Layout schnell geschätzt hatte, entschied ich mich : Ich werde es tun! Und sofort schoss mir eine Idee durch den Kopf: " Aber es werden nicht nur Tasten verwendet! Manchmal werden Joysticks verwendet, manchmal werden Drehungen verwendet ... warum nicht entfernbare Module herstellen? ". Und die Arbeit begann zu kochen: Löten des Prototyps, Programmieren, Entwickeln und Drucken des Gehäuses, erneutes Programmieren ... Als Ergebnis eines funktionierenden Prototyps wurde klar, dass die Idee nicht schlecht war. Auch hier wurde alles auf eine neue Art und Weise gedreht, nur die Phase der Bestellung von Leiterplatten wurde hinzugefügt, und zwar nicht nur für das Mainboard, sondern auch für alle Module, weil Geeignet konnte nicht gefunden werden. Da die Chinesen 10 Stück herstellen, wurde sofort beschlossen, eine kleine Serie herzustellen. Übrigens, nachdem ich diese Serie gemacht hatte, wurde mir klar, dass weiteres manuelles Löten ( dh kleine Serien mit mehr als 10 Teilen ) keine Option ist.

Als Ergebnis stellte sich heraus:



Zusammenfassende Funktionen:

  • Basierend auf dem Mikrocontroller STM32F415RG arbeitet der Cortex-M4-Kern mit einer Frequenz von 168 MHz
  • 1024 KB ROM und 192 KB RAM
  • 2,8 "Bildschirm mit einer Auflösung von 320x240 Pixel und 16-Bit-Farbe
  • Resistiver Touchscreen
  • Jeweils zwei Steckplätze für Eingangsmodule, 4 E / A-Leitungen ( 2 davon können das Signal mithilfe des ADC digitalisieren )
  • Erweiterungssteckplatz mit E / A-Leitungen von fast allen Pins des Mikrocontrollers
  • SD-Kartensteckplatz
  • Und natürlich Open Source

Das Gerät selbst von allen Seiten:



Und hier ist die Pinbelegung des Erweiterungssteckers:



Innen sieht alles so aus:



Hier ist ein Modul mit einem Mikrocontroller:



Und so ist seine Pinbelegung:



Bildschirmmodul:



Und ein Lithium-Ladegerät:



Und schließlich der letzte Teil - das Korps:





Orange Dinge sind Drücker. Das Entfernen des Moduls ist immer noch eine Aufgabe. Als Ergebnis wurden diese Drücker erfunden. Wenn das Modul eingesetzt ist, drückt es sie und die Tasten auf der Rückseite sind bündig mit dem Gehäuse. Wenn das Modul entfernt werden muss, drücken wir auf den Drücker und er drückt das Modul zusammen. Dann können Sie es einfach und einfach herausziehen.

Der Quellcode verdient einen separaten Artikel. Vielleicht schreibe ich es später. Von Software von Drittanbietern werden System Workbench für STM32 , STM32CubeMX und FreeRTOS verwendet. Dies sind alles kostenlose Projekte. Hierzu werden der C ++ FreeRTOS-Wrapper, Aufgaben der Bildschirmwartung, Touchscreen, Sound und Eingabe geschrieben.

Bild

Die Grafikausgabe ist besonders interessant - der Prototyp mit dem Mikrocontroller STM32F103 könnte ein Mario-Spiel mit einer Frequenz von 15 Bildern pro Sekunde mit einer Auflösung von 320 x 240 und nur 20 KB RAM an Bord anzeigen ( Bildpuffer ist ausgeschlossen ), während die Einschränkung höchstwahrscheinlich auf die SPI-Frequenz zurückzuführen war . Beim STM32F415 mit einer doppelt so hohen SPI-Frequenz werden 30 Bilder pro Sekunde ausgegeben.

Nun, abschließend werde ich die Links verlassen:


Ich wäre Ihnen dankbar, wenn Sie Ihren Freunden den Link zum Projekt mitteilen würden. Jetzt geht es hauptsächlich darum, eine kritische Masse an Menschen zu gewinnen, um eine Kettenreaktion auszulösen. Es ist notwendig, dass möglichst viele interessierte Menschen etwas über das Projekt erfahren.

Wenn Sie mich nach langfristigen Plänen fragen, was ich am Ende möchte, ist die Antwort einfach: Erstellen Sie ein Unternehmen mit der Ideologie offener Software und offener Hardware, machen Sie Ihre Lieblingssache und helfen Sie anderen Menschen, wie Adafruit und Sparkfun es tun.

Wenn der Text plötzlich chaotisch erscheint - nicht streng beurteilen, es ist schon fast 1 Uhr morgens ... Fragen in den Kommentaren stellen - werde ich versuchen zu antworten.

Source: https://habr.com/ru/post/de423499/


All Articles