数码之家
标题:
记一次失败的尝试,用STC15W4K56S4点亮农行金e顺通用K宝12864屏(排线丝印FM1420901CT06-00-B)
[打印本页]
作者:
兔包公
时间:
2023-7-23 21:11
标题:
记一次失败的尝试,用STC15W4K56S4点亮农行金e顺通用K宝12864屏(排线丝印FM1420901CT06-00-B)
书接何起,废话开始,说是不久前捡的那几个U盾,扔在角落吃灰,那天在积分兑换见有人出有个STC开发板,于是乎心血来潮就收来耍耍。
拆机帖
拆中信银行,农行两U盾
话说玩单片机也是没入门,也都还是很久很久以前的事了,套用张3丰的那句,"现下什样了?已经忘记了一大半了,只道是不坏,不坏,忘记真快",趁着快递还在路上这段时间,四处走马观花,补补基础,下载安装keil软件,STC-ISP的,取模软件等一些数据手册,完蛋玩意,STC的官网彩页介绍还是一样熟悉的页面,经典永留传,有人说是跟椰树有的一拼,就服他的芯片手册很是友好,能吃透手册在我看来那都是高手了,每个功能应用示例程序很好,几乎拿来就用。
那么想驱动一个屏,最麻烦事儿当然就是引脚定义的,要致富,先修路,正所谓,前人 栽树,后人吃果,通过直接站内外搜索U盾,12864,排线丝印等相关关键字,翻阅终于找到了引脚定义,感谢大婶@jf201006的分享,飞机直达,
串行通信之SPI协议、IIC协议实践,点亮两个12864液晶屏/U盾
我这款K宝的引脚跟大神这贴的第二块屏引脚一样,内部的电路也可以说是一样的,只是外壳印的字体不一样,开屏直接显示金e顺。题外话,要么有人总说老站好呢,那个年代经过长期的累的的积,真是有很多技术精华帖,老站大婶玩这些u盾都玩出花来的。
万物皆备,只欠孙明羽扇了,扇1扇,东风俱来,开搞硬件,开拆,先上电确保屏幕显示正常。
[attach]1879636[/attach][attach]1879637[/attach]
引脚定义直接用坛友的图就好。记下屏幕引脚定义,方便查询编程。
[attach]1879638[/attach]
开发板也到手了,坛友真实在,让匀点焊丝来,发来不少同时夹好货:4056模块,,STC15W408AS等,只好3Q威力莫趣。
[attach]1879639[/attach]
简单看看开发板电路引脚走向。
[attach]1879640[/attach][attach]1879641[/attach]
还是马云家网图实在。
[attach]1879642[/attach][attach]1879646[/attach][attach]1879643[/attach]
这个位置烙铁动过,有点脏,缺失一个电容C12,从网图和电路上来看是CH340G上4脚3.3v的103滤波电容,对电路没太大影响后期有空再补上,洗刷刷干净,好多了。
[attach]1879648[/attach]
开发板电路原理
[attach]1879649[/attach][attach]1879650[/attach]
ch340驱动打上,插上usb,完美识别。
[attach]1879651[/attach]
但是看手册这型号的单片机可以不用转TTL,直接插usb使用。
[attach]1879652[/attach]
按需要把单片机引脚连接屏幕,按12864手册时序图大多会有片选使能引脚CS,低电平有效,这屏有点不同,至于RST复位引脚我直接接上拉电阻,高电平了,后来又换到单片机引脚驱动。
[attach]1879653[/attach]
兵马未动,粮草算是运的差不多了,接下来就是36计之攻心计,开搞软件,一步一步来吧,心急吃豆腐会烫嘴,读写指令,写数据之类的。
按照坛友那贴给出的信息,这屏要在发送每条指令之前先发送0x80,发送每个数据之前发送0x40,借用它的图。
[attach]1879655[/attach]
我按照他那帖子的程序转化为C51的程序多次修改,又多次尝试用我自己另外写的,也尝试修改下面这位坛友这帖的同款,最终以失败告终了。
@北斗
也用AT89S52点亮U盾IIC屏
多次排除软硬件问题时,有次接错引脚,又把屏拆了装回原u盾,一来二去,把排线搞废了,这屏直接就垃圾桶了。前后对比
[attach]1879659[/attach]
这里有个疑问?按照@jf201006的介绍,这里屏地址是0x3F,写地址是0x7E,但我看这位坛友用c51点亮的的程序,前后也没见先写从机地址呀,直接就发Ox7E了,有点陷入困境了……
[attach]1879661[/attach]
这是@Jf201006程序里的部分,可见传指令之前,是又LCD_ADDRRS传送的,取值就是0x3F.
void loop() {
// put your main code here, to run repeatedly:
//测试
test(0xff, 0xff); //测试黑屏
delay(1000);
test(0xaa, 0x55); //测试半明
delay(1000);
Wire.beginTransmission(LCD_ADDRESS);
wcmdiic(LCD_off); //关门显示
Wire.endTransmission();
graphic(); //调入字
Wire.beginTransmission(LCD_ADDRESS);
wcmdiic(LCD_on); //打开显示
Wire.endTransmission();
delay(1000);
graphic2(); //调入字
delay(1000);
}
复制代码
而一位坛友的,我观察前后就只是传了0x7E写地址,这是为什么?搞不明了,另一坛友部分程序,手机编码不对,中文注释部分我给他删掉了,
void LcdSt7567_WriteCmd(uchar cmdcode)
{
I2C_start();
I2C_write_byte(0x7E);
I2C_write_byte(0x80);
I2C_write_byte(cmdcode);
// I2C_stop();
}
复制代码
都看到这里了,赏点M吧,孩子!最近兑物用了不少呀,就这样,太累了,还是没能吃透iic和12864呀,指针和数组还得学习学习,谢谢观看。
作者:
猪小呆
时间:
2023-7-23 21:40
老哥开始玩单片机了,厉害呀
作者:
bg4rff
时间:
2023-7-23 23:12
本帖最后由 bg4rff 于 2023-7-23 23:16 编辑
3F是地址,但是地址和读写命令拼接成8bits,高7位为地址,末位位读写
3F<<1+RW合起来就是7E和7F,建议看一下IIC协议的相关介绍
这里的3F是设备地址,IIC协议的地址,是读写开始第一个字节发送的,是用来实现和芯片数据交换的地址
后面运用到具体的芯片,还有内部存储的地址,那个是芯片具体功能实现的寄存器地址
所以一共有两个地址概念,不要混了
作者:
19079571
时间:
2023-7-24 00:32
嘉立创开源广场有屏幕转接板,
作者:
数码之家小马哥
时间:
2023-7-24 09:34
太专业了,这个看不懂啊
作者:
kkdkj
时间:
2023-7-24 09:46
继续折腾,等你好结果
作者:
p350
时间:
2023-7-24 11:23
单片机程序有点烧脑
作者:
digital2Fox
时间:
2023-7-24 12:03
这种屏幕排线我是焊不了
作者:
jf201006
时间:
2023-7-24 21:06
屏的排线应该先上转接板,这样就不容易坏了。
我那个屏好像还在吃灰,需要的话给你。
作者:
兔包公
时间:
2023-7-24 23:12
jf201006 发表于 2023-7-24 21:06
屏的排线应该先上转接板,这样就不容易坏了。
我那个屏好像还在吃灰,需要的话给你。 ...
谢谢,这就不需要了,我还有折腾别的u盾的屏中,离点亮不远了
作者:
STC32位8051
时间:
2023-7-25 09:18
提示:
作者被禁止或删除 内容自动屏蔽
作者:
wangxiangtan2
时间:
2023-7-25 15:36
我也有个U盾屏,不确定引脚定义,一年了还没行动呢,我的帖子里面有
https://www.mydigit.cn/forum.php?mod=viewthread&tid=361625
欢迎光临 数码之家 (https://www.mydigit.cn/)
Powered by Discuz! X3.4