My Projects

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
electronic:lcd:canonmx300 [2018/10/25 07:17] – tonyelectronic:lcd:canonmx300 [2026/09/26 07:49] (current) – tony
Line 1: Line 1:
-{{ :electronic:lcd:p4118675.jpg?200|CANON MX300}} +{{ :electronic:lcd:p4118674a.jpg?200|CANON MX300}} 
-^<html><p style="text-align:center">LCD Description</p></html>||+^  LCD Description  ||
 ^Model|**CANON MX300**/MX310| ^Model|**CANON MX300**/MX310|
 ^Manufacturer|Canon| ^Manufacturer|Canon|
 ^Recovered from|Canon MX300 printer| ^Recovered from|Canon MX300 printer|
 +^Board IDs|QM3-2759|
 ^LCD type|positive| ^LCD type|positive|
 ^Polarizer type|reflective| ^Polarizer type|reflective|
 ^Columns|20| ^Columns|20|
 ^Rows|2| ^Rows|2|
-^Char matrix|5x7 ((but can display double height characters too)) | +^Char matrix|5x8 ((the MX300 displays a mix of single and double height (5x16) digits, but it may be using the programmable character set)) | 
-^Driver IC|mounted on LCD glass (CoG)|+^Driver IC|Hitachi HD44780 compatible ((Don't know chip id, but it has non standard commands: 0x39 mirror vertically, 0x3a mirror horizontally, 0x3b rotate 180° (mirror horz & vert) )) (CoG)|
 ^Backlight|-| ^Backlight|-|
-^Arduino driver| |+^Arduino driver|LiquidCrystal.h, or [[:arduino:mx300_driver_library]]|
 ^Connector|PCB flex cable| ^Connector|PCB flex cable|
 ^Num Pins|14| ^Num Pins|14|
 ^Pin spacing|0.04"| ^Pin spacing|0.04"|
  
-^ ^^^Arduino test rig ((reminder for my personal testing, not useful for anyone else!))|| +The two rows of 20 characters have no space row between them, so that using the 8 programmable characters you can create characters that span both rows.  The Canon MX300 printer displays a mix of single and double height digits, but I have no information on whether the controller supports this or whether they just used programmable characters.  During testing I tried setting double height fonts but to no useful effect.  See [[:arduino:mx300_driver_library]] for drivers that implement double height characters.
-^Pin#^IC pin^Label^Measured^Pin^colour| +
-^1| |E, R/W or RS? |0V| +
-^2| |E, R/W or RS?|0V| +
-^3| |E, R/W or RS?|0V| +
-^4| |DB0?|3.26V| +
-^5| |DB1?|3.26V| +
-^6| |DB2?|3.26V| +
-^7| |DB3?|3.26V| +
-^8| |DB4?|3.26V| +
-^9| |DB5?|3.26V| +
-^10| |DB6?|3.26V| +
-^11| |DB7?|3.26V| +
-^12| |Gnd|0V| +
-^13| |Vcc?|3.27V| +
-^14| | |4.66V|+
  
-\\ +^  Connector pin-out  ||^  Arduino test rig | 
-\\+^Pin#^Label^Description ^Pin| 
 +^1|R/W|0V| 
 +^2|RS|0V| 
 +^3|E|0V| 
 +^4|DB0|3.26V| 
 +^5|DB1|3.26V| 
 +^6|DB2|3.26V| 
 +^7|DB3|3.26V| 
 +^8|DB4|3.26V| 
 +^9|DB5|3.26V| 
 +^10|DB6|3.26V| 
 +^11|DB7|3.26V| 
 +^12|Gnd|0V| 
 +^13|Vdd|3.27V| 
 +^14|Vlcd|4.66V| 
 +Pin assignments verified 25/12/18.
  
 +Has the same interface, drivers and character set as [[:electronic:lcd:canonmp220|Canon MP220 LCD]].
 +
 +\\
 ---- ----
-===== Examples : =====+===== Examples ===== 
 + 
 +{{:electronic:lcd:p4118674a.jpg?800|CANON MX300 front}} 
 + 
 +{{:electronic:lcd:p4118681.jpg?300|CANON MX300 connector}} 
 + 
 +{{:electronic:lcd:p4118682.jpg?300|CANON MX300 connector}} 
 + 
 +{{:electronic:lcd:pa252257a.jpg?300|CANON MX300 connector}} 
 + 
 +{{:electronic:lcd:p4118680.jpg?300|CANON MX300 chip}} 
 + 
 +{{:electronic:lcd:pc263411a.jpg?300|CANON MX300 character set}}\\ 
 +{{:electronic:lcd:pc263398a.jpg?300|CANON MX300 character set}}\\ 
 +{{:electronic:lcd:pc263399a.jpg?300|CANON MX300 character set}}\\ 
 +{{:electronic:lcd:pc263400a.jpg?300|CANON MX300 character set}}\\ 
 +{{:electronic:lcd:pc263401a.jpg?300|CANON MX300 character set}}\\ 
 +{{:electronic:lcd:pc263402a.jpg?300|CANON MX300 character set}}\\ 
 +{{:electronic:lcd:pc263403a.jpg?300|CANON MX300 character set}}\\ 
 + 
 +{{:electronic:lcd:pa252244a.jpg?400|CANON MX300 examples}} 
 + 
 +{{:electronic:lcd:pa252251a.jpg?200|CANON MX300 examples}}\\ 
 +Example of double height numeric characters displayed by the MX300. 
 + 
 +{{:electronic:lcd:pc263404a.jpg?400|CANON MX300 examples}}\\ 
 + 
 +{{:electronic:lcd:pc283419a.jpg?400|CANON MX300 examples}}\\ 
 +Double height digit example using {{:electronic:lcd:mx300_dh_digits1.pdf|eight custom characters}}. 
 + 
 +{{:electronic:lcd:p1063644a.jpg?400|CANON MX300 examples}}\\ 
 +Double height digit example using {{:electronic:lcd:digits_bignum.pdf|seven custom characters}}.
  
-{{:electronic:lcd:p4118675.jpg?800|CANON MX300}}+{{:electronic:lcd:p1063642a.jpg?400|CANON MX300 examples}}\\ 
 +Double height digit example using {{:electronic:lcd:mx300_dh_digits-b.pdf|six custom and four existing characters}}.
  
-{{:electronic:lcd:p4118680.jpg?800|CANON MX300}}+{{:electronic:lcd:pc283415a.jpg?400|CANON MX300 examples}}\\ 
 +{{:electronic:lcd:pc283417a.jpg?400|CANON MX300 examples}} (({{:electronic:lcd:mx300_clock.ino}}))\\ 
 +Double height digit examples using a {{:electronic:lcd:mx300_dh_digits2.pdf|seven custom and three existing characters}}.
  
-{{:electronic:lcd:p4118681.jpg?800|CANON MX300}}+{{:electronic:lcd:pc283431a.jpg?400|CANON MX300 examples}} (({{electronic:lcd:mx300_clock2.ino}}))\\ 
 +Double height digit example using a {{:electronic:lcd:mx300_dh_digits3.pdf|dynamic custom character set}}.
  
-{{:electronic:lcd:p4118682.jpg?800|CANON MX300}} 
  
 +{{:electronic:lcd:pc263406a.jpg?150|CANON MX300 pixel layout}}\\
 +Example of two characters with all bits lit showing how they form one continuous block.