Ο Arduino θα ήταν ο πρώτος πίνακας για πολλούς χόμπι (συμπεριλαμβανομένου μου) και μηχανικούς εκεί έξω όταν ξεκίνησαν με τα ηλεκτρονικά. Ωστόσο, καθώς αρχίζουμε να χτίζουμε περισσότερο και να σκάβουμε βαθιά, σύντομα θα συνειδητοποιήσουμε ότι το Arduino δεν είναι έτοιμο για τη βιομηχανία και ο επεξεργαστής 8-bit με ένα γελοία αργό ρολόι, δεν σας δίνει αρκετό χυμό για τα έργα σας. Ας ελπίσουμε όμως ότι διαθέτουμε τους νέους πίνακες ανάπτυξης STM32F103C8T6 STM32 (Blue Pill) στην αγορά, οι οποίοι μπορούν εύκολα να ξεπεράσουν το Arduino με την CPU 32-bit και την αρχιτεκτονική ARM Cortex M3. Ένα άλλο δοχείο μελιού εδώ είναι ότι μπορούμε να χρησιμοποιήσουμε το ίδιο παλιό Arduino IDE για να προγραμματίσουμε τους STM32 πίνακες μας. Έτσι, σε αυτό το σεμινάριο, ας ξεκινήσουμε με το STM32 για να μάθετε μερικά βασικά στοιχεία για αυτόν τον πίνακα και να αναβοσβήσετε το ενσωματωμένο LED χρησιμοποιώντας το Arduino IDE.
Εκτός από την πλακέτα STM32 Blue pill που χρησιμοποιείται σε αυτό το σεμινάριο, υπάρχουν πολλές άλλες δημοφιλείς πλακέτες STM32 όπως η πλακέτα Nucleo Development STM32. Εάν σας ενδιαφέρει, μπορείτε επίσης να δείτε την κριτική στις πλακέτες STM32 Nucleo 64 και αν θέλετε να μάθετε πώς να τις χρησιμοποιείτε και να τις προγραμματίζετε χρησιμοποιώντας το STM32 CubeMX και το True studio, μπορείτε να δείτε το σεμινάριο για να ξεκινήσετε με το STM32 Nucelo64.
Απαιτούμενα υλικά
- STM32 - (BluePill) Πίνακας Ανάπτυξης (STM32F103C8T6)
- Προγραμματιστής FTDI
- Ψωμί
- Σύνδεση καλωδίων
- Φορητός υπολογιστής με Διαδίκτυο
Εισαγωγή στους πίνακες STM32 (Blue Pill)
Ο πίνακας STM32 aka Blue Pill είναι ένας πίνακας ανάπτυξης για τον μικροελεγκτή ARM Cortex M3. Μοιάζει πολύ με το Arduino Nano, αλλά συσκευάζεται αρκετά. Ο πίνακας ανάπτυξης φαίνεται παρακάτω.
Αυτές οι σανίδες είναι εξαιρετικά φθηνές σε σύγκριση με τις επίσημες πλακέτες Arduino και επίσης το υλικό είναι ανοιχτού κώδικα. Ο μικροελεγκτής στην κορυφή του είναι ο STM32F103C8T6 της STMicroelectronics. Εκτός από τον Μικροελεγκτή, η πλακέτα διαθέτει επίσης δύο κρυστάλλους ταλαντωτές, ο ένας είναι κρύσταλλος 8MHz και ο άλλος είναι κρύσταλλος 32 KHz, ο οποίος μπορεί να χρησιμοποιηθεί για την κίνηση του εσωτερικού RTC (Ρολόι πραγματικού χρόνου). Εξαιτίας αυτού, το MCU μπορεί να λειτουργήσει σε τρόπους βαθιάς ύπνου, καθιστώντας το ιδανικό για εφαρμογές με μπαταρία.
Δεδομένου ότι το MCU λειτουργεί με 3.3V, η πλακέτα διαθέτει επίσης IC ρυθμιστή τάσης 5V έως 3.3V για την τροφοδοσία του MCU. Ακόμα κι αν το MCU λειτουργεί στα 3,3V, οι περισσότερες από τις ακίδες GPIO είναι ανθεκτικές στα 5V. Ο πείρος του MCU τραβιέται τακτοποιημένα και επισημαίνονται ως καρφίτσες κεφαλίδας. Υπάρχουν επίσης δύο ενσωματωμένα LED, το ένα (κόκκινο χρώμα) χρησιμοποιείται για ένδειξη ισχύος και το άλλο (πράσινο χρώμα) συνδέεται με τον ακροδέκτη GPIO PC13. Έχει επίσης δύο καρφίτσες κεφαλίδας που μπορούν να χρησιμοποιηθούν για εναλλαγή της λειτουργίας εκκίνησης MCU μεταξύ της λειτουργίας προγραμματισμού και της λειτουργίας λειτουργίας, θα μάθουμε περισσότερα για αυτά αργότερα σε αυτό το σεμινάριο.
Τώρα λίγοι άνθρωποι αναρωτιούνται γιατί αυτό το διοικητικό συμβούλιο ονομάζεται "Blue Pill", πολύ σοβαρά δεν ξέρω. Μπορεί να είναι δεδομένου ότι ο πίνακας έχει μπλε χρώμα και μπορεί να δώσει μια ενισχυμένη απόδοση στα έργα σας κάποιος βρήκε αυτό το όνομα σε αυτό που μόλις έμεινε. Αυτή είναι απλώς μια υπόθεση και δεν έχω καμία πηγή για να την υποστηρίξω.
Προδιαγραφές STM32F103C8T6
Ο μικροελεγκτής ARM Cortex M3 STM32F103C8 χρησιμοποιείται στην πλακέτα Blue χάπι. Σε αντίθεση με το όνομα, "Blue Pill", το όνομα μικροελεγκτών STM32F103C8T6 έχει μια έννοια πίσω από αυτό.
- STM »σημαίνει το όνομα κατασκευαστή STMicroelectronics
- 32 »σημαίνει αρχιτεκτονική ARM 32-bit
- Το F103 »σημαίνει ότι η αρχιτεκτονική ARM Cortex M3
- C »48 ακίδων
- 8 »64KB μνήμη Flash
- Ο τύπος πακέτου T »είναι LQFP
- 6 »θερμοκρασία λειτουργίας -40 ° C έως + 85 ° C
Τώρα ας δούμε τις προδιαγραφές αυτού του Μικροελεγκτή.
Αρχιτεκτονική: 32-bit ARM Cortex M3
Τάση λειτουργίας: 2,7V έως 3,6V
Συχνότητα CPU: 72 MHz
Αριθμός ακίδων GPIO: 37
Αριθμός ακίδων PWM: 12
Αναλογικοί ακροδέκτες εισόδου: 10 (12-bit)
Περιφερειακά USART: 3
Περιφερειακά I2C: 2
Περιφερειακά SPI: 2
Περιφερειακή κονσέρβα 2.0: 1
Χρονοδιακόπτες: 3 (16-bit), 1 (PWM)
Μνήμη Flash: 64KB
RAM: 20kB
Αν θέλετε να μάθετε