本帖最后由 七天34368 于 2022-5-22 16:24 编辑
最近疫情严重,居家办公,闲来没事,继续折腾建U盾。 U盾是用的时候找不到了,又着急用,就去银行挂失了。后来找东西的时候又被翻出来了,一直吃灰中。 上面那个帖子讲的是12引脚的192*64LCD屏幕,我这个U盾他什么标识也没有,当时也没有想那么多,也不懂,照着他那个帖子做了一遍也没有点亮,索性,扔一边了,今天又看见它了,又在老坛里翱翔,花了100M币,又研究了一天,才点亮,可以按照自己需要求显示东西。还没有在论坛发过帖子,正好把自己研究、学习的过程分享下,希望能帮到有需求的朋友。
电路板也没有屏幕的信息
从上面的图片可以看出屏幕相连接的是12脚,后来我才发现最左边的两个引脚是NC脚,之前一直以为这个屏幕规格是192*64LCD屏幕,查了好多资料。 屏幕引脚定义如下:我刚没有看到这两个帖子的时候,6-10引脚轮番试了12遍,还是失败,帖子上说这个屏幕供电是3.3V最高不能超过3.7V,我拿万用表测5脚电压,高达4.4V,我把原U盾上的5脚取下来,从我51开发板取的3.3V电源,试了一遍引脚屏幕还是不亮(此时背光也不亮),想了想没有背光的原因(一直以为没有背光,多少能看见点),就一直想着把背光先点亮,经查板子发现三极管开路也不知道是NPN还是PNP,我直接把三极管去掉,导线引到地,开电源后,背光亮的很微弱(一直以为没有背光,多少能看见点),试了一遍引脚屏幕还是不亮。正要放弃时,看到这两个帖子,有按照上面的指示一顿操作,刚开始还是不亮,心想不应该呀,U盾一样的,不应该不亮,我又测了下屏幕的电源才2.5V,这个电源也太低了,我又把5脚芯片焊在原来的位置上,焊好,接通电源,屏幕真的有显示了,激动之情难以言表。 找引脚小结: 1) 找和屏幕引脚一样的资料; 2) 1-5引脚跑下电路基本能确定; 3) 和一个8脚芯片5、6脚相连的肯定是分别是SCK和SDA; 4) 1脚对地接个105电容,2-3脚之间接个105电容;(之前板子上多大的电容不清楚,我是这么接的) 5) 8、9、10引脚可以轮番试一遍;
二、 屏幕指令 file:///C:/Users/86176/AppData/Local/Temp/msohtmlclip1/01/clip_image009.jpg
void disp8(uchar pag,uchar col, uchar code *k) { ucharj=0,i=0; ucharlie; lie=col&0xf0; lie>>=4; write_com(Page_Add+pag); //先写页的地址(数字范围0-7,每页8行) write_com(0x10+lie); //0x1X 设置高四位列地址 列的数字范围是0-127 write_com(0x00+col&0x0f); // 0x0X 设置低四位列地址 for(i=0; i<8; i++) { write_data(k); } } 0x1X为写入列数的高四位,0x0X为写入列数的低四位,如上图要在第2页第2列写入0x91,则步骤:先将A0=0,发送 0xB2 0x10 0x02 ,再将A0=1,发送0x91即可。也就是先设置要写的坐标,再发送数值。 我就搞懂这些,其它那些用的时候,再去深究。代码我用的帖子里,稍微改动了下。
最终效果展示
|