1
\$\begingroup\$

I got confusion while reading datasheet of the OLED display(128x64).I do not understand why to use two column start registers.enter image description here

https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf

\$\endgroup\$
0
0
\$\begingroup\$

Since there are 127 columns you need at least 7 bits to select target column. So, you have to send at least 2 bytes to LCD: first the command "set target column" and then the actual column number.

To speed up the communication they introduced these 1-byte commands, passing command code in the high nibble (4 bits) and half of the column number in the lower nibble (another 4 bits).

This means that you are sending 15 less bytes for each 16 successive columns, because you changing only lower half of the address. Then you update high half once and continue as before.

\$\endgroup\$
0
\$\begingroup\$

The lower start column address command sets the least significant 4 bits of the column number. The upper start column address command sets the most significant 4 bits.

See table 9 beginning on page 28 of the datasheet, for a good overview of the bit layouts of each command.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.