Since some info gone due to database crash, below is my personal experience with Winstar WS0010 based 1602 oled screen.
The following commands using LCDOUT $FE,digit do the following:
19 low brightness
27 graphic mode / low brightness
31 graphic mode / normal brightness
32 high brightness
33 high brightness / EN/WEST characters
34 high brightness / EN/RUS characters
35 high brightness / EN/EU characters
36 normal brightness / default char?
41 normal brightness / EN/WEST
42 normal brightness / en/rus
43 normal brightness / en/eu
There are some other codes too, below 19, which do less useful things, like shift display right or left, enable-disable cursor and so on. Also, there might be some statements above 43, which do something, but had no time to check in details.
These commands can be used in mid-code, any time, but if you had something to display, you need to do it again. I mean, say you have "hello world" on the screen, and you decided to change brightness, by sending LCDOUT $FE, 19, you need to send command to display "hello world" again, to see the effect.
For the brightness, there are several ways to adjust it.
1. Solder pot to the specific area on PCB (google for details).
2. Adjust brightness as I've shown, but when you set low brightness, you can see that pixel brightness is not even, not so pleasant effect.
3. Enable/disable display quite fast via the dedicated pin - it is reasonably fast, so you can hook it to HPWM output of your chip.
Thank you for the useful info on the Winstar displays.
Ioannis
Bookmarks