Πίνακας περιεχομένων:

Ρύθμιση του Blue Pill Board στο STM32CubeIDE: 8 βήματα
Ρύθμιση του Blue Pill Board στο STM32CubeIDE: 8 βήματα

Βίντεο: Ρύθμιση του Blue Pill Board στο STM32CubeIDE: 8 βήματα

Βίντεο: Ρύθμιση του Blue Pill Board στο STM32CubeIDE: 8 βήματα
Βίντεο: Программирование STM32 Blue Pill с помощью релейной логики ПЛК LDmicro 2024, Νοέμβριος
Anonim
Ρύθμιση του Blue Pill Board στο STM32CubeIDE
Ρύθμιση του Blue Pill Board στο STM32CubeIDE
Ρύθμιση του Blue Pill Board στο STM32CubeIDE
Ρύθμιση του Blue Pill Board στο STM32CubeIDE

Το Blue Pill είναι ένας πολύ φθηνός πίνακας ανάπτυξης ARM γυμνών οστών. Διαθέτει έναν επεξεργαστή STM32F103C8 που έχει 64 kbytes φλας και 20 kbytes μνήμες RAM. Τρέχει έως και 72 MHz και είναι ο φθηνότερος τρόπος για να μπείτε στην ανάπτυξη ενσωματωμένου λογισμικού ARM.

Τα περισσότερα παραδείγματα έργων και πώς να περιγράψετε τον προγραμματισμό του πίνακα Blue Pill χρησιμοποιώντας το περιβάλλον Auduino. Ενώ αυτό λειτουργεί και είναι ένας τρόπος για να ξεκινήσετε, έχει τους περιορισμούς του. Το περιβάλλον Arduino σας προστατεύει λίγο από το υποκείμενο υλικό - αυτός είναι ο σχεδιαστικός του στόχος. Εξαιτίας αυτού, δεν θα μπορείτε να επωφεληθείτε από όλες τις δυνατότητες που προσφέρει ο επεξεργαστής και η ενσωμάτωση λειτουργικού συστήματος σε πραγματικό χρόνο δεν υποστηρίζεται πραγματικά. Αυτό σημαίνει ότι το περιβάλλον Arduino δεν χρησιμοποιείται ευρέως στη βιομηχανία. Εάν θέλετε να κάνετε καριέρα στην ανάπτυξη ενσωματωμένου λογισμικού, το Arduino είναι ένα καλό σημείο εκκίνησης, αλλά πρέπει να προχωρήσετε και να χρησιμοποιήσετε ένα περιβάλλον ανάπτυξης που χρησιμοποιείται βιομηχανικά. Η ST παρέχει βοηθητικά μια εντελώς δωρεάν σουίτα περιβάλλοντος ανάπτυξης για τους επεξεργαστές τους που ονομάζεται STM32CubeIDE. Αυτό χρησιμοποιείται ευρέως στη βιομηχανία, οπότε είναι καλό να προχωρήσουμε.

Ωστόσο, και αυτό είναι το μεγάλο ωστόσο, το STM32CubeIDE είναι τρομακτικά περίπλοκο και είναι ένα φοβερό κομμάτι λογισμικού που πρέπει να χρησιμοποιηθεί. Υποστηρίζει όλες τις δυνατότητες όλων των επεξεργαστών της ST και τους επιτρέπει να διαμορφώνονται στενά, κάτι που δεν συναντάτε στο Arduino IDE επειδή όλα είναι έτοιμα για εσάς.

Πρέπει να ρυθμίσετε την πλακέτα σας ως πρώτο βήμα στο STM32CubeIDE. Το IDE γνωρίζει για τους πίνακες ανάπτυξης της ST και τις δημιουργεί για εσάς, αλλά το Blue Pill, ενώ χρησιμοποιεί επεξεργαστή ST, δεν είναι προϊόν ST, οπότε είστε μόνοι σας εδώ.

Αυτό το οδηγό σας οδηγεί στη διαδικασία ρύθμισης της πλακέτας Blue Pill, ενεργοποίησης μιας σειριακής θύρας και σύνταξης κάποιου κειμένου. Δεν είναι πολλά, αλλά είναι ένα σημαντικό πρώτο βήμα.

Προμήθειες

STM32CubeIDE - λήψη από τον ιστότοπο της ST. Πρέπει να εγγραφείτε και χρειάζεται λίγος χρόνος για τη λήψη.

Ένας πίνακας μπλε χάπι. Μπορείτε να τα πάρετε από το ebay. Χρειάζεστε έναν που να έχει γνήσιο επεξεργαστή ST, όπως άλλοι όχι. Σε ebay μεγεθύνετε την εικόνα και αναζητήστε το λογότυπο ST στον επεξεργαστή.

Ένας debugger/προγραμματιστής ST-LINK v2 διαθέσιμος από το ebay για μερικά κιλά.

Ένα σειριακό καλώδιο FTDI TTL σε USB 3.3V για έξοδο και 2 καλώδια κεφαλίδας αρσενικού προς θηλυκού για να το συνδέσετε.

Ένα σειριακό τερματικό πρόγραμμα όπως το PuTTY.

Βήμα 1: Δημιουργία νέου έργου

Δημιουργία νέου έργου
Δημιουργία νέου έργου
Δημιουργία νέου έργου
Δημιουργία νέου έργου
  1. Ξεκινήστε το STM32CubeIDE και, στη συνέχεια, από το μενού επιλέξτε File | New | STM32 Project.
  2. Στο πλαίσιο Αναζήτηση αριθμού μέρους, πληκτρολογήστε STM32F103C8.
  3. Στη λίστα MCU/MPU θα πρέπει να δείτε το STM32F103C8. Επιλέξτε αυτήν τη γραμμή όπως στην παραπάνω εικόνα.
  4. Κάντε κλικ στο Επόμενο.
  5. Στο παράθυρο διαλόγου Διαμόρφωση έργου, δώστε ένα όνομα στο έργο.
  6. Αφήστε όλα τα άλλα όπως είναι και κάντε κλικ στο Τέλος. Το έργο σας θα εμφανιστεί στα αριστερά στο παράθυρο Project Explorer.

Βήμα 2: Διαμόρφωση του επεξεργαστή

Διαμόρφωση του επεξεργαστή
Διαμόρφωση του επεξεργαστή
Διαμόρφωση του επεξεργαστή
Διαμόρφωση του επεξεργαστή
Διαμόρφωση του επεξεργαστή
Διαμόρφωση του επεξεργαστή
Διαμόρφωση του επεξεργαστή
Διαμόρφωση του επεξεργαστή
  1. Στο παράθυρο Project Explorer ανοίξτε το έργο σας και κάντε διπλό κλικ στο αρχείο.ioc.
  2. Στην καρτέλα Έργο & Διαμόρφωση, αναπτύξτε το System Core και επιλέξτε SYS.
  3. Στην ενότητα Λειτουργία και διαμόρφωση SYS στο αναπτυσσόμενο μενού εντοπισμού σφαλμάτων, επιλέξτε Serial Wire.
  4. Τώρα επιλέξτε RCC στη λίστα System Core ακριβώς πάνω από το SYS που επιλέξατε παραπάνω.
  5. Στην περιοχή RCC Mode & Configuration από το αναπτυσσόμενο μενού ρολόι υψηλής ταχύτητας (HSE), επιλέξτε Crystal/Ceramic Resonator.
  6. Τώρα πάλι κάτω από τις Κατηγορίες, ανοίξτε τη Συνδεσιμότητα και επιλέξτε USART2.
  7. Στην ενότητα Λειτουργία και διαμόρφωση USART2 από το αναπτυσσόμενο μενού Λειτουργία, επιλέξτε Ασύγχρονη.
  8. Τώρα επιλέξτε την καρτέλα Διαμόρφωση ρολογιού και προχωρήστε στο επόμενο βήμα.

Βήμα 3: Διαμόρφωση των ρολογιών

Διαμόρφωση των ρολογιών
Διαμόρφωση των ρολογιών

Μπορείτε τώρα να δείτε ένα αρκετά τρομακτικό διάγραμμα ρολογιού, αλλά χρειάζεται ρύθμιση μόνο μία φορά. Αυτό είναι το πιο δύσκολο να περιγραφεί εδώ καθώς το διάγραμμα είναι περίπλοκο. Όλα τα πράγματα που πρέπει να αλλάξετε επισημαίνονται στην παραπάνω εικόνα.

  1. Ο πίνακας Blue Pill έρχεται με κρύσταλλο 8 MHz στον πίνακα και αυτό είναι το προεπιλεγμένο διάγραμμα διαμόρφωσης ρολογιού, οπότε δεν χρειάζεται να το αλλάξουμε.
  2. Στην περιοχή PLL Source Mux επιλέξτε την χαμηλότερη επιλογή, HSE.
  3. Ακριβώς στα δεξιά ορίστε το PLLMul σε X9.
  4. Προς τα δεξιά ξανά κάτω από το System Clock Mux επιλέξτε PLLCLK.
  5. Προς τα δεξιά ξανά κάτω από το APB1 Prescalar select /2.
  6. Αυτό είναι. Αν δείτε κάποια σημεία του διαγράμματος επισημασμένα με μοβ έχετε κάνει κάτι λάθος.

Βήμα 4: Αποθήκευση και κατασκευή

  1. Αποθηκεύστε τη διαμόρφωση.ioc με Ctrl-S. Όταν ερωτηθείτε εάν θέλετε να δημιουργήσετε κώδικα, επιλέξτε Ναι (και σημειώστε Να θυμάμαι την απόφασή μου έτσι ώστε να μην σας ζητείται κάθε φορά). Μπορείτε να κλείσετε το αρχείο.ioc.
  2. Τώρα κάντε μια κατασκευή από το μενού Project | Build Project.

Βήμα 5: Προσθήκη κάποιου κώδικα

Προσθήκη κάποιου κώδικα
Προσθήκη κάποιου κώδικα
Προσθήκη κάποιου κώδικα
Προσθήκη κάποιου κώδικα

Τώρα θα προσθέσουμε κάποιο κώδικα για να χρησιμοποιήσουμε τη σειριακή θύρα που διαμορφώσαμε.

  1. Στο Project Explorer ανοίξτε το Core / Src και κάντε διπλό κλικ στο main.c για να το επεξεργαστείτε.
  2. Κάντε κύλιση προς τα κάτω μέχρι να βρείτε την κύρια συνάρτηση () και προσθέστε τον κώδικα που εμφανίζεται παρακάτω ακριβώς κάτω από το σχόλιο / * ΚΩΔΙΚΟΣ ΧΡΗΣΤΗ ΞΕΚΙΝΗΣΕ 3 * / και στη συνέχεια κάντε ξανά μια κατασκευή.

HAL_UART_Transmit (& huart2, (uint8_t *) "Γεια σου κόσμο! / R / n", 15U, 100U);

Στη συνέχεια, συνδέει το επάνω υλικό και το δίνει.

Βήμα 6: Σύνδεση του υλικού

Σύνδεση του υλικού
Σύνδεση του υλικού
Σύνδεση του υλικού
Σύνδεση του υλικού

Σύνδεση του ST-LINK v2

Το ST-LINK v2 θα έπρεπε να συνοδεύεται από ένα καλώδιο με κορδέλα κεφαλίδας 4 συρμάτων. Πρέπει να κάνετε τις ακόλουθες συνδέσεις:

Μπλε χάπι στο ST-LINK v2

GND σε GND

CLK στο SWCLK

DIO προς SWDIO

3,3 έως 3,3V

Δείτε την πρώτη εικόνα παραπάνω.

Σύνδεση του σειριακού καλωδίου

Αν επιστρέψετε στο αρχείο.ioc και κοιτάξετε το διάγραμμα τσιπ στα δεξιά, θα δείτε ότι η γραμμή Tx της UART2 είναι στην καρφίτσα PA2. Επομένως, συνδέστε τον πείρο με την ένδειξη PA2 στον πίνακα Blue Pill στη σύνδεση με το κίτρινο καλώδιο στο σειριακό καλώδιο FTDI. Συνδέστε επίσης έναν από τους πείρους γείωσης του Blue Pill (με την ένδειξη G) στο μαύρο καλώδιο στο σειριακό καλώδιο FTDI.

Δείτε τη δεύτερη εικόνα παραπάνω.

Βήμα 7: Αποσφαλμάτωση

Αποσφαλμάτωση
Αποσφαλμάτωση
Αποσφαλμάτωση
Αποσφαλμάτωση

Συνδέστε το σειριακό καλώδιο FTDI και ενεργοποιήστε έναν σειριακό τερματικό στα 115200 baud. Στη συνέχεια, συνδέστε το ST-LINK v2 και είστε έτοιμοι να ξεκινήσετε.

  1. Από το STM32CubeIDE επιλέξτε Εκτέλεση | Αποσφαλμάτωση. Όταν εμφανιστεί ένα παράθυρο εντοπισμού σφαλμάτων, επιλέξτε STM32 Cortex-M C/C ++ Application και OK.
  2. Όταν εμφανιστεί ένα παράθυρο διαλόγου Επεξεργασία διαμόρφωσης, απλώς πατήστε OK.
  3. Ο εντοπιστής σφαλμάτων θα σπάσει στην πρώτη γραμμή του κύριου (). Από το μενού επιλέξτε Εκτέλεση | Συνέχιση και ελέγξτε για μηνύματα στο σειριακό τερματικό.

Βήμα 8: Κάνετε περισσότερα

Αυτό είναι όλο, η πρώτη σας εφαρμογή STM32CubeIDE έχει διαμορφωθεί και εκτελείται. Αυτό το παράδειγμα δεν κάνει πολλά - απλώς στέλνει ορισμένα δεδομένα έξω από τη σειριακή θύρα.

Για να χρησιμοποιήσετε άλλα περιφερειακά και να γράψετε προγράμματα οδήγησης για εξωτερικές συσκευές, πρέπει να αντιμετωπίσετε ξανά αυτόν τον τρομακτικό επεξεργαστή διαμόρφωσης! Για να βοηθήσω, έχω δημιουργήσει μια σειρά παραδειγμάτων έργων STM32CubeIDE που διαμορφώνουν και ασκούν όλα τα περιφερειακά στον επεξεργαστή του Blue Pill σε μικρά, εύκολα κατανοητά έργα. Είναι όλα ανοιχτού κώδικα και είστε ελεύθεροι να κάνετε ό, τι θέλετε μαζί τους. Κάθε περιφερειακό έχει διαμορφωθεί και στη συνέχεια έχει δείγμα κώδικα για να το ασκήσει μεμονωμένα (σχεδόν!), Ώστε να μπορείτε να συγκεντρωθείτε στο να πηγαίνετε μόνο ένα περιφερειακό κάθε φορά.

Υπάρχουν επίσης προγράμματα οδήγησης για εξωτερικές συσκευές από απλά τσιπ EEPROM έως αισθητήρες πίεσης, κείμενο και γραφικά LCD, μόντεμ SIM800 για TCP, HTTP και MQTT, πληκτρολόγια, μονάδες ραδιοφώνου, USB και επίσης ενσωμάτωση με FatFS, κάρτες SD και FreeRTOS.

Μπορείτε να τα βρείτε όλα στο Github εδώ…

github.com/miniwinwm/BluePillDemo

Συνιστάται: