数码之家

 找回密码
 立即注册

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 4028|回复: 11

[C51] 记一次失败的尝试,用STC15W4K56S4点亮农行金e顺通用K宝12864屏(排线丝印FM1420901CT06-00-B)

[复制链接]
发表于 2023-7-23 21:11:15 来自手机浏览器 | 显示全部楼层 |阅读模式
书接何起,废话开始,说是不久前捡的那几个U盾,扔在角落吃灰,那天在积分兑换见有人出有个STC开发板,于是乎心血来潮就收来耍耍。
拆机帖拆中信银行,农行两U盾
话说玩单片机也是没入门,也都还是很久很久以前的事了,套用张3丰的那句,"现下什样了?已经忘记了一大半了,只道是不坏,不坏,忘记真快",趁着快递还在路上这段时间,四处走马观花,补补基础,下载安装keil软件,STC-ISP的,取模软件等一些数据手册,完蛋玩意,STC的官网彩页介绍还是一样熟悉的页面,经典永留传,有人说是跟椰树有的一拼,就服他的芯片手册很是友好,能吃透手册在我看来那都是高手了,每个功能应用示例程序很好,几乎拿来就用。
那么想驱动一个屏,最麻烦事儿当然就是引脚定义的,要致富,先修路,正所谓,前人 栽树,后人吃果,通过直接站内外搜索U盾,12864,排线丝印等相关关键字,翻阅终于找到了引脚定义,感谢大婶@jf201006的分享,飞机直达,串行通信之SPI协议、IIC协议实践,点亮两个12864液晶屏/U盾
我这款K宝的引脚跟大神这贴的第二块屏引脚一样,内部的电路也可以说是一样的,只是外壳印的字体不一样,开屏直接显示金e顺。题外话,要么有人总说老站好呢,那个年代经过长期的累的的积,真是有很多技术精华帖,老站大婶玩这些u盾都玩出花来的。
万物皆备,只欠孙明羽扇了,扇1扇,东风俱来,开搞硬件,开拆,先上电确保屏幕显示正常。

引脚定义直接用坛友的图就好。记下屏幕引脚定义,方便查询编程。

开发板也到手了,坛友真实在,让匀点焊丝来,发来不少同时夹好货:4056模块,,STC15W408AS等,只好3Q威力莫趣。

简单看看开发板电路引脚走向。

还是马云家网图实在。

这个位置烙铁动过,有点脏,缺失一个电容C12,从网图和电路上来看是CH340G上4脚3.3v的103滤波电容,对电路没太大影响后期有空再补上,洗刷刷干净,好多了。

开发板电路原理

ch340驱动打上,插上usb,完美识别。

但是看手册这型号的单片机可以不用转TTL,直接插usb使用。

按需要把单片机引脚连接屏幕,按12864手册时序图大多会有片选使能引脚CS,低电平有效,这屏有点不同,至于RST复位引脚我直接接上拉电阻,高电平了,后来又换到单片机引脚驱动。

兵马未动,粮草算是运的差不多了,接下来就是36计之攻心计,开搞软件,一步一步来吧,心急吃豆腐会烫嘴,读写指令,写数据之类的。
按照坛友那贴给出的信息,这屏要在发送每条指令之前先发送0x80,发送每个数据之前发送0x40,借用它的图。

我按照他那帖子的程序转化为C51的程序多次修改,又多次尝试用我自己另外写的,也尝试修改下面这位坛友这帖的同款,最终以失败告终了。
@北斗也用AT89S52点亮U盾IIC屏
多次排除软硬件问题时,有次接错引脚,又把屏拆了装回原u盾,一来二去,把排线搞废了,这屏直接就垃圾桶了。前后对比

这里有个疑问?按照@jf201006的介绍,这里屏地址是0x3F,写地址是0x7E,但我看这位坛友用c51点亮的的程序,前后也没见先写从机地址呀,直接就发Ox7E了,有点陷入困境了……

这是@Jf201006程序里的部分,可见传指令之前,是又LCD_ADDRRS传送的,取值就是0x3F.
  1. void loop() {
  2.   // put your main code here, to run repeatedly:

  3. //测试
  4.   test(0xff, 0xff); //测试黑屏
  5.   delay(1000);

  6.   test(0xaa, 0x55); //测试半明
  7.   delay(1000);
  8.   Wire.beginTransmission(LCD_ADDRESS);
  9.   wcmdiic(LCD_off);  //关门显示
  10.   Wire.endTransmission();
  11.   graphic();        //调入字
  12. Wire.beginTransmission(LCD_ADDRESS);
  13.   wcmdiic(LCD_on);  //打开显示
  14.   Wire.endTransmission();
  15.   delay(1000);
  16.     graphic2();        //调入字
  17.   delay(1000);
  18.   
  19. }  
复制代码

而一位坛友的,我观察前后就只是传了0x7E写地址,这是为什么?搞不明了,另一坛友部分程序,手机编码不对,中文注释部分我给他删掉了,
  1. void LcdSt7567_WriteCmd(uchar cmdcode)
  2. {
  3.    I2C_start();
  4.    I2C_write_byte(0x7E);       
  5.    I2C_write_byte(0x80);       
  6.    I2C_write_byte(cmdcode);
  7. //   I2C_stop();

  8. }
复制代码


都看到这里了,赏点M吧,孩子!最近兑物用了不少呀,就这样,太累了,还是没能吃透iic和12864呀,指针和数组还得学习学习,谢谢观看。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册 微信登录

x

打赏

参与人数 4家元 +95 收起 理由
jf201006 + 30 原創內容
kkdkj + 30 謝謝分享
nokia5320 + 15
猪小呆 + 20

查看全部打赏

发表于 2023-7-23 21:40:14 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2023-7-23 23:12:38 | 显示全部楼层
游客请登录后查看回复内容

打赏

参与人数 2家元 +42 收起 理由
jf201006 + 12 精彩回帖 我帖中没讲明白这点.
兔包公 + 30 熱心助人

查看全部打赏

回复 支持 反对

使用道具 举报

发表于 2023-7-24 00:32:57 来自手机浏览器 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2023-7-24 09:34:05 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2023-7-24 09:46:36 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2023-7-24 11:23:20 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2023-7-24 12:03:23 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2023-7-24 21:06:23 来自手机浏览器 | 显示全部楼层
游客请登录后查看回复内容

打赏

参与人数 2家元 +42 收起 理由
ljlun + 30 熱心會員
兔包公 + 12 謝謝分享

查看全部打赏

回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-7-24 23:12:10 来自手机浏览器 | 显示全部楼层
游客请登录后查看回复内容

打赏

参与人数 1家元 +18 收起 理由
jf201006 + 18 以資鼓勵

查看全部打赏

回复 支持 反对

使用道具 举报

头像被屏蔽
发表于 2023-7-25 09:18:34 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

发表于 2023-7-25 15:36:51 | 显示全部楼层
游客请登录后查看回复内容
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 微信登录

本版积分规则

APP|手机版|小黑屋|关于我们|联系我们|法律条款|技术知识分享平台

闽公网安备35020502000485号

闽ICP备2021002735号-2

GMT+8, 2025-12-12 14:57 , Processed in 0.202801 second(s), 12 queries , Gzip On, Redis On.

Powered by Discuz!

© 2006-2025 MyDigit.Net

快速回复 返回顶部 返回列表