PCD8544 Paint
A downloadable tool
Powered by Python 3.10.5, pygame-ce 2.4.1, NumPy, Pillow, pySerial and tkinter (Tk interface)
Code (Python script, procedural) by Kyuchumimo
UI Graphics by Alexx Dip
CHANGELOG 2024.04.27
- PCD8544 now has the ability to compare software versions every time it starts up. If you have a version lower than the latest version, a window will appear asking if you want to download this version. This functionality depends on Web Scrapping in the project description.
To fully enjoy this feature, your system is required to have an internet connection.
- focus_force() was added to the 'new' option window and code generator window.
-Added emblem icons for all tkinter windows.
-When closing the program, besides asking if you want to save or not the drawing, you will also be asked if you want to cancel the action.
"A custom tool for creating graphics for the PCD8544 LCD display by interacting with microcontrollers"
SUPPORTED IMAGE FORMAT
BMP | Windows Bitmap Format |
JPEG | Joint Photographic Experts Group |
PNG | Portable Network Graphics |
TGA | Truevision Graphics Adapter |
CONTROLS
KEYBOARD
1 | Paintbrush / Eraser (thickness 1) |
2 | Paintbrush / Eraser (thickness 2) |
3 | Paintbrush / Eraser (thickness 3) |
Q | Rectangle |
W | Ellipse |
E | Line |
A | Filled rectangle |
S | Filled ellipse |
D | Eraser (toggle) |
Z | Fill |
X | Rectangular selection |
LCTRL + Z | Undo (up to 50 actions) |
LCTRL + Y | Redo (up to 50 actions) |
LCTRL + V | Preview rectangular selection (release V key to paste rectangular selection at pointer position or release LCTRL key to cancel) |
LCTRL + N | New ... |
LCTRL + S / LCTRL + LSHIFT + S | Save ... / Save as ... |
LCTRL + O | Open ... |
LCTRL + B | Grab image from clipboard |
DELETE | Erase canvas |
ESCAPE | Close software |
MOUSE
POINTER (OPTIC / LASER / MOUSEBALL / TOUCHPAD / TOUCHSCREEN / PEN TABLET) | Cursor |
LEFT-CLICK | Draw / Tool selection |
RIGHT-CLICK | Suspend draw (press) / Restart draw (release) |
DRAG AND DROP | Load image |
KEYBOARD + MOUSE @ POINTER
LSHIFT + LEFT-CLICK @ SAVE ICON | Save as ... |
At the moment, the software is only compatible with the Raspberry Pi Pico development board with MicroPython, but there are plans to make it compatible with other MicroPython-compatible development boards such as ESP8266 and ESP32.
This feature works by talking MicroPython REPL commands with the microcontroller using pySerial.
The software can detect if you have more than one serial device connected to your computer (e.g. Bluetooth, USB-to-Serial), in these cases, you must make a selection to continue.
To display the graphics on the LCD, you need to have the micropython-pcd8544 library installed on your microcontroller:
https://github.com/mcauser/micropython-pcd8544
But if you wish, this software can install this library on your microcontroller for you.
The LCD connection pins are fixed for the moment and are as follows:
RESET | GP22 (pin 29) |
CHIP ENABLE | GP21 (pin 27) |
DATA / COMMAND | GP20 (pin 26) |
SERIAL DATA INPUT | GP19 (pin 25) |
SERIAL CLOCK INPUT | GP18 (pin 24) |
SUPPLY VOLTAGE (VCC) | 3V3 (OUT) (pin 36) |
BACKLIGHT | GP17 (pin 22) |
GROUND | GND (pin 23) |
CODE GENERATOR
This feature only appears when you close the software.
This code is only intended to be used in programs written in the MicroPython language for MicroPython-compatible development boards.
Updated | 1 day ago |
Status | Released |
Category | Tool |
Author | Kyuchumimo |
Tags | Pixel Art |
Download
Development log
- -CHANGELOG-Jun 12, 2023
Leave a comment
Log in with itch.io to leave a comment.