12864市面上比較流行的有兩種,一種是以KS0108為主控芯片的,不帶字庫的,說白了就是只能靠打點才能顯示出字符或圖形的,當然要借助取模軟件;另一種是以ST7920為主控芯片的,帶ASCII碼和中文字庫。至于兩種的區別下一篇再討論,這篇先講述KS0108為主控芯片的12864的原理。
這是網上找的一個管腳圖,當然不同品牌的可能略有差異,但是主要的還是一樣的
重點要講一下CS1和CS2,KS0108控制的12864內部有兩個控制器,分別控制左半屏和右半屏,如下圖所示 左半屏和右半屏操作時寫的地址其實是一樣的,那么只能通過片選CS1和CS2來選擇哪半個屏了,如果兩個都選通,則相當于兩塊64x64的液晶了,而且顯示的內容是一樣的,取模方式是縱向8點下高位。 好了,來說下原理,列的范圍是0~63,我已經標出了,行是不能按位來寫的,而是寫“頁”,一個頁相當于8個點,也就是8位,即一個字符,高位在下面,那么頁的范圍是0~7,共8頁,8頁x8個點正好64個點。 這是我用取模軟件截的一個“們”字,可以看出它是16x16大小的,實際上占用了兩個“頁”,16個列,而我們操作時先固定一個頁,比如這個就先寫上面那頁,假設為n好了,從列0寫到16,然后頁n+1,再從列0寫到16,這樣一個“們”字就出來了,下面是其代碼0x40,0x20,0xF8,0x07,0x00,0xF8,0x02,0x04, 0x08,0x04,0x04,0x04,0x04,0xFE,0x04,0x00,
0x00,0x00,0xFF,0x00,0x00,0xFF,0x00,0x00,0x00,0x00,0x00,0x40,0x80,0x7F,0x00,0x00,
可見16x16的字符占了32個字節(上面n頁16個字節加n+1頁16個),那么如果一幅滿幅的圖片,就是128x64,占用128x8=1K個字節,可見還是非常占空間的。這樣大家對這款液晶的原理是不是已經懂了呢?接下來的事就是大家在這款液晶上畫出自己想要的東西吧。
|