极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

楼主: Randy

arduino学习笔记32 - Arduino nokia 5110 PCD8544驱动实验

  [复制链接]
发表于 2012-5-30 21:39:52 | 显示全部楼层
悠然小调 发表于 2012-3-31 12:36
我试过还有两个5110的库都可用。

这两个库在IDE1.0下编译失败,你用的哪个版本
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-5-30 22:40:22 | 显示全部楼层
cools1860 发表于 2012-5-30 21:39
这两个库在IDE1.0下编译失败,你用的哪个版本

0023版本的哦。
回复 支持 反对

使用道具 举报

发表于 2012-7-13 09:36:48 | 显示全部楼层
想了想,翻翻箱子,哈哈哈哈,小爷我第一部手机就是5110,放在那里接灰很久了,,可以废物利用了~
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-7-13 09:41:38 | 显示全部楼层
星夜幻 发表于 2012-7-13 09:36
想了想,翻翻箱子,哈哈哈哈,小爷我第一部手机就是5110,放在那里接灰很久了,,可以废物利用了~

必须拿出来玩玩的,不然买的东西 不用就浪费了哦!其实现在这种屏也不贵!
回复 支持 反对

使用道具 举报

发表于 2012-7-18 21:38:32 | 显示全部楼层
Malc 发表于 2012-3-31 12:43
用关键字const,把编码定义成常量,存储在flash中,32k的flash可以存很多字了吧
或者加个外部存储器,I2 ...

学习了。谢谢呀。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-7-19 08:55:52 | 显示全部楼层
hunduncn 发表于 2012-7-18 21:38
学习了。谢谢呀。

欢迎经常来极客交流!
回复 支持 反对

使用道具 举报

发表于 2012-7-26 11:09:30 | 显示全部楼层
很好,很强大!!!!
回复 支持 反对

使用道具 举报

发表于 2012-8-22 17:59:15 | 显示全部楼层
楼主你那字模工具怎么设置的,我怎么设置提取的字模代码和你代码不一样?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-23 09:08:27 | 显示全部楼层
andyma 发表于 2012-8-22 17:59
楼主你那字模工具怎么设置的,我怎么设置提取的字模代码和你代码不一样?

你设置的东西不一样肯定出来的代码不一样咯!看个人需要哦!
回复 支持 反对

使用道具 举报

发表于 2012-8-26 10:01:02 | 显示全部楼层
Randy 发表于 2012-3-31 10:42
欢迎大家提问,这个屏的资料在网上已经很多了,但是用arduino来驱动的还是蛮少的。接下来研究一下arduino驱 ...

我按照要求连接了,有一个问题,就是屏幕一直处于满填充状态,只有不断的插入拔出VCC线,让屏幕不断的处于同段状态才能显示正确的字幕。
回复 支持 反对

使用道具 举报

发表于 2012-8-26 10:09:04 | 显示全部楼层
萧芸凤 发表于 2012-8-26 10:01
我按照要求连接了,有一个问题,就是屏幕一直处于满填充状态,只有不断的插入拔出VCC线,让屏幕不断的处于 ...


一直显示的就是这个画面

不断的动VCC之后可以看到字幕

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-26 21:24:46 | 显示全部楼层
萧芸凤 发表于 2012-8-26 10:09
一直显示的就是这个画面

不断的动VCC之后可以看到字幕

其实这个问题,我告诉你,那就是硬件装屏的时候没装好,或者屏坏了!与软件无关!
回复 支持 反对

使用道具 举报

发表于 2012-9-15 20:44:54 | 显示全部楼层
Randy 发表于 2012-8-26 21:24
其实这个问题,我告诉你,那就是硬件装屏的时候没装好,或者屏坏了!与软件无关!

新买来的模块到了,重新做了这个试验,得到了一些奇怪的结论。
1.新模块一开始也出现了上面的问题,如图

想啊,应该不会又坏了吧,这样人品也太差了,于是研究程序,最后将一行代码改动了一下,
改动前的代码
void LcdInitialise(void)
{
  pinMode(PIN_SCE,   OUTPUT);
  pinMode(PIN_RESET, OUTPUT);
  pinMode(PIN_DC,    OUTPUT);
  pinMode(PIN_SDIN,  OUTPUT);
  pinMode(PIN_SCLK,  OUTPUT);

  digitalWrite(PIN_RESET, LOW);
  digitalWrite(PIN_RESET, HIGH);

  LcdWrite(LCD_CMD, 0x21);  // LCD Extended Commands.
  LcdWrite(LCD_CMD, 0xBf);  // Set LCD Vop (Contrast). //B1
  LcdWrite(LCD_CMD, 0x04);  // Set Temp coefficent. //0x04
  LcdWrite(LCD_CMD, 0x14); // LCD bias mode 1:48. //0x13
  LcdWrite(LCD_CMD, 0x0C);  // LCD in normal mode. 0x0d for inverse
  LcdWrite(LCD_C, 0x20);
  LcdWrite(LCD_C, 0x0C);
}
改动后
将0x14改为0x11,然后。。。。然后居然好了,如图

2.这个时候在想,上次的那个屏幕或许没有坏,结果仍旧,百思不得其解,准备拆了,也许屏幕就是坏了,没有断电就把GND拔了,然后奇迹出现了

居然正常显示了
3.将上面代码0x11改为0x15,又恢复不正常了,这个时候将拔掉的GND插到VIN,奇迹又出现了

虽然背光是没有了,但是显示正常了
4.继续瞎搞,将代码改为0x08,一切又恢复正常了,这个时候GND是断开的,如果接VIN,那么就是没有任何显示

5.奇怪的事情还在继续,将GND连接GND,然后出现了

一开始看不出什么,将背光调暗,会发现一些条纹出现了。

现在才发现这真是一块神奇的屏幕,软件和硬件充分的结合在了一起,而且VIN和GND的不同接法居然和代码息息相关。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-9-15 22:13:56 | 显示全部楼层
萧芸凤 发表于 2012-9-15 20:44
新买来的模块到了,重新做了这个试验,得到了一些奇怪的结论。
1.新模块一开始也出现了上面的问题,如图 ...

不错,你经过这样的验证,真的是可以真正的知道答案了,有些屏幕就是很神奇的,但是大部分都是没啥问题的,唉。。。未知的因素太让人纠结了!谢谢你的测评!
回复 支持 反对

使用道具 举报

发表于 2012-9-17 00:43:28 | 显示全部楼层
新手问下,连接的电器图用什么软件画的?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-3-29 14:36 , Processed in 0.045629 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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