Quadrokopter mit STM32F103CBT6

Hallo,

ich hatte dieses Projekt bereits bei mikrocontroller.net und fpv-community.de vorgestellt.
Leider interessiert das dort niemanden. Jedenfalls kamen von dort keine Rückmeldungen.

ich habe hier https://github.com/nichtgedacht/mini-sys ein komplettes
Projekt für OpenSTM32 System Workbench (http://www.openstm32.org) hin
gelegt.

Das Projekt lässt sich auf Knopfdruck installieren und ist für mich die
Grundlage für alles weitere. Der original Code für das LCD stammt wie
der übrige hinzugefügte Code aus den Firmware Repos von STM für den
STM32F4xx und den STM32F1xx soweit es das Display und die SD-Card betrifft.
Diesen Code habe ich stark verbessert, so dass man 1. Display beliebig drehen kann
und 2. mehr der Chip vom Display die Arbeit macht. Da der initiale Code für die
Peripherie der MCU mit CubeMX erzeugt wurde, kann man damit auch weiterhin
die Konfiguration verändern. Dieses Tool und die IDE sind auch für Linux erhältlich
und beide sehr einfach zu installieren und kostenlos.

Als Hardware eignet sich eins dieser billigen Boards "STM32 minimum
development system" oder ein maple mini clone mit STM32F103CB und
eins dieser ST7735 gesteuerten Displays mit 128x160 Pixel und SD Karten Slot
wie z.B das Teil von Adafruit oder ähnliche. Was man noch braucht sind ein
paar Drähte eine Lochrasterplatte, Buchsenleisten und ein ST-Link V2 Debug
Adapter, den man ebenfalls günstig bei ebay bekommt. Damit kann man
den Code bis runter auf Assemblerebene in Einzelschritten ablaufen lassen oder
eben auch die Software einfach nur hochladen.

Als Sensoreinheit verwende ich ein Breakout Platinchen mit einer MPU-9250 IMU.
Darauf sind 3 Gyros, 3 Accelerometer und 3 Magnetsensoren.
Der Empfänger von Jeti hat die Firmware mit Futaba S-Bus. Damit überträgt
das System 16 Känäle digital mit 2000 Steps pro Kanal in 17 ms.

Inzwischen fliegt die Lochrasterplatine als Quadokopter in Racergröße der sich
durchaus zum rumheizen eignet. Dabei benutze ich bisher nur die Gyros
und fliege das Ding, wie bei Racern üblich, wie einen Hubschrauber.

Ich war Heute damit auf einem Modellflugplatz und man hat mir bestätigt, dass
das Teil sehr gut fliegt. Mir persönlich wackelt er in bestimmten Situationen
noch zu stark.

Ich würde mich freuen, wenn ich sich hier jemand findet der das Teil nachvollzieht
und verbessert. Die Hardwarekosten sind ja sehr überschaubar und die Platine ist
an einem Regentag zusammengelötet.

Der Rahmen auf dem Foto ist ein Teil für 8,5€ von Hobbyking. Mit 1000er 3s Akkus
fliegt der Kopter über 10 Min. bis die Spannung unter 10V geht.

Gruß
Dieter


.
 

Anhänge

  • 2016-06-17_17:22:30_1863_E-M10_SRGB-resized.jpg
    2016-06-17_17:22:30_1863_E-M10_SRGB-resized.jpg
    169,1 KB · Aufrufe: 55
  • 2016-06-17_17:23:02_1864_E-M10_SRGB-resized.jpg
    2016-06-17_17:23:02_1864_E-M10_SRGB-resized.jpg
    143,7 KB · Aufrufe: 51
  • 2016-06-17_17:24:48_1865_E-M10_SRGB-resized.jpg
    2016-06-17_17:24:48_1865_E-M10_SRGB-resized.jpg
    76,6 KB · Aufrufe: 72
  • 2016-06-14_17:25:29_1860_E-M10_SRGB-resized.jpg
    2016-06-14_17:25:29_1860_E-M10_SRGB-resized.jpg
    131,7 KB · Aufrufe: 65
  • 2016-06-12_22:18:43_1856_E-M10_SRGB-crop.jpg
    2016-06-12_22:18:43_1856_E-M10_SRGB-crop.jpg
    86,6 KB · Aufrufe: 61
  • 2016-06-12_22:18:43_1856_E-M10_SRGB-resized.jpg
    2016-06-12_22:18:43_1856_E-M10_SRGB-resized.jpg
    117,3 KB · Aufrufe: 46
Der Empfänger von Jeti hat die Firmware mit Futaba S-Bus. Damit überträgt
das System 16 Känäle digital mit 2000 Steps pro Kanal in 17 ms.

Ich muss mich hier korrigieren.
Die 16 Kanäle werden als 25 Bytes natürlich in 3ms übertragen. Nur die
Wiederholzeit vom Jetisender ist eben 17ms.

Die Baudrate also Bitrate ist 100000/s.
Da das serielle Protokoll 8E2 ist, also 1 Startbit, 8 Datenbits, 1 even Paritybit, 2 Stopbits
also 12 Bit pro Byte Nutzdaten, haben wir
25 * 12 / (100000 / s ) = 3 ms.

Gruß
Dieter
 

Sepp62

User
Ah, ok. Bei den 2 Stoppbits habe ich automatisch an Jeti gedacht.

Es ist übrigens ein schönes Projekt. Ich hoffe, es bekommt noch die Aufmerksamkeit, die es verdient. Ich fliege leider keine Copter, sonst wäre ich dabei.

Grüße
Bernd
 
Hi

Die PID Werte der Regler sind jetzt mit der Fernsteuerung im RAM editierbar. Ein Schreiben der Werte in eine der oberen Flashpages ist vorbereitet.
Dann wird man beim Start mit einer Schalterstellung am Sender auswählen können, ob die Defaultwerte oder die aus der Flashseite
ins RAM kopiert und benutzt werden.

Warum spielt eigentlich keiner mit mir :-(

Gruß
Dieter
 
Hi

Ich habe jetzt das UDI16 (Jeti) resp. SRXL16 (Multiplex) implementiert. Man spart den S-Bus Pegel Inverter und die Auflösung ist doppelt so hoch (max 4095 Schritte)
Der Frame wird auch in 3ms übertragen obwohl hier 35 Bytes gesendet werden statt 25 wie bei S-Bus. Die Baudrate ist eben entsprechend höher. Der Timer wird jetzt mit
4 MHz geclockt und der Autoload-Register-Wert und die Servo-Werte wurden verdoppelt um der höheren Auflösung gerecht zu werden. Die Werte von S-Bus wurden einfach
verdoppelt "<< 1" um sie kompatibel zu machen.

Anbei das Timing der Steuerung, hier noch mit S-Bus. Die erste Zeile sind die SPI Daten die aus der MCU rauskommen. Die zweite Zeile die Daten die rein gehen. Die dritte Zeile
ist clock. Die vierte Zeile ist /chip enable vom IMU.Die fünfte Zeile ist S-Bus auf dem UART. Die sechste Zeile ist ein Servokanal bei Vollgas.

Auf dem vierten Bild kann man erkennen wie die Gyros abgefragt werden. Auf dem SPI Bus werden anschließend sechs 0-Bytes gesendet und damit das Ergebnis aus dem IMU Chip
rausgetackert. Das passiert in jedem 5ms Abschnitt, während das Display nur in jedem vierten Durchgang bedient wird. Die Daten vom RC-Empfänger sind zufällig positioniert da sie
von einem externen Interrupt rein kommen. Man kann im Jeti Sender die Wiederholrate getrost auf 5ms stellen. Da der Sender mit 100Hz sendet werden dann die vom Empfänger zur
FC gesendeten Daten aber nur jedes zweite Mail aktualisiert.

Gruß
Dieter
 

Anhänge

  • timing-flight1.jpg
    timing-flight1.jpg
    44,2 KB · Aufrufe: 63
  • timing-flight2.jpg
    timing-flight2.jpg
    43,7 KB · Aufrufe: 60
  • timing-flight3.jpg
    timing-flight3.jpg
    43,2 KB · Aufrufe: 61
  • timing-flight4.jpg
    timing-flight4.jpg
    41,6 KB · Aufrufe: 123
Hi

Eine neue Platine.
Diesmal mit Plan und besser gestaltet.

Gruß
Dieter
 

Anhänge

  • 2016-07-15_17:33:16_1868_E-M10_SRGB-mod-resized.jpg
    2016-07-15_17:33:16_1868_E-M10_SRGB-mod-resized.jpg
    206,2 KB · Aufrufe: 62
  • 2016-07-18_19:50:11_1888_E-M10_SRGB-mod-resized.jpg
    2016-07-18_19:50:11_1888_E-M10_SRGB-mod-resized.jpg
    179 KB · Aufrufe: 78
  • 2016-07-15_17:34:44_1869_E-M10_SRGB-resized.jpg
    2016-07-15_17:34:44_1869_E-M10_SRGB-resized.jpg
    151,5 KB · Aufrufe: 69
  • 2016-07-15_17:38:39_1870_E-M10_SRGB-resized.jpg
    2016-07-15_17:38:39_1870_E-M10_SRGB-resized.jpg
    136 KB · Aufrufe: 66
  • 2016-07-15_17:39:22_1871_E-M10_SRGB-resized.jpg
    2016-07-15_17:39:22_1871_E-M10_SRGB-resized.jpg
    126,4 KB · Aufrufe: 60
  • 2016-07-19_14:01:05_1889_E-M10_SRGB-resized.jpg
    2016-07-19_14:01:05_1889_E-M10_SRGB-resized.jpg
    152,7 KB · Aufrufe: 63

bendh

User
Hallo Dieter,
wo liegen jetzt die Unterschiede / Vorteile deiner Entwicklung?
Wie werden die Werte eingestellt?
Ich habe bis jetzt nur mit Arduino und Wii probiert.
 
Hallo Bernd,

als wesentliche Unterschiede fallen mir ein:
1. Es ist einfach geschrieben und daher einfach zu verstehen und zu verändern.
2. Man kann mit Lötkolben und Entwicklungsumgebung bewaffnet schnell was Anderes daraus machen und kreativ sein.
3. Es verwendet die HAL Libraries, den CubeMX Codegenerator und eine von STM offiziell unterstützte IDE in Eclipse. (Linux, MAC, Windows) und liegt somit im Trend vom Hersteller der MCU.
4. Es kostet fast gar nichts und hat trotzdem eine leistungsfähige MCU.

Welche Werte meinst Du?
Die default Werte für die PID Regler sind hard coded:
controller.c:
const float const_pid_vars[9] =
{ 0.24f, 1.5f, 0.004f, 0.24f, 1.5f, 0.004f, 1.0f, 1.5f, 0.001f };

Diese lassen sich mit der Fernsteuerung editieren und in einer separaten Flashseite bootresistent ablegen.

Die Zuordnung der Motoren und deren Drehrichtung ist z.Zt. auch in controller.c hard coded.

Die maximalen Drehraten sind in main.c hard coded:
diffroll = gy[x] * 8.0f - (float) channels[1] + MIDDLE_POS;
...

Das entspricht jetzt 250 Grad/Sekunde beim max Knüppelausschlag.
Die Gyrowerte sind ja in Grad/Sekunde und von Knüppelmitte bis Endausschlag
ist die Differenz 2000. Wer es rasanter will muss nur den Faktor ändern.

Schau Dir einfach mal main.c an. von da aus ergibt sich das Verständnis ganz leicht.
In der IDE wird der Text der aufgerufenen function angezeigt, wenn man den
Mauszeiger drüber hält. Die Suche ist auch sehr komfortabel.

Natürlich wäre ein Konfigurationstool ( in Java ?) sinnvoll.
Vielleicht hat ja jemand Lust das zu machen?

Ein Bootloader im Flash, damit man die Firmware ohne Debug-/Programmier-Adapter
über die USB Schnittstelle rein bekommt wäre auch nett, aber ob das den
Aufwand lohnt?

Gruß
Dieter
 

Hendrik Schneider

Vereinsmitglied
Teammitglied
Nettes Projekt

Nettes Projekt

.. ich wäre auch an Infos zu den restlichen Komponenten interessiert (Schaltplan?)

und warum trägst Du so ein riesiges LCD in mit herum? Weil Du es kannst?

Gruss
Hendrik
 
Hi Hendrik,

den Schaltplan vom Maple mini gibt es z.B. hier: http://cdn.sparkfun.com/datasheets/Dev/ARM/maplemini.pdf
Der Clone ist insofern anders, als das die ADCs keinen eigenen Spannungsregler haben. Die Randkontakte passen
aber alle.

Kaufen kann man das z.B. hier http://www.ebay.de/itm/STM32F103RCB...589086?hash=item3f56f1395e:g:KfEAAOSwgY9XedZS

Das Sensormodul gbts z.B. hier http://www.ebay.de/itm/MPU9250-9D0F...391710?hash=item281bc2041e:g:cR8AAOSw0fhXigf3
Das Display (ähnlich) z.B. hier http://www.ebay.de/itm/1-8-inch-TFT...480973?hash=item58aa038b0d:g:bWUAAOSwzgRW0~ej

Für die paar Verbindungen war ich bisher zu faul für einen Schaltplan.
Mach Du doch einen. Die Infos sind ja hier beisammen.

Gruß
Dieter
 
Moin

ich habe jetzt ein Configuration Tool fast fertig.

https://github.com/nichtgedacht/configurator101

Als letztes wollte ich noch eine animierte 3D Darstellung
implementieren.

Was fehlt dann noch bis auf die Verzierungen und etwas Farbe?

Gruß
Dieter
 

Anhänge

  • configurator101-01.jpg
    configurator101-01.jpg
    61,9 KB · Aufrufe: 74
  • configurator101-02.jpg
    configurator101-02.jpg
    74 KB · Aufrufe: 68
  • configurator101-03.jpg
    configurator101-03.jpg
    36,9 KB · Aufrufe: 71
  • configurator101-04.jpg
    configurator101-04.jpg
    51,3 KB · Aufrufe: 61
  • configurator101-05.jpg
    configurator101-05.jpg
    60,8 KB · Aufrufe: 72
  • configurator101-06.jpg
    configurator101-06.jpg
    49,1 KB · Aufrufe: 65
  • configurator101-07.jpg
    configurator101-07.jpg
    45,3 KB · Aufrufe: 57
  • configurator101-08.jpg
    configurator101-08.jpg
    49,7 KB · Aufrufe: 71

ingo_s

User
Sehr schönes und gut gemachtes Projekt.

Seit einiger Zeit bin ich von den Mutikoptern allerdings weg, das muss aber nicht so bleiben.

Wie ist den Deine Meinung zu der HAL Lib und CubeMX?
Ich benutze zur Zeit noch die alte STM Lib, aber nur dort wo unbedingt nötig.

Grüße Ingo
 
Wie ist den Deine Meinung zu der HAL Lib und CubeMX?
Ich benutze zur Zeit noch die alte STM Lib, aber nur dort wo unbedingt nötig.

Moin

Ich kann mir nicht wirklich ein Urteil zu HAL und CubeMX erlauben, da ich erst im Frühjahr mit diesem Geraffel angefangen bin und vorher nie mit STM32 zu tun hatte.
Man ist halt relativ weit weg von der Hardware und kommt nur selten direkt mit Registern in Berührung.
Am Anfang hat mich vor Allem die Entwicklungsumgebung in den Wahnsinn getrieben. Die war mal wirklich sehr buggy. Nach zwei drei Updates war das aber wie durch Geisterhand verschwunden.
Auch aus CubeMX wurden Fehler entfernt und es kam sogar ein neues Firmware Repository als ich schon mitten im Projekt war.
Immerhin gibt es das alles zusammen erst seit 2016 für Linux, obwohl es auf Java basiert.
Mich persönlch hat es manchmal genervt wenn die Examples von STM in deren Firmware Repositories und der von CubeMX erzeugte Code nicht zusammen zu passen zu schienen.
Die Dokumentation der HAL Functions war dann auch oft nicht hilfreich und ich musste wohl oder übel die Libs umgraben um einzelne Details zu verstehen.
Der von CubeMX erzeugte Code lässt aber immer genügend Freiheit um ihn sinnvoll nutzen zu können und keinen toten Code mit schleppen zu müssen.
Und, wie man an mir sieht, kann man auch als Anfänger schnell zu funktionierenden und gut getesteten Programmen kommen.

Gruß
Dieter
 

Ay3.14

User
Prima Idee

Prima Idee

Hallo Dieter,

besten Dank für deine informative Zusammenfassung zu deinem Quadrokopter. Bin gerade dabei mich einzulesen/-arbeiten.
Ist sehr interessant gemacht, aber auch etwas schwer den Überblick zu behalten. Ein Blockschaltbild (oder Skizze) wäre sehr hilfreich um eine einfache Übersicht zu den verdrahteten Komponenten (Pins) zu erhalten. (Hättest du nicht Zeit, Lust und Muse dazu?)

Ich habe mal einen Versuch gemacht, bin mir aber nicht sicher ob es nun so stimmt:
Code:
mini-sys Quadrocopter-Flugsteuerung Pin-Belegung (21.12.2016, 0.1)

MCU: STM32F103C8Tx

PA0		ESC/Motor 1
PA1		ESC/Motor 2
PA2		ESC/Motor 3
PA3		ESC/Motor 4
	
PA6		ADC-Eingang, via Spg.teiler zu Ubatt (R1k8 + R8k2 ==> max. 16,6V)

PA9		nicht verbunden (USART1_TX)
PA10	Empfänger-SBUS  (USART1_RX) 
	
PA15	BUZZER (R470 + 2N7002 + Buzzer)

PB1		? Error Indicator (nicht vorhanden?)

PB3		MPU CS
PB4		SD  CS
PB5		LCD+SD RST
PB6		LCD CS
PB7		LCD DC (RS)

PB9		USB reset

PB13	LCD+SD+MPU SPI-SCK/CLK/SCL
PB14	    SD+MPU SPI-MISO/ADO
PB15	LCD+SD+MPU SPI-MOSI/SDA
	
PC13	? Error Indicator? (nicht verbunden?)

Die "OpenSTM32 SystemWorkbench " habe ich letzte Woche installiert und wundere/verzweifle an den manchmal merkwürdigen Eigenheiten/Verhaltensweisen dieser STM32-Entwicklungsumgebung. Das mir die STM32-MCUs auch neu sind, ist das wohl eine prima Gelegenheit sich in die Thematik einzuarbeiten.

(Ich darf gar nicht daran denken, dass man mittlerweile für weniger als 13 Euronen ein CC3D (Hard-, Firm- und Software) bekommt. :rolleyes:)

Holm- und Rippenbruch
Albert
 
Hallo Albert,

vielen Dank für Dein Interesse an dem Projekt.

Dein Pin Mapping ist korrekt. Es fehlen nur die SWDIO (PA13) und SWCLK (PA14) Pins für den Debug-Adaper Anschluss.
PB5 ist nur für das Display RST. PB7 ist Data/Command für das Display. schaltet also zwischen Daten und Befehlen zum Display um.

Es gibt ja zwei Platinchen mit der MCU die in Frage kommen.
Die größere hat den STM32F103C8T6 mit 64 kB Flash, die kleinere (Maple Mini Clone) den STM32F103CBT6 mit 128 kB Flash
Die kleinere Platine gibt es selten auch mit der 64 kB Flash MCU.
Hier sind sie alle 3 zu sehen:
http://www.ebay.de/itm/STM32F103RC8...hash=item3f70a36766:m:miZHBgOkfhBLMHK68bHuMSQ
Der Maple Mini Clone hat neben dem USB Reset (wichtig) auch einen fetten 3,3V Regler an Bord.
Der einzige Vorteil der größeren Platine (die mit den gelben Jumpern) ist der RTC Oszillator an Bord, den man in diesem Projekt aber nicht braucht.
64 kB werden auch schon leicht überschritten mit Display und SD-Card enabled, daher besser den STM32F103CBT6 wählen.

Bei der größeren Platine mit den gelben Jumpern ist die blaue Leuchtdiode an PC13 angeschlossen, bei dem Maple Mini Clone an PB1.
Bei dem Maple Mini Clone steht PB1 nicht als Randkontakt zur Verfügung.

Ich wollte immer schon mal einen Plan zeichnen, bin aber nie dazu gekommen. Offenbar ist das Mittel der Wahl dafür heute KiCad.

Hast Du nicht Lust Dich in KiCad einzuarbeiten?

Übrigens sind die Sensorplatinchen auch nicht mehr teuer:
http://www.ebay.de/itm/MPU9250-9D0F...391710?hash=item281bc2041e:g:cR8AAOSw0fhXigf3

Damit kann ich mit meiner Flugsteuerung preislich mit den billigsten fertigen mithalten ;-)

Für Probleme mit AC6 (OpenSTM32 SystemWorkbench) und CubeMX kann ich jede Hilfe anbieten, auch per Mail.

Anbei noch einige Illustrationen.

Gruß
Dieter
 

Anhänge

  • STM32_Min_System_Dev_Board.pdf
    19,8 KB · Aufrufe: 76
  • stm32-maplemini-clone.pdf
    24,3 KB · Aufrufe: 88
  • 2016-11-25_14:00:04_2075_E-M10_SRGB-resized.jpg
    2016-11-25_14:00:04_2075_E-M10_SRGB-resized.jpg
    578,4 KB · Aufrufe: 69
  • 2016-12-21_14:15:45_2222_E-M10_SRGB-resized.JPG
    2016-12-21_14:15:45_2222_E-M10_SRGB-resized.JPG
    631,3 KB · Aufrufe: 51
  • 2016-12-21_13:19:03_2216_E-M10_SRGB-resized.JPG
    2016-12-21_13:19:03_2216_E-M10_SRGB-resized.JPG
    494,9 KB · Aufrufe: 46
  • 2016-12-21_13:21:02_2219_E-M10_SRGB-resized.JPG
    2016-12-21_13:21:02_2219_E-M10_SRGB-resized.JPG
    506,9 KB · Aufrufe: 58
  • 2016-12-21_13:21:24_2220_E-M10_SRGB-resized.JPG
    2016-12-21_13:21:24_2220_E-M10_SRGB-resized.JPG
    474,1 KB · Aufrufe: 68
  • 2016-12-21_13:21:35_2221_E-M10_SRGB-resized.JPG
    2016-12-21_13:21:35_2221_E-M10_SRGB-resized.JPG
    484,4 KB · Aufrufe: 64

Ay3.14

User
Hallo Dieter,

vielen Dank für deine schnelle und ausführliche Antwort. Nun sind meine Unklarheiten beseitigt.

Als "Platinchen" werde ich also die "STM32F103CBT6" Variante nehmen (mit dem "B" und nicht mit der "8" in der Bezeichnung), also z.B.:
http://www.ebay.de/itm/STM32F103RC8...658565?hash=item3f70a2d285:g:WXQAAOSwEzxYQprW
oder z.B.:
https://de.aliexpress.com/item/leaf..._1&btsid=6c060f13-4b21-4b0d-8639-711707c2260d
(falls es das gleiche Teil ist und das "R" in der Bezeichnung ein Tippfehler vom Händler ist?).

Danke auch für deine neuen Bilder.
Sieht insgesamt spitzenmäßig gut aus, und die neue Mutter-Platine gefällt mir sehr gut!
Ohne das TFT-Display (Mücken- und Fliegen-Kinoleinwand) macht sich dein Quadrokopter auch viel besser.

Das mit dem KiCAD habe ich jetzt irgendwie verdrängt. Aber mir genügt auch die kurze textuelle Zusammenfassung.
Apropos:
Code:
mini-sys Quadrocopter-Flugsteuerung Pin-Belegung (22.12.2016, 0.2)

MCU: STM32F103C8T6 mit 128 kB Flash ("Maple Mini Clone") 

PA0 	ESC/Motor 1
PA1 	ESC/Motor 2
PA2 	ESC/Motor 3
PA3 	ESC/Motor 4
	
PA6 	ADC-Eingang, via Spg.teiler zu Ubatt (R1k8 + R8k2 ==> max. 16,6V)

PA9 	nicht verbunden (USART1_TX)
PA10	Empfänger-SBUS  (USART1_RX) 

PA13	SWDIO Debug-Adaper
PA14	SWCLK Debug-Adaper
	
PA15	BUZZER (R470 + 2N7002 + Buzzer)

PB1 	blaue LED, falls Board = "STM32F103CBT6 mit 128 kB Flash ("Maple Mini Clone")"

PB3 	MPU CS
PB4 	SD  CS
PB5 	LCD RST
PB6 	LCD CS
PB7 	LCD DC (Data/Command) (DC = RS (Register Select))

PB9 	USB reset (WICHTIG!)

PB13	LCD+SD+MPU SPI-SCK/CLK/SCL
PB14	SD+MPU SPI-MISO/ADO
PB15	LCD+SD+MPU SPI-MOSI/SDA

PC13	blaue LED, falls Board = "STM32F103C8T6 mit 64 kB Flash ("gelbe Jumper")"

:)

"Auslegearm- und Propellerbruch"
Albert
 
Hallo Dieter,

vielen Dank für deine schnelle und ausführliche Antwort. Nun sind meine Unklarheiten beseitigt.

Als "Platinchen" werde ich also die "STM32F103CBT6" Variante nehmen (mit dem "B" und nicht mit der "8" in der Bezeichnung)
...
falls es das gleiche Teil ist und das "R" in der Bezeichnung ein Tippfehler vom Händler ist
...

Moin Albert,

es gibt tatsächlich auch eine R Variante mit 64 Pin Gehäuse.
http://www.st.com/en/microcontrollers/stm32f103rb.html
http://www.st.com/en/microcontrollers/stm32f103cb.html

Die Daten sind gleich.

Aus dem Datenblatt http://www.st.com/content/ccc/resou...df/jcr:content/translations/en.CD00161566.pdf

Das normale Gehäuse in meinem Projekt ist das LQFP-48

Du kommst sonst ins Schleudern, wenn CubeMX die Pins darstellt die nicht zum LQFP-64 passen.

Siehe die PDF Datei im Projekt.

Ist aber nur Kosmetik. RC gibt es gar nicht.
Wahrscheinlich wurde das 48-pin Gehäuse verwendet.

Gruß
Dieter
 

Anhänge

  • stm32f103xx-ordering.png
    stm32f103xx-ordering.png
    69,4 KB · Aufrufe: 71
Ansicht hell / dunkel umschalten
Oben Unten