|
这个屏,在这里,应该是全网独一份能点亮并公开的了。
之所以知道主控芯片是J1880x,还是以前有墨水屏资料时顺手下载的手册。点这下载J18800x手册。·
J1880xj控制是65x132点阵屏的,想不明白为什么要驱段码屏。通信协议是4线SPI的。
下图,左边上面是行对应的段,左中、左下字符编码。右上、右中是屏对应的SEG;右下是排线的定义。
屏的命令基本和ST7567一样
初始化
- void lcd12864_j1880x_init(void)//J1880x
- {
- write_two_cmd(0xfa,32);////温度补偿自动换行/换列P17
- write_cmd(0xa0);//设置列方向P15_13
- write_cmd(0xc0);//设置行方向P15_14
- write_cmd(0x24);////EV 屏工作电压(升压电压)regulation ratioP14_8
- write_cmd(0xa2);//1/9bassP16_17
- write_two_cmd(0x81,5);//EV,EV=32 commamd对比度P14_9
- write_cmd(0x2f);//开启升压器P13_5
-
- write_cmd(0xB0);//设置页地址
- write_cmd(0x00);//设置列地址x0-x3
- write_cmd(0x10);//设置列地址x4-x7
- //write_cmd(0xa1);//设置列地址方向
- write_cmd(0xaf);//开机
- //write_cmd(0xa6);////正反显
- write_cmd(0xa5);//点亮所有像素P15
- //write_cmd(0xa4);//关闭 所有像素
-
-
- }
复制代码 依次显示0~F
- void disp_j1880_number(void)
- {
- unsigned char jn,jh,jl,num;
- write_cmd(0xb0);//页地址
-
- for(jn=0;jn<11;jn++)
- {
- jl=jn*2+3;
- write_two_cmd(0x10+jl/16,jl%16);//设置列地址
- write_dat(table[num*2]);
- jh=jn*2+4;
- write_two_cmd(0x10+jh/16,jh%16);//设置列地址
- if(num==8)
- {
- write_dat(table[num*2+1]+8);//点亮dp
- write_two_cmd(0x10,2);//设置列地址
- write_dat(3);//点亮overload USB
- write_two_cmd(0x11,9);//设置列地址25
- write_dat(15);//点亮m Wh m Ah
- }
- else
- { write_dat(table[num*2+1]);
- write_two_cmd(0x10,2);//设置列地址
- write_dat(0);//灭overload USB
- write_two_cmd(0x11,9);//设置列地址25
- write_dat(0);//灭m Wh m Ah
- }
- }
- write_two_cmd(0x10,0);//设置列地址
- write_dat(table[num*2]);
- write_two_cmd(0x10,1);//设置列地址
- write_dat(table[num*2+1]);//点亮dp
- num++;
- if(num>16)
- num=0;
- }
复制代码
视频动画看这里
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?立即注册
x
打赏
-
查看全部打赏
|