Hallo, bisher habe ich immer mit AVR uCs und dem AVR Dragon zum flashen gearbeitet. Für ein neues Bastelprojekt benötige ich eine BLE Kommunikation und deshalb wollte ich direkt auf ein entsprechendes SoC setzen, dass eine BLE Schnittstelle, sowie einen ARM Controller hat (z.B. CC2640 von TI). Jetzt zu meiner Frage: wie bekomme ich den ARM Controller geflasht? Muss ich einen neuen Programmer kaufen oder kann man die SoCs auch über einen handelsüblichen Bluetooth Adapter am PC flashen? Wie handhaben andere Hersteller (außer TI) das? Vielen Dank schonmal!
Am einfachsten ist es natürlich immer die Tools des jeweiligen Herstellers zu nutzen. Von TI kann man zum Beispiel das RF06 Board als Debugger für den CC2640 nutzen. Da es sich aber halt um einen ARM Kern handelt, gibt es eigentlich immer die Möglichkeit via JTAG auf den Chip zu kommen. NXP bietet so zum Beispiel OpenSDA als Möglichkeit an oder man nimmt von J-Link von Segger zum Programmieren.
Chris K. schrieb: > Da es sich aber halt um einen ARM Kern handelt, gibt es eigentlich immer > die Möglichkeit via JTAG auf den Chip zu kommen. Nix. Grade die kleineren ARM für BTLE kennen oft nur SWD, weil da nur 2 Pins benötigt werden. Fieserweise hängt das manchmal vom benutzen Package ab ob JTAG verfügbar ist oder nicht.
Ich würde den Kauf eines neuen Programmieradapters gerne umgehen. Die meisten Wearables updaten ihre Firmware auch über Bluetooth, ohne das man sie irgendwo anschließen muss. Werden dort nur teile des Programms neu geladen oder wird das gerät wirklich komplett neu geflasht über Bluetooth?
Updates über Bluetooth laufen i.d.R. über die vorhandene Firmware ab, die muss dazu natürlich hinreichend funktionieren. Zum Firmware entwickeln taugt das nicht.
BLE1234 schrieb: > Ich würde den Kauf eines neuen Programmieradapters gerne umgehen. Die > meisten Wearables updaten ihre Firmware auch über Bluetooth, ohne das > man sie irgendwo anschließen muss. Werden dort nur teile des Programms > neu geladen oder wird das gerät wirklich komplett neu geflasht über > Bluetooth? Die haben dann einen entsprechenden Bootloader mit auf dem Controller. Den must Du aber auch erst einmal auf den Controller bringen.
Torsten R. schrieb: > Die haben dann einen entsprechenden Bootloader mit auf dem Controller. > Den must Du aber auch erst einmal auf den Controller bringen. Ok dann werde ich mal schauen ob ich alternativ einen 433 MHz Transceiver mit SPI Schnittstelle und AVR nehme oder einen neuen Programmer kaufe. In welchem Preisbereich bewegt man sich für einen neuen Programmer so ca?
BLE1234 schrieb: > In welchem Preisbereich bewegt man sich für einen neuen Programmer so > ca? Kommt auf's Target an. Bei den meisten Eval-Boards ist ja schon ein entsprechender Programmer dabei, der sich meist auch für eigene HW nutzen läßt.
BLE1234 schrieb: > Ich würde den Kauf eines neuen Programmieradapters gerne umgehen. Die > meisten Wearables updaten ihre Firmware auch über Bluetooth, ohne das > man sie irgendwo anschließen muss. Werden dort nur teile des Programms > neu geladen oder wird das gerät wirklich komplett neu geflasht über > Bluetooth? Für die Entwicklung und die Erstprogrammierung brauchst Du immer den passenden Programmieradapter. Später kannst Du dann OTA implementieren, was je nach Funknetz und Chip ein mehr oder weniger großer Zusatzaufwand ist. Für TI-ARM ist ein XDS100v3 oder ein XDS110 zu empfehlen, aber prinzipiell geht jeder JTAG-Adapter für ARM. Es kommt halt darauf an, welche Entwicklungsumgebung Du nutzen willst. TI unterstützt für die CC-Arm Serie IAR und sein eigenes CCS 6 oder 7. Für die 8051-Chips (zB CC2541) brauchst Du zwingend IAR EW8051 und den CC-Debugger - hier gibts keine Alternativen. Dafür sind die Chips selber schön billig. Einen XDS100v3-Nach bau gibts bei Olimex: https://www.olimex.com/Products/DSP/Emulators/TMS320-XDS100-V3/ fchk
BLE1234 schrieb: > wie bekomme ich den ARM Controller geflasht? Entweder per Bootloader, sei er im ROM oder im Flash, oder eben per Debugger. Für gewöhnlich benötigt man zum Debuggen zwei Dinge: 1. den Debug-Adaper, also die Hardware 2. einen sogenannten GDB-Server der die Kommunikation zwischen Debug-Adapter und sonstiger Software übernimmt Die wohl am verbreitetsten GDB-Server sind OpenOCD und der JLink-GDB-Server. Letzterer funktioniert nur mit den Debug-Adaptern von Segger und ist ein Profi-Werkzeug, wobei man als Student oder Hobbyist einen J-Link Edu für 50€ bekommt. Der "richtige" J-Link, der auch für kommerziellen Einsatz freigegeben ist kostet dagegen deutlich mehr. Jede Hersteller-IDE die etwas auf sich hält bietet von Haus aus Support für den J-Link und viele Hersteller (z.B. Nordic) packen einen J-Link Lite als Debug-Adapter auf ihre Dev-Boards. Debuggen und flashen kann man mit dem J-Link so ziemlich jeden Cortex-M der auf dem Markt ist. OpenOCD hingegen ist eine ziemliche Universallösung und funktioniert mit einer Viehlzahl an Debug-Adaptern und einer noch größeren Zahl an Debug-Zielen. Da das Debug-Protokoll (SWD - Serial Wire Debug) innerhalb der Cortex-M-Familie standardisiert ist, ist bei OpenOCD die Kombination von Debug-Adapter und Ziel-Hardware egal, solange beide unabhängig voneinander von OpenOCD unterstützt werden. D.h. man kann zum Beispiel mit einem ST-Link nicht nur STM32 debuggen und flashen, sondern z.B. auch einen NRF51822 von Nordic oder auch einen LPC800 von NXP. Genauso kann man mit einem LPC-Link auch STM32 Chips debuggen und flashen. Die Preise für die Debug-Adapter reichen von ca. 2€ für den ST-Link V2 Klon aus China, bis zu den mehrere hundert Euro teuren J-Link (die auch von OOCD unterstützt werden).
:
Bearbeitet durch User
Von Cypress gibt es ein Eval Board mit Programmer für 42€ bei Mouser evtl. bestelle ich mir das dann mal. Aus deren Informationen werde ich allerdings nicht ganz schlau, kann ich in der PSoC Creator IDE von Cypress auch ausschließlich in C Programmieren oder muss ich zwangsweise die grafische Programmierung nutzen? Hat jemand evtl. schon damit gearbeitet? Das CY8CKIT-042-BLE-A Eval-Board sieht auf den ersten Blick gar nicht mal so schlecht aus oder kann mir jemand etwas ähnliches empfehlen? Am liebsten wäre es mir wenn ich mit dem Eval Board auch andere Controller (des gleichen Herstellers) zusammen mit der kostenlosen IDE vom jeweiligen Hersteller flashen und debuggen könnte.
BLE1234 schrieb: > Von Cypress gibt es ein Eval Board mit Programmer für 42€ bei Mouser > evtl. bestelle ich mir das dann mal. Das darfst Du eigentlich als Privatperson nicht in die EU einführen, weil es keine EU-Funkzulassung hat, sondern nur eine für USA, Kanada und Japan. Steht so in der Doku drin. Zoll und Bundesnetzagentur können es aus dem Verkehr ziehen. Grund dafür ist vermutlich, dass in USA/CDN höhere Sendeleistungen im 2.4 GHz ISM-Band erlaubt sind (bis 1W, hier sind es nur 100 mW). Warum hast Du Dich dafür entschieden? Weil es billig ist (Eval-Boards sind oft vom Hersteller subventioniert) oder weil Du die PSOC-Programmierung so geil findest? Und ja, Du musst die Hersteller-IDE verwenden, um die Konfigurationsdaten für die Peripherie zu generieren. fchk
:
Bearbeitet durch User
Frank K. schrieb: > Das darfst Du eigentlich als Privatperson nicht in die EU einführen, > weil es keine EU-Funkzulassung hat Danke für den Hinweis! Frank K. schrieb: > Warum hast Du Dich dafür entschieden? Weil es billig ist (Eval-Boards > sind oft vom Hersteller subventioniert) oder weil Du die > PSOC-Programmierung so geil findest? In erster Linie weil es das einzige "bezahlbare" Eval Board war, das ich auf die schnelle finden konnte. Als Alternative gäbe es z.B. das 595-CC2650DK von TI. Kostet allerdings >300€... Ich werde mal noch etwas rumsuchen, bis 100€ wären ok aber darüber lohnt es sich nicht wirklich, da ich es nach dem Projekt auf absehbare Zeit nicht wieder brauchen werde. Welche Hersteller kommen denn noch in Frage für ähnliche Eval Boards?
Hallo, bei Cypress hat's auch noch das http://www.cypress.com/documentation/development-kitsboards/cy8ckit-145-40xx-psoc-4000s-capsense-prototyping-kit da ist ein BLE Modul mit drauf. So eins hab ich sogar noch rumliegen. -> Beitrag "Re: [V] Entwicklungskits STK500, Discovery, Nucleo, Nucleo Expansions" LG Christopher
Du kannst auch eins der billigen China NRF51xx/NRF52xx Boards nehmen. Dann noch das kleinste STM32 Nucleo (falls Du nicht schon iwo eins rum liegen hast). Den ST-Link da drauf flasht du zu nem J-Link um, brichst es runter und bastelst es an das NRF Board. Und programmieren/debuggen kannst dann mit der ARM Keil IDE. Hans
BLE1234 schrieb: > In erster Linie weil es das einzige "bezahlbare" Eval Board war, das ich > auf die schnelle finden konnte. Als Alternative gäbe es z.B. das > 595-CC2650DK von TI. Kostet allerdings >300€... Die Boards von Nordic liegen so bei 40-50€ und haben einen JLink-Programmer mit an board. Bei Nordic wird man auch nicht dazu gezungen, irgend einen Eclipse Clone des Herstellers für die SW-Entwicklung zu verwenden. Von TI würde ich echt die Finger lassen, wenn Dir Dein Sehenheil etwas wert ist ;-) mfg Torsten
BLE1234 schrieb: > In erster Linie weil es das einzige "bezahlbare" Eval Board war, das ich > auf die schnelle finden konnte. Als Alternative gäbe es z.B. das > 595-CC2650DK von TI. Kostet allerdings >300€... Suche mal auf ebay nach CC2640R2F. Du solltest da diverse Treffer haben, die alle so im Bereich 12...18€ liegen. Ist sogar BT 5.0. Einen JTAG-Debugger brauchst Du dann trotzdem noch, aber den kannst Du ja später noch für andere Projekte verwenden. fchk
Frank K. schrieb: > die EU einführen, weil es keine EU-Funkzulassung hat, sondern nur eine > für USA, Kanada und Japan. Steht so in der Doku drin Das BLE Mudul ist auch für die EU zertifiziert, da sollte es keine Probleme geben. http://www.cypress.com/knowledge-base-article/rf-regulatory-certifications-cy8ckit-143a-and-cy5676a-ble-256kb-module Die mcu wird ganz normal in c programmiert, die grafische Oberfläche dient nur der Konfiguration der Hardware. Wobei auch die wie gewohnt über Register möglich wäre, ist nur komplizierter.
Torsten R. schrieb: > Die Boards von Nordic liegen so bei 40-50€ und haben einen > JLink-Programmer mit an board. Danke, hab mir das nRF52 DK rausgesucht, der ARM ist zwar etwas überdimensioniert für mein Vorhaben aber das sollte kein Problem sein. Werde das ganze dann bei nächster Gelegenheit mal bestellen. Danke nochmals an alle die geholfen haben :D
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.