Universelles Steuerungsmodul für das Internet der Dinge



K66BLEZ1 ist eine Modulplatine zur Entwicklung einer breiten Klasse von Geräten, hauptsächlich im Bereich IoT , tragbare Elektronik und kleine Automatisierung. Es verfügt über eine Vielzahl von Eingangs- / Ausgangsanschlüssen und Schnittstellen, was ihm außergewöhnliche Vielseitigkeit verleiht. Erstellt auf den neuesten NXP-Mikrocontrollern aus der Kinetis- Familie. Hat ein Funkmodul mit Unterstützung für Bluetooth LE 4.2 und ZigBee an Bord. Es gibt auch Steckplätze für microSD- Karten und USB 2.0 HS mit Unterstützung für Geräte- , Host- , OTG- Modiund ein 3,6-V-Lithium-Ladegerät. Auf der Unterseite werden zwei Steckplätze mit 60 Kontakten angezeigt. Es gibt eine nichtflüchtige Echtzeituhr mit einer separaten Batterie. Das Board wird von Open Source Software begleitet .


Kurz über das Board.


Auf der Karte sind zwei Mikrocontroller installiert: MK66FN2M0VLQ18 (180 MHz, 2 MB Flash, 256 KB RAM) und MKW40Z160VHT4 (48 MHz, 160 KB Flash, 20 KB RAM) . Die erste für die Hauptanwendung und die zweite für die drahtlose Kommunikation. 90 Signalpins des MK66-Mikrocontrollers werden an zwei externe Anschlüsse geleitet.

6- PCB 2,4 .
— FR4,
.
Immersion gold ENIG.


( )


UMC.


.

( )


C (3D) Altium Designer.
c .


( )


Darstellung eines Modulschaltungselements in der Altium Designer- Umgebung


(Zum Vergrößern anklicken)




Moduldiagramm K66BLEZ1.


Klicken Sie hier

Die meisten Ausgänge des Mikrocontrollers MK66FN2M0VLQ18 sind mit zwei externen Anschlüssen verbunden. Die Anschlüsse sind so ausgewählt, dass das Modul bequem vom Motherboard angeschlossen und getrennt werden kann.
Die Stromversorgung der Karte erfolgt entweder über einen USB-Anschluss oder über die Erweiterungsanschlüsse X6, X7. Die Mikroschaltung des Ladegeräts BQ24296RGET ermöglicht eine zuverlässige autonome Aufladung einer Lithiumbatterie über USB mit Steuerung von Strom, Spannung und Batterietemperatur.

Die Reihenfolge der Inbetriebnahme der Karte.



Erster Schritt. Stromversorgung des Moduls.


Die Stromversorgung erfolgt über ein USB-Kabel. Der Stromverbrauch überschreitet 100 mA nicht, daher ist jede USB-Host-Schnittstelle des Computers geeignet. Während sich im Mikrocontroller kein Programm befindet, reagiert der Computer in keiner Weise auf den Anschluss des Moduls über USB.
Auf dem Modul sollte jedoch die PwrGood-LED leuchten. Die Ladegerät-LED sollte blinken, um anzuzeigen, dass der Akku nicht angeschlossen ist. Die LED „CPU“ ist programmiert und daher auch aus.

Schritt zwei Anschließen eines JTAG / SWD-Adapters und Überprüfen der Funktionalität von SWD-Kanälen.


Mikrocontroller auf der Platine verfügen über separate Anschlüsse zum Anschließen von Debugging-Adaptern über die SWD- Schnittstelle. Der K66-Mikrocontroller ermöglicht eine 3-Draht- SWD- Verbindung mit einem SWO- Signal (X3-Anschluss), und der MKW40-Mikrocontroller ermöglicht nur eine 2-Draht-Verbindung (X4-Anschluss). Dies stellt jedoch keine Einschränkungen für den Debugging-Adapter dar und kann für beide Mikrocontroller gleich sein.
Zum Debuggen verwende ich den J-Link- Adapter . Debuggen von Steckverbindern am Modul mit einem Abstand von 1,27 mm. Daher musste ich einen speziellen Adapter vom Standardadapteranschluss zum Modulanschluss herstellen, wie auf dem Foto unten gezeigt.

(Zum Vergrößern anklicken)


Obwohl der J-Link- Adapterund ist das beste seiner Klasse, aber Sie können billigere Debugger zum Debuggen verwenden, zum Beispiel ST-Link .
Um die Leistung von Debugging- und Programmierkanälen zu testen, verwende ich ein Dienstprogramm von Segger JFlash .
Mit diesem Dienstprogramm können Sie den Status aller Bereiche des Chipspeichers anzeigen, die Geschwindigkeit der Schnittstelle testen und den Flash-Speicher der Chips programmieren.

(Zum Vergrößern anklicken)



(Zum Vergrößern anklicken)


Mit JFlash konnte ich beide Chips am Modul verbinden und überprüfen.

Schritt drei Testen des ersten Programms für den K66-Mikrocontroller


Das erste Programm ist jedoch nicht Hello Word oder eine blinkende LED.
Als ersten Test wählen wir sofort den externen Laufwerksemulator über USB und den USB- Camcorder- Emulator aus .
Dies ist möglich, weil das Moduldiagramm das Schema der FRDM-K66F- Debug -Karte in vielerlei Hinsicht wiederholt .

Zunächst mussten Sie jedoch das SDK mit Beispielprogrammen herunterladen .
Ein SDK für das Board wird von einem speziellen Online-Tool auf der NXP.com- Website unter http://kex.freescale.com/de/summary?cas_auth=1 erstellt (dazu müssen Sie sich auf der Website registrieren). Wählen
Sie im Dialogfeld den Mikrocontroller MK66FN2M0xxx18 aus
Das Dialogfeld sieht wie folgt aus:

(Zum Vergrößern anklicken)


Sie müssen sofort die Entwicklungsumgebung bestimmen, in der das SDK kompiliert wird. Sie können etwas aus der Liste oder alles auf einmal auswählen. Die Liste enthält sowohl kommerzielle als auch kostenlose IDEs:

Ich wähle traditionell IAR . Meine jüngsten Untersuchungen zur Compilerauswahl haben erneut gezeigt, dass IAR ohnehin für ARM Cortex-M4 immer noch nicht im Wettbewerb steht .
Das SDK wird mit integrierten Beispielanwendungen und Peripherietests für die Karten frdmk66f und twrk65f180m erstellt . Fast alle Beispiele für das frdmk66f-Board sind auch für unser K66BLEZ1- Board geeignet. K66BLEZ1 SD USB HS .

: usb_device_cdc_vcom, usb_device_cdc_vcom_lite, usb_device_msc_sdcard, usb_device_video_virtual_camera.

SD usb_device_msc_sdcard — 200 /., — 1 /.
usb_device_video_virtual_camera PotPlayer x64. .

( )



Das Board zeigte eine zuverlässige Leistung. Die USB-Schnittstelle wurde mit einer vollen Geschwindigkeit von 480 Mbit / s getestet. Alle USB-Treiber auf der PC-Seite sind ebenfalls funktionsfähig. Die Debugging-Mechanismen beider Prozessoren funktionieren fehlerfrei, einschließlich SWD, Tracing und virtuellem COM-Port. Weitere Tests werden in zukünftigen Artikeln fortgesetzt.

Alle Materialien zu diesem Projekt werden hier gespeichert - https://github.com/Indemsys/K66BLEZ1

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


All Articles