Το E-Paper καίγεται
Οι συσκευές e-ink υποφέρουν από καύση
ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ
Σήμερα, οι συσκευές e-ink έχουν γίνει δημοφιλείς για την εμπειρία ανάγνωσης που μοιάζουν με χαρτί. Προσφέρουν μια σειρά από χαρακτηριστικά και προδιαγραφές που τους καθιστούν μια βολική επιλογή για άπληστους αναγνώστες. Μια τέτοια συσκευή είναι το 5.Η μονάδα EPD 83inch για το Raspberry Pi Pico, το οποίο διαθέτει ανάλυση οθόνης 648 x 480 pixels και λειτουργεί χρησιμοποιώντας τη διεπαφή SPI.
Χαρακτηριστικά
- Κανένας οπίσθιος φωτισμός συνεχίζει να εμφανίζει το τελευταίο περιεχόμενο για μεγάλο χρονικό διάστημα ακόμη και όταν τροφοδοτείται.
- Εξαιρετική κατανάλωση ενέργειας, βασικά η ισχύς απαιτείται μόνο για αναζωογόνηση.
- Η διασύνδεση SPI απαιτεί ελάχιστες καρφίτσες IO.
- 2 x κουμπιά χρήστη και κουμπί επαναφοράς 1x για εύκολη αλληλεπίδραση.
Προσδιορισμός
- Διάσταση: 5.83inch
- Διαστάσεις περιγράμματος (ακατέργαστο πίνακα): 125.40mm x 99.50mm x 1.18 χιλιοστών
- Διαστάσεις περιγράμματος (πίνακας οδήγησης): 65mm x 31mm
- Μέγεθος εμφάνισης: 119.232 (η) x 88.320 (v)
- Τάση λειτουργίας: 3.3V
- Διεπαφή: SPI
- Pitch Dot: 0.184 x 0.184
- Χρώμα εμφάνισης: μαύρο, λευκό
- Ανάλυση: 648 (h) x 480 (v)
- Greyscale: 2
- Πλήρης χρόνος ανανέωσης: 5s
- Ανανέωση ισχύος: 26.4MW (τύπος.·
- Ρεύμα αναμονής:
Χρονισμός SPI
Σημείωση: Διαφορετικά από το παραδοσιακό πρωτόκολλο SPI, η γραμμή δεδομένων από τον σκλάβο στον κύριο είναι κρυμμένο, αφού η συσκευή έχει μόνο απαίτηση οθόνης.
- Το CS είναι Slave Chip Select, όταν το CS είναι χαμηλό, το τσιπ είναι ενεργοποιημένο.
- Το DC είναι ο πείρος ελέγχου δεδομένων/εντολών, όταν DC = 0, εντολή εγγραφής, όταν dc = 1, γράψτε δεδομένα.
- Το SCLK είναι το ρολόι επικοινωνίας SPI.
- Το SDIN είναι η γραμμή δεδομένων από τον κύριο στον σκλάβο στην επικοινωνία SPI.
- Χρονισμός: CPHL = 0, CPOL = 0 (SPI0)
[Παρατηρήσεις] Για συγκεκριμένες πληροφορίες σχετικά με το SPI, μπορείτε να αναζητήσετε πληροφορίες online.
Αρχή λειτουργίας
Αυτό το προϊόν χρησιμοποιεί την τεχνολογία προβολής εικόνας της μικροεξυορηγημένης ηλεκτροφορητικής οθόνης, Med. Τα πρότυπα εμφάνισης δημιουργούνται αντανακλώντας το φως του περιβάλλοντος, εξαλείφοντας την ανάγκη για φως φόντου. Αυτή η οθόνη E-Paper προσφέρει υψηλή ορατότητα με ευρεία γωνία προβολής 180 μοίρες, καθιστώντας την την ιδανική επιλογή για e-reading. Είναι σημαντικό να σημειωθεί ότι οι οθόνες E-Paper δεν μπορούν να υποστηρίξουν την ενημέρωση απευθείας στο άμεσο ηλιακό φως.
Pixel & byte
Σε μια μονόχρωμη εικόνα, το 0 αντιπροσωπεύει μαύρο και 1 αντιπροσωπεύει λευκό. Κάθε εικονοστοιχείο αντιπροσωπεύεται από λίγο, με 1 byte που καλύπτει 8 εικονοστοιχεία. Για παράδειγμα, αν ορίσουμε τα πρώτα 8 εικονοστοιχεία ως μαύρο και τα τελευταία 8 εικονοστοιχεία ως λευκά, θα εκπροσωπούνται σε κώδικα 16-bit ως εξής:
Στην περίπτωση των 5.83inch E-Paper, Λόγω περιορισμών ελεγκτή, το χρώμα κάθε εικονοστοιχείου ορίζεται χρησιμοποιώντας 4 bits. Τα χαμηλότερα δύο κομμάτια της αναπαράστασης 4-bit καθορίζουν αν το εικονοστοιχείο είναι μαύρο ή λευκό. Ακολουθούν μερικά παραδείγματα:
- 0x00: 2 εικονοστοιχεία ■■
- 0x03: 2 εικονοστοιχεία ■ □ □
- 0x30: 2 εικονοστοιχεία □ ■
- 0x33: 2 εικονοστοιχεία □ριά □ □
Για έναν υπολογιστή, τα δεδομένα αποθηκεύονται σε μορφή MSB, με τα υψηλά bits πρώτα και τα χαμηλά bits δεύτερη. Εδώ είναι μια εικόνα:
Rpi pico
Σύνδεση υλικού
Κατά τη σύνδεση του PICO με την οθόνη E-Paper, δώστε προσοχή στην κατεύθυνση. Η θύρα USB στο PICO έχει ένα λογότυπο που υποδεικνύει τον σωστό προσανατολισμό. Εναλλακτικά, μπορείτε επίσης να ελέγξετε τις ακίδες για αναφορά. Εάν προτιμάτε να χρησιμοποιήσετε ένα καλώδιο 8 ακίδων, μπορείτε να ανατρέξετε στον παρακάτω πίνακα:
e-χαρτί | Raspberry Pi Pico |
Οι συσκευές e-ink υποφέρουν από καύση
Για τον υπολογιστή, τα δεδομένα αποθηκεύονται σε μορφή MSB:
Έτσι μπορούμε να χρησιμοποιήσουμε δύο bytes για 16 εικονοστοιχεία.
ΣΦΑΙΡΙΚΗ ΕΙΚΟΝΑ
5.83inch EPD (Electronic Paper Display) Μονάδα για Raspberry Pi Pico, 648 × 480 εικονοστοιχεία, μαύρο / λευκό, διασύνδεση SPI.
Χαρακτηριστικά
- Κανένας οπίσθιος φωτισμός συνεχίζει να εμφανίζει το τελευταίο περιεχόμενο για μεγάλο χρονικό διάστημα ακόμη και όταν τροφοδοτείται.
- Εξαιρετική κατανάλωση ενέργειας, βασικά η ισχύς απαιτείται μόνο για αναζωογόνηση.
- Η διασύνδεση SPI απαιτεί ελάχιστες καρφίτσες IO.
- 2 x κουμπιά χρήστη και κουμπί επαναφοράς 1x για εύκολη αλληλεπίδραση.
Προσδιορισμός
- Διάσταση: 5.83inch
- Διαστάσεις περιγράμματος (ακατέργαστο πίνακα): 125.40mm x 99.50mm x 1.18 χιλιοστών
- Διαστάσεις περιγράμματος (πίνακας οδήγησης): 65mm x 31mm
- Μέγεθος εμφάνισης: 119.232 (η) x 88.320 (v)
- Τάση λειτουργίας: 3.3V
- Διεπαφή: SPI
- Pitch Dot: 0.184 x 0.184
- Χρώμα εμφάνισης: μαύρο, λευκό
- Ανάλυση: 648 (h) x 480 (v)
- Greyscale: 2
- Πλήρης χρόνος ανανέωσης: 5s
- Ανανέωση ισχύος: 26.4MW (τύπος.·
- Ρεύμα αναμονής:
【Σημείωση】: refresh Time: Ο χρόνος ανανέωσης είναι τα πειραματικά δεδομένα δοκιμών, ο πραγματικός χρόνος ανανέωσης θα έχει σφάλματα και το πραγματικό αποτέλεσμα θα επικρατήσει. Θα υπάρξει ένα τρεμόπαιγμα κατά τη διάρκεια της παγκόσμιας διαδικασίας ανανέωσης, αυτό είναι ένα φυσιολογικό φαινόμενο.
Κατανάλωση ενέργειας: Τα δεδομένα κατανάλωσης ενέργειας είναι τα πειραματικά δεδομένα δοκιμών. Η πραγματική κατανάλωση ενέργειας θα έχει ένα συγκεκριμένο σφάλμα λόγω της ύπαρξης του πίνακα οδηγών και της πραγματικής κατάστασης χρήσης. Το πραγματικό αποτέλεσμα επικρατεί.
Χρονισμός SPI
Σημείωση: Διαφορετικά από το παραδοσιακό πρωτόκολλο SPI, η γραμμή δεδομένων από τον σκλάβο στον κύριο είναι κρυμμένο, αφού η συσκευή έχει μόνο απαίτηση οθόνης.
- Το CS είναι Slave Chip Select, όταν το CS είναι χαμηλό, το τσιπ είναι ενεργοποιημένο.
- Το DC είναι ο πείρος ελέγχου δεδομένων/εντολών, όταν DC = 0, εντολή εγγραφής, όταν dc = 1, γράψτε δεδομένα.
- Το SCLK είναι το ρολόι επικοινωνίας SPI.
- Το SDIN είναι η γραμμή δεδομένων από τον κύριο στον σκλάβο στην επικοινωνία SPI.
- Χρονισμός: CPHL = 0, CPOL = 0 (SPI0)
[Παρατηρήσεις] Για συγκεκριμένες πληροφορίες σχετικά με το SPI, μπορείτε να αναζητήσετε πληροφορίες online.
Αρχή λειτουργίας
Αυτό το προϊόν είναι μια συσκευή e-paper που υιοθετεί την τεχνολογία προβολής εικόνας της μικροεξυορηγημένης ηλεκτροφορητικής οθόνης, Med. Η αρχική προσέγγιση είναι να δημιουργηθούν μικροσκοπικές σφαίρες, στις οποίες οι φορτισμένες χρωστικές χρωστικές αναστέλλονται στο διαφανές λάδι και θα κινούνται ανάλογα με το ηλεκτρονικό φορτίο. Τα μοτίβα οθόνης οθόνης E-Paper αντανακλώντας το φως του περιβάλλοντος, οπότε δεν έχει καμία απαίτηση φωτός φόντου. Κάτω από το φως του περιβάλλοντος, η οθόνη E-Paper εξακολουθεί να έχει υψηλή ορατότητα με ευρεία γωνία προβολής 180 βαθμών. Είναι η ιδανική επιλογή για την ηλεκτρονική ανάγνωση. (Σημειώστε ότι το E-Paper δεν μπορεί να υποστηρίξει την ενημέρωση απευθείας κάτω από το φως του ήλιου·
Pixel & byte
Ορίζουμε τα εικονοστοιχεία σε μια μονόχρωμη εικόνα, το 0 είναι μαύρο και 1 είναι λευκό.
Λευκό: □: Bit 1
Μαύρο: ■: bit 0
- Η κουκίδα στο σχήμα ονομάζεται εικονοστοιχείο. Όπως γνωρίζουμε, 1 και 0 χρησιμοποιούνται για τον καθορισμό του χρώματος, επομένως μπορούμε να χρησιμοποιήσουμε ένα bit για να καθορίσουμε το χρώμα ενός εικονοστοιχείου και 1 byte = 8pixels
- Για παράδειγμα, αν ορίσουμε τα πρώτα 8 εικονοστοιχεία στο Black και τα τελευταία 8 εικονοστοιχεία στο White, το δείχνουμε με κωδικούς, θα είναι 16-bit όπως παρακάτω:
Για τον υπολογιστή, τα δεδομένα αποθηκεύονται σε μορφή MSB:
Έτσι μπορούμε να χρησιμοποιήσουμε δύο bytes για 16 εικονοστοιχεία.
- 5.83inch e-χαρτί
Λόγω του προβλήματος του ελεγκτή, ορίζει το 0000b ότι το αντίστοιχο εικονοστοιχείο είναι μαύρο, 0011b ότι το αντίστοιχο εικονοστοιχείο είναι λευκό, καθώς το 4bit = 1pixel, και τα χαμηλότερα δύο κομμάτια του 4bit είναι 0 ταυτόχρονα να δείχνουν μαύρο και αντίστροφα, τα χαμηλότερα δύο bits των 4 bit είναι 1 ταυτόχρονα για να δείχνουν λευκά και άλλα δεδομένα, και τα χαμηλότερα bits των 4 bit είναι ταυτόχρονα, καθώς τα άλλα δεδομένα θα οδηγήσουν σε αβεβαιότητα, τα χαμηλότερα δύο bits των 4 bit είναι ταυτόχρονα να δείχνουν το μαύρο και το αντίστοιχο, τα χαμηλότερα δύο bits των 4 bits είναι 1 ταυτόχρονα για να δείχνουν λευκά και άλλα δεδομένα. Παράδειγμα:
0x00: 2 εικονοστοιχεία ■■
0x03: 2 εικονοστοιχεία ■ □ □
0x30: 2 εικονοστοιχεία □ ■
0x33: 2 εικονοστοιχεία □ριά □ □
Λαμβάνοντας τα σημεία 4-pixel ως παράδειγμα, υποθέτουμε ότι τα πρώτα σημεία 2-pixel είναι μαύρα και τα τελευταία σημεία 2 pixel είναι λευκά, τότε η ανθρώπινη λογική είναι τέτοια που αποθηκεύονται σε τάξη:
Για έναν υπολογιστή, αποθηκεύει δεδομένα με τέτοιο τρόπο ώστε τα ψηλά κομμάτια να έρθουν πρώτα και τα χαμηλά κομμάτια να έρθουν δεύτερα και υπάρχουν μόνο 8 bits σε ένα byte, έτσι ώστε να αποθηκεύεται στο byte ως εξής:
Rpi pico
Σύνδεση υλικού
Φροντίστε την κατεύθυνση κατά τη σύνδεση του PICO. Ένα λογότυπο της θύρας USB εκτυπώνεται για να υποδείξει τον κατάλογο, μπορείτε επίσης να ελέγξετε τις καρφίτσες.
Εάν θέλετε να συνδέσετε την πλακέτα με καλώδιο 8 ακίδων, μπορείτε να ανατρέξετε στον παρακάτω πίνακα
e-χαρτί | Είδος πύργου | Περιγραφή |
VCC | Εναντίον | Εισροή τροφοδοσίας |
ΑΕΔ | ΑΕΔ | Εδαφος |
ΦΑΣΑΡΙΑ | GP11 | Mosi Pin της διασύνδεσης SPI, δεδομένα που μεταδίδονται από κύριο σε σκλάβο. |
CLK | Gp10 | SCK PIN της διασύνδεσης SPI, είσοδος ρολογιού |
CS | GP9 | Chip Select Pin της διασύνδεσης SPI, Low Active |
ΫΟ | GP8 | Πίνας ελέγχου δεδομένων/εντολών (Υψηλή: Δεδομένα, Χαμηλή: εντολή) |
Αραίος | Gp12 | Επαναφορά πείρου, χαμηλό ενεργό |
ΑΠΑΣΧΟΛΗΜΕΝΟΣ | Gp13 | Απασχολημένος πείρος εξόδου |
Κλειδί00 | GP2 | Πλήκτρο χρήστη 0 |
Κλειδί1 | GP3 | Πλήκτρο χρήστη 1 |
ΤΡΕΞΙΜΟ | ΤΡΕΞΙΜΟ | Επαναφορά |
Μπορείτε απλά να επισυνάψετε το σκάφος στο Pico όπως το Pico-Epaper-7.5
Περιβάλλον εγκατάστασης
Λήψη κωδικών επίδειξης
Ανοίξτε ένα τερματικό του PI και εκτελέστε την ακόλουθη εντολή:
cd ~ sudo wget https: // www.κυματισμός.com/w/upload/2/27/pico_epaper_code.Zip unzip pico_epaper_code.Zip -d pico_epaper_code cd ~/pico_epaper_code
Μπορείτε επίσης να κλωνοποιήσετε τους κωδικούς από το GitHub
cd ~ git clone https: // github.com/waveshare/pico_epaper_code.git cd ~/pico_epaper_code
Σχετικά με τα παραδείγματα
Οι οδηγοί βασίζονται στο Raspberry Pi.
Γ κώδικες
Το παράδειγμα που παρέχεται είναι συμβατό με διάφορους τύπους, πρέπει να τροποποιήσετε το κύριο.C αρχείο, Uncomment Ο ορισμός σύμφωνα με τον πραγματικό τύπο οθόνης που παίρνετε.
Για παράδειγμα, εάν έχετε το pico-epaper-2.13, τροποποιήστε το κύριο.C αρχείο C, γραμμή Uncomment 18 (ή ίσως είναι γραμμή 19).
Ορίστε το έργο:
CD ~/pico_epaper_code/c
Δημιουργήστε φάκελο δημιουργίας και προσθέστε το SDK. ../../pico-SDK είναι η προεπιλεγμένη διαδρομή του SDK, αν αποθηκεύσετε το SDK σε άλλους καταλόγους, αλλάξτε το στην πραγματική διαδρομή.
mkdir build cd build εξαγωγή pico_sdk_path =../../pico-sdk
Εκτελέστε την εντολή cmake για να δημιουργήσετε αρχείο makefile.
κέικ ..
Εκτελέστε την εντολή για να καταρτίσετε τους κωδικούς.
make -j9
- Μετά τη σύνταξη, το EPD.Το αρχείο UF2 δημιουργείται. Στη συνέχεια, πατήστε και κρατήστε πατημένο το κουμπί εκκίνησης στην πλακέτα PICO, συνδέστε το Pico στο Raspberry Pi χρησιμοποιώντας το καλώδιο Micro USB και απελευθερώστε το κουμπί. Σε αυτό το σημείο, η συσκευή θα αναγνωρίσει έναν αφαιρούμενο δίσκο (RPI-RP2).
- Αντιγράψτε το EPD.Το αρχείο UF2 που μόλις δημιουργήθηκε στον πρόσφατα αναγνωρισμένο αφαιρούμενο δίσκο (RPI-RP2), το PICO θα επανεκκινήσει αυτόματα το τρέχον πρόγραμμα.
Πύθων
- Πρώτα πατήστε και κρατήστε πατημένο το κουμπί εκκίνησης στην πλακέτα PICO, χρησιμοποιήστε το καλώδιο Micro USB για να συνδέσετε το PICO με το Raspberry Pi και στη συνέχεια απελευθερώστε το κουμπί. Σε αυτό το σημείο, η συσκευή θα αναγνωρίσει έναν αφαιρούμενο δίσκο (RPI-RP2).
- Αντιγράψτε το RP2-PICO-20210418-V1.15.Αρχείο UF2 στον κατάλογο Python στον αφαιρούμενη δίσκο (RPI-RP2).
- Ενημερώστε το Thonny IDE
Sudo Apt Αναβάθμιση Thonny
- Ανοίξτε το Thonny IDE (κάντε κλικ στο λογότυπο Raspberry -> Programming -> Thonny Python IDE) και επιλέξτε τον διερμηνέα:
- Επιλέξτε Εργαλεία -> Επιλογές. -> Διερμηνέας
- Επιλέξτε MicroPython (Raspberry Pi Pico και TTYACM0.
Ανάλυση κώδικα C
Διεπαφή υλικού κάτω
Συσκευάζουμε το στρώμα υλικού για εύκολη μεταφορά στις διαφορετικές πλατφόρμες υλικού.
Dev_config.ντο(.η) στον κατάλογο: pico_epaper_code \ c \ lib \ config.#define ubyte uint8_t #define uword uint16_t #define udouble uint32_t
- Μονάδα Αρχικοποιήστε και έξοδο:
άκυρη dev_module_init (void); void dev_module_exit (void); Σημείωση: 1. Οι παραπάνω λειτουργίες χρησιμοποιούνται για την προετοιμασία της οθόνης ή της λαβής εξόδου.
- GPIO WRITE/READ:
άκυρη dev_digital_write (pin uword, τιμή Ubyte); Ubyte dev_digital_read (pin uword);
- Το SPI μεταδίδει δεδομένα
άκυρη dev_spi_writebyte (τιμή Ubyte);
Οδηγός EPD
Οι κωδικοί οδηγού του EPD αποθηκεύονται στον κατάλογο: pico_epaper_code \ c \ lib \ e-paper
Ανοιξε το .H Header File, μπορείτε να ελέγξετε όλες τις καθορισμένες λειτουργίες.- Αρχικοποιήστε το E-Paper, αυτή η λειτουργία χρησιμοποιείται πάντα στην αρχή και μετά από να ξυπνήσετε την οθόνη.
// 2.13 ιντσών E-Paper 、 2.13 ιντσών E-Paper V2、2.13 ιντσών E-Paper (D) 、 2.9inch e-paper 、 2.9 ιντσών E-Paper (D) άκυρη EPD_XXX_INIT (λειτουργία UBYTE); // mode = 0 πλήρως ενημέρωση, λειτουργία = 1 μερική ενημέρωση // Άλλοι τύποι άκυρη EPD_XXX_INIT (κενό);
Το XXX θα πρέπει να αλλάξει με τον τύπο του E-Paper, για παράδειγμα, εάν χρησιμοποιείτε 2.13inch e-paper (d), για να ενημερωθεί πλήρως, ti shoule be epd_2in13d_init (0) και epd_2in13d_init (1) για μερική ενημέρωση
- Clear: Αυτή η λειτουργία χρησιμοποιείται για την εκκαθάριση της οθόνης σε λευκό.
άκυρη EPD_XXX_CLEAR (κενό);
Το XXX θα πρέπει να αλλάξει με τον τύπο του E-Paper, για παράδειγμα, εάν χρησιμοποιείτε 2.9Inch e-Paper (D), θα πρέπει να είναι EPD_2IN9D_CLEAR ();
- Στείλτε τα δεδομένα εικόνας (ένα πλαίσιο) στην EPD και την εμφάνιση
// έκδοση bicolor άκυρη EPD_XXX_DISPLAY (UBYTE *IMAGE); // έκδοση Tricolor άκυρη EPD_XXX_DISPLAY (const Ubyte *BlackImage, const Ubyte *ryImage);
Υπάρχουν διάφοροι τύποι διαφορετικοί από τους άλλους
// Παράτορα ενημέρωση για 2.13 ιντσών E-Paper (D) 、 2.9 ιντσών E-Paper (D) άκυρη EPD_2IN13D_DISPLAYPART (UBYTE *IMAGE); άκυρη EPD_2IN9D_DISPLAYPART (UBYTE *IMAGE);
// για 2.13inch E-Paper V2, πρέπει να χρησιμοποιήσετε πρώτα useepd_xxx_displaypartbaseimage για να εμφανίσετε ένα στατικό φόντο και στη συνέχεια μερική ενημέρωση από τη συνάρτηση EPD_XXX_DISPLAYPART () άκυρη EPD_2IN13_V2_DISPLAYPART (ubyte *εικόνα); άκυρη EPD_2IN13_V2_DISPLAYPARTBASEIMAGE (UBYTE *IMAGE);
- Εισαγάγετε τη λειτουργία ύπνου
άκυρη EPD_XXX_SLEEP (κενό);
Σημείωση, θα πρέπει μόνο να επαναφέρετε το υλικό ή να χρησιμοποιήσετε τη λειτουργία αρχικοποίησης για να ξυπνήσετε το ηλεκτρονικό χαρτί από τη λειτουργία ύπνου
Το XXX είναι ο τύπος E-Paper, για παράδειγμα, εάν χρησιμοποιείτε 2.13inch e-paper d, θα πρέπει να είναι EPD_2IN13D_SLEEP ();Διεπαφή προγραμματισμού εφαρμογών
Παρέχουμε βασικές λειτουργίες GUI για δοκιμές, όπως σημείο κλήρωσης, γραμμή, συμβολοσειρά και ούτω καθεξής. Η συνάρτηση GUI μπορεί να βρεθεί στον κατάλογο: Raspberrypi_jetonnano \ c \ lib \ gui \ gui_paint.ντο(.Η).
Οι γραμματοσειρές που χρησιμοποιούνται μπορούν να βρεθούν στον κατάλογο: raspberrypi_jetonnano \ c \ lib \ fonts.
- Δημιουργήστε μια νέα εικόνα, μπορείτε να ορίσετε το όνομα της εικόνας, το πλάτος, το ύψος, τη γωνία περιστροφής και το χρώμα.
άκυρη paint_newimage (Ubyte *εικόνα, πλάτος uword, ύψος uword, περιστροφή uword, χρώμα uword) Παράμετροι: Εικόνα: Όνομα του buffer εικόνας, αυτός είναι ένας δείκτης. Πλάτος: πλάτος της εικόνας. Ύψος: ύψος της εικόνας. Περιστρέψτε: περιστρέψτε τη γωνία της εικόνας. Χρώμα: το αρχικό χρώμα της εικόνας
- Επιλέξτε Buffer Image: Μπορείτε να δημιουργήσετε πολλαπλά buffer εικόνας ταυτόχρονα και να επιλέξετε το συγκεκριμένο και να σχεδιάσετε με αυτή τη λειτουργία.
void paint_selectimage (Ubyte *Image) Παράμετροι: Εικόνα: Το όνομα του buffer εικόνας, αυτός είναι ένας δείκτης
- Περιστρέψτε την εικόνα: Πρέπει να ρυθμίσετε τη γωνία περιστροφής της εικόνας, αυτή η λειτουργία θα πρέπει να χρησιμοποιείται μετά το Paint_SelectImage (). Η γωνία μπορεί να είναι 0, 90, 180 ή 270.
void paint_setrotate (uword περιστροφή) Παράμετροι: Περιστροφή: γωνία περιστροφής της εικόνας.
【Σημείωση】 afer περιστροφή, ο τόπος του πρώτου εικονοστοιχείου είναι διαφορετικός, παίρνουμε 1.54inch E-Paper ως παράδειγμα
- Mirror Image: Αυτή η λειτουργία χρησιμοποιείται για τον καθρέφτη εικόνας.
void paint_setmirroring (Ubyte mirror) Παράμετροι: καθρέφτης: τύπος καθρέφτη Εάν η εικόνα, η παράμετρος μπορεί να είναι mirror_none, mirrror_horizontal, mirrror_vertical, mirrror_origin.
- Ρυθμίστε τη θέση και το χρώμα των εικονοστοιχείων: Αυτή είναι η βασική λειτουργία του GUI, χρησιμοποιείται για να ρυθμίσετε τη θέση και το χρώμα ενός εικονοστοιχείου στο buffer.
void paint_setpixel (uword xpoint, uword ypoint, uword χρώμα) Παράμετροι: xpoint: Η τιμή του άξονα x του σημείου στο buffer ypoint της εικόνας: η τιμή του άξονα του σημείου στο χρώμα buffer εικόνας: το χρώμα του σημείου
- Clear Display: Για να ρυθμίσετε το χρώμα της εικόνας, αυτή η λειτουργία χρησιμοποιείται πάντα για την εκκαθάριση της οθόνης.
void paint_clear (χρώμα uword) Παράμετροι: Χρώμα: Το χρώμα της εικόνας
- Χρώμα των παραθύρων: Αυτή η λειτουργία χρησιμοποιείται για να ρυθμίσετε το χρώμα των παραθύρων, χρησιμοποιείται πάντα για την ενημέρωση μερικών περιοχών όπως η εμφάνιση ρολογιού.
void paint_clearwindows (uword xstart, uword ystart, uword xend, uword yend, χρώμα uword) Παράμετροι: xpoint: Η τιμή x του y-axis της τιμής y-axis in inpor
- Σημείο λήψης: Σχεδιάστε ένα σημείο στη θέση (σημείο x, y σημείο) του buffer εικόνας, μπορείτε να διαμορφώσετε το χρώμα, το μέγεθος και το στυλ.
void paint_drawpoint (uword xpoint, uword ypoint, uword χρώμα, dot_pixel dot_pixel, dot_style dot_style) Παράμετροι: xpoint: τιμή x άξονα του σημείου. Ypoint: τιμή άξονα y του σημείου. Χρώμα: Χρώμα του σημείου dot_pixel: Μέγεθος του σημείου, διατίθενται 8 μεγέθη. typedef enum < DOT_PIXEL_1X1 = 1, // 1 x 1 DOT_PIXEL_2X2 , // 2 X 2 DOT_PIXEL_3X3 , // 3 X 3 DOT_PIXEL_4X4 , // 4 X 4 DOT_PIXEL_5X5 , // 5 X 5 DOT_PIXEL_6X6 , // 6 X 6 DOT_PIXEL_7X7 , // 7 X 7 DOT_PIXEL_8X8 , // 8 X 8 >Dot_pixel; Dot_style: Στυλ του σημείου, καθορίζει τον εκτεταμένο τρόπο του σημείου. typedef enum < DOT_FILL_AROUND = 1, DOT_FILL_RIGHTUP, >Dot_style;
- Σχεδιάστε τη γραμμή: Σχεδιάστε μια γραμμή από (xstart, ystart) σε (Xend, Yend) στο buffer εικόνας, μπορείτε να διαμορφώσετε το χρώμα, το πλάτος και το στυλ.
void paint_drawline (uword xstart, uword ystart, uword xend, uword yend, uword χρώμα, line_style line_style, line_style line_style) Παράμετροι:. typedef enum < DOT_PIXEL_1X1 = 1, // 1 x 1 DOT_PIXEL_2X2 , // 2 X 2 DOT_PIXEL_3X3 , // 3 X 3 DOT_PIXEL_4X4 , // 4 X 4 DOT_PIXEL_5X5 , // 5 X 5 DOT_PIXEL_6X6 , // 6 X 6 DOT_PIXEL_7X7 , // 7 X 7 DOT_PIXEL_8X8 , // 8 X 8 >Dot_pixel; Line_style: στυλ της γραμμής, συμπαγής ή διακεκομμένη. typedef enum < LINE_STYLE_SOLID = 0, LINE_STYLE_DOTTED, >Line_style;
- Σχεδιάστε ένα ορθογώνιο: Σχεδιάστε ένα ορθογώνιο από (xstart, ystart) σε (xend, yend), μπορείτε να διαμορφώσετε το χρώμα, το πλάτος και το στυλ.
void paint_drawRectangle (uword xstart, uword ystart, uword xend, uword yend, uword χρώμα, dot_pixel line_width, draw_fill draw_fill) Παράμετροι: xstart: xstart του ορθογωνίου. YSTART: YSTART του ορθογωνίου. Xend: Xend του ορθογωνίου. Yend: Yend του ορθογωνίου. Χρώμα: Χρώμα του ορθογωνίου line_width: το πλάτος των άκρων. Είναι διαθέσιμα 8 μεγέθη. typedef enum < DOT_PIXEL_1X1 = 1, // 1 x 1 DOT_PIXEL_2X2 , // 2 X 2 DOT_PIXEL_3X3 , // 3 X 3 DOT_PIXEL_4X4 , // 4 X 4 DOT_PIXEL_5X5 , // 5 X 5 DOT_PIXEL_6X6 , // 6 X 6 DOT_PIXEL_7X7 , // 7 X 7 DOT_PIXEL_8X8 , // 8 X 8 >Dot_pixel; Draw_fill: στυλ του ορθογωνίου, άδειο ή γεμάτο. typedef enum < DRAW_FILL_EMPTY = 0, DRAW_FILL_FULL, >Draw_fill;
- Draw Circle: Σχεδιάστε έναν κύκλο στο buffer εικόνας, χρησιμοποιήστε (x_center y_center) ως κέντρο και ακτίνα ως ακτίνα. Μπορείτε να διαμορφώσετε το χρώμα, το πλάτος της γραμμής και το στυλ του κύκλου.
void paint_drawcircle (uword x_center, uword y_center, ακτίνα uword, uword χρώμα, dot_pixel line_width, draw_fill draw_fill) παράμετροι: x_center: x άξονα του κεντρικού y_center: y-axis της ακτίνας: ακτίνα του κύκλου: το χρώμα του κύκλου. typedef enum < DOT_PIXEL_1X1 = 1, // 1 x 1 DOT_PIXEL_2X2 , // 2 X 2 DOT_PIXEL_3X3 , // 3 X 3 DOT_PIXEL_4X4 , // 4 X 4 DOT_PIXEL_5X5 , // 5 X 5 DOT_PIXEL_6X6 , // 6 X 6 DOT_PIXEL_7X7 , // 7 X 7 DOT_PIXEL_8X8 , // 8 X 8 >Dot_pixel; Draw_fill: στυλ του κύκλου: άδειο ή γεμάτο. typedef enum < DRAW_FILL_EMPTY = 0, DRAW_FILL_FULL, >Draw_fill;
- Εμφάνιση χαρακτήρα ASCII: Εμφάνιση ενός χαρακτήρα στη θέση (xstart, ystart), μπορείτε να διαμορφώσετε τη γραμματοσειρά, το προσκήνιο και το φόντο.
void paint_drawchar (uword xstart, uword ystart, const char ascii_char, sfont*γραμματοσειρά, uword color_foreground, uword color_background) Παράμετροι: xstart: xstart του χαρακτήρα ystart: ystart του χαρακτήρα ascii_char: ascii char font: πέντε γραμματοσειρές είναι avaial: Font20: 14*20 Font24: 17*24 Color_foreground: Foreground Color_background: Χρώμα φόντου
- Σχεδιάζοντας συμβολοσειρά: Σχεδιάστε συμβολοσειρά στο (xstart ystart), μπορείτε να διαμορφώσετε τις γραμματοσειρές, το προσκήνιο και το φόντο
void paint_drawstring_en (uword xstart, uword ystart, const char*pstring, sfont*γραμματοσειρά, uword color_foreground, uword color_background) Παράμετροι: xstart: xstart του string ystart: ystart του string pstring: string: fonts είναι διαθέσιμα: 20 Font24: 17*24 Color_foreground: Foreground Color_background: Χρώμα φόντου
- Σχεδιάστε κινεζική συμβολοσειρά: Σχεδιάστε την κινεζική συμβολοσειρά στο (xstart ystart) του buffer εικόνας. Μπορείτε να διαμορφώσετε τις γραμματοσειρές (GB2312), το προσκήνιο και το φόντο.
void paint_drawstring_cn (uword xstart, uword ystart, const char* pstring, cfont* font, uword color_foreground, uword color_background) Παράμετροι: xstart: xstart του string ystart: ystart του string pstring: string: font: gb2312 fonts, δύο fonts είναι διαθέσιμες font12cncn: ascii 11* N: ASCII 24*41, Κινέζικα 32*41 Color_foreground: Foreground Color_background: Χρώμα φόντου
- Αριθμός συρρίκνωσης: Σχεδιάστε τους αριθμούς στο (xstart ystart) του buffer εικόνας. Μπορείτε να επιλέξετε γραμματοσειρά, προσκήνιο και φόντο.
void paint_drawnum (uword xpoint, uword ypoint, int32_t nummber, sfont* γραμματοσειρά, uword color_foreground, uword color_background) Παράμετροι: xstart: xstart αριθμών ystart: ystart αριθμών nummber: Αριθμοί που εμφανίζονται. Υποστήριξη τύπου int και 2147483647 είναι η μέγιστη υποστηριζόμενη γραμματοσειρά: ASCII γραμματοσειρές, πέντε γραμματοσειρές είναι διαθέσιμες: Font8: 5*8 Font12: 7*12 Font16: 11*16 Font20: 14*20 Font24: 17*24 Color_foreground: Foreground_backgrack:
- Χρόνος εμφάνισης: Χρόνος εμφάνισης στο (xstart ystart) του buffer εικόνας, μπορείτε να διαμορφώσετε τις γραμματοσειρές, το προσκήνιο και το φόντο.
void paint_drawtime (uword xstart, uword ystart, paint_time*ptime, sfont*γραμματοσειρά, uword color_background, uword color_foreground) Παράμετροι: xstart: xstart του χρόνου ystart: ystart του χρόνου ptime: δομή της font: ascii font, πέντε γραμματοσειρές είναι διαθέσιμες γραμματοσειράς: *20 font24: 17*24 color_foreground: foreground color_background: φόντο
Πόρος
Εγγραφο
- Σχηματικός
- 5.83inch e-paper προδιαγραφή
Οι συσκευές e-ink υποφέρουν από καύση?
Πίσω στις κακές παλιές μέρες των οθονών υπολογιστών CRT, οι χρήστες υπολογιστών αντιμετώπισαν το πρόβλημα του Burn-in, στο οποίο μια οθόνη που έδειξε την ίδια εικόνα για πολύ καιρό θα είχε τελικά την εικόνα “καμένη”-δηλαδή η εικόνα θα επιμείνει στην οθόνη ακόμα και μετά την αλλαγή της οθόνης σε κάτι άλλο. Οι οθόνες e-ink υποφέρουν από παρόμοιο ζήτημα?
813 1 1 χρυσό σήμα 8 8 ασημένια σήματα 18 18 χάλκινα κονκάρδες