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

Κινούμενα σχέδια σε LCD 16x2 I2c ΧΡΗΣΗ STM32 Nucleo: 4 Βήματα
Κινούμενα σχέδια σε LCD 16x2 I2c ΧΡΗΣΗ STM32 Nucleo: 4 Βήματα

Βίντεο: Κινούμενα σχέδια σε LCD 16x2 I2c ΧΡΗΣΗ STM32 Nucleo: 4 Βήματα

Βίντεο: Κινούμενα σχέδια σε LCD 16x2 I2c ΧΡΗΣΗ STM32 Nucleo: 4 Βήματα
Βίντεο: Top 5 Arduino Displays 2024, Νοέμβριος
Anonim
Image
Image

Γεια σας φίλοι, αυτό είναι ένα σεμινάριο που δείχνει πώς μπορείτε να δημιουργήσετε μια προσαρμοσμένη κίνηση σε μια LCD 16x2 i2c. Υπάρχουν πολύ λίγα πράγματα που απαιτούνται για το έργο, οπότε αν έχετε πρόσβαση στον κώδικα, μπορείτε να το ολοκληρώσετε σε 1 ώρα.

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

ΗΛΕΚΤΡΟΝΙΚΑ ΠΟΥ ΧΡΕΙΑΖΟΝΤΑΙ ΓΙΑ ΤΟ ΕΡΓΟ:-

1) Πίνακας STM32L476RG Nucelo

2) LCD 16x2 i2c

3) Jumper Wires

ΑΠΑΡΑΙΤΗΤΟ ΛΟΓΙΣΜΙΚΟ:-

1) STM32cubemx

2) Keil uVision5

Συνδέσεις: Συνδέστε το PB6 στο I2C-SCK και το I2C-SDA στο PB7 pin του nucleo board.

Βήμα 1: Ανοίξτε το STM32Cubemx και κάντε τις ρυθμίσεις που αντιστοιχούν στις συνημμένες εικόνες

Ανοίξτε το STM32Cubemx και κάντε τις ρυθμίσεις που αντιστοιχούν στις συνημμένες εικόνες
Ανοίξτε το STM32Cubemx και κάντε τις ρυθμίσεις που αντιστοιχούν στις συνημμένες εικόνες
Ανοίξτε το STM32Cubemx και κάντε τις ρυθμίσεις που αντιστοιχούν στις συνημμένες εικόνες
Ανοίξτε το STM32Cubemx και κάντε τις ρυθμίσεις που αντιστοιχούν στις συνημμένες εικόνες

1) Αφού επιλέξετε STM32L476RG ως μικροελεγκτή στο STM32CUBE επιλέξτε διεπαφή I2C1 ως i2c.

2) Ορίστε την τιμή του ρολογιού σε μια μέγιστη τιμή (80Mhz)

3) Στη συνέχεια, επιλέξτε Timer1 και Timer2 και αργότερα αρχικοποιήστε τις τιμές του, όπως δίνονται στο επόμενο μέρος του σεμιναρίου.

4) Επιλέξτε διακοπή ενημέρωσης Timer1 και παγκόσμια διακοπή Timer2 στις ρυθμίσεις NVIC.

5) Δημιουργήστε κώδικα για το έργο στο Keil 5.

Βήμα 2: Δημιουργήστε τις απαραίτητες προσαρμοσμένες εικόνες και προσθέστε τους κωδικούς του στο αρχείο Custom_char.h

Δημιουργήστε τις απαραίτητες προσαρμοσμένες εικόνες και προσθέστε τους κωδικούς του στο αρχείο Custom_char.h
Δημιουργήστε τις απαραίτητες προσαρμοσμένες εικόνες και προσθέστε τους κωδικούς του στο αρχείο Custom_char.h
Δημιουργήστε τις απαραίτητες προσαρμοσμένες εικόνες και προσθέστε τους κωδικούς του στο αρχείο Custom_char.h
Δημιουργήστε τις απαραίτητες προσαρμοσμένες εικόνες και προσθέστε τους κωδικούς του στο αρχείο Custom_char.h

1) Κάθε θέση σε ένα LCD 16x2 μπορεί να χωριστεί σε 32 τμήματα, κάθε τμήμα αποτελείται από 5x8 pixel.

2) Μπορείτε να απεικονίσετε την εικόνα και το όριό της στο τμήμα και να αναπαραστήσετε κάθε τμήμα του τμήματος με τιμή 1 εάν η θέση στο τμήμα είναι μέρος της εικόνας, αλλιώς εκχωρήστε την ως τιμή 0 που δίνει τιμές για κάθε σειρά όπως φαίνεται στο συνημμένο εικόνα.

3) Τοποθετήστε αυτήν την τιμή από το βήμα 2 στο αρχείο custom_char.h που αναφέρεται στον συνημμένο κώδικα.

Βήμα 3: Προσθήκη σχετικού κώδικα στο Keil 5

Προσθήκη σχετικού κωδικού στο Keil 5
Προσθήκη σχετικού κωδικού στο Keil 5
Προσθήκη σχετικού κωδικού στο Keil 5
Προσθήκη σχετικού κωδικού στο Keil 5
Προσθήκη σχετικού κώδικα στο Keil 5
Προσθήκη σχετικού κώδικα στο Keil 5

1) Γράψτε εντολή για εκκίνηση του χρονομέτρου 1 και του χρονοδιακόπτη στο αρχείο main.c. Ο χρονοδιακόπτης 1 χρησιμοποιείται για την εκκαθάριση της οθόνης LCD και ο χρονοδιακόπτης 2 για την εμφάνιση των εικόνων.

2) Γράψτε τιμές για τιμές Prescalar και Autoreload για Timer1 και Timer2 στο αρχείο main.c που είναι το ίδιο και για τα δύο χρονόμετρα.

3) Προσθέστε σχετικό κώδικα στη ρουτίνα διακοπής Timer1 και στη ρουτίνα διακοπής Timer2 στο αρχείο stm32l4_it.c.

Συνιστάται: