一乐电子

 找回密码
 请使用微信账号登录和注册会员

QQ登录

只需一步,快速开始

微信扫码登录

手机号码,快捷登录

手机号码,快捷登录

搜索
查看: 6504|回复: 15

我也玩1.04寸的96x64 OLED屏

[复制链接]
发表于 2011-1-6 11:23 | 显示全部楼层 |阅读模式
看了草版的OLED时钟后觉得这块OLED屏很有潜质,也想调试下。不过我只会51和汇编,所有程序都得重写。硬件最小系统已经搭好,只等模块到了。

硬件:用32.768MHz晶振给STC89LE516AD。

程序只写了个框架,弄了几个变量(从毫秒到小时),用8位静态164移位显示。然后在2ms的基频上将P1.0, P1.1翻转,500hz/2的频率非常准。波形见下图。
32M768正好.JPG
 楼主| 发表于 2011-1-6 11:40 | 显示全部楼层
选516芯片主要是用它的64KB ROM和高速运行,希望可以替换掉AVR。516的下载和运行比其它STC麻烦得多,刚搭最小系统就走了弯路。已经解决的问题:
1. P1.0与P1.1口拉低才能下载和检测芯片,此时无法运行程序!拉高则为运行程序,无法下载和检测芯片。
2.晶振频率太高会导致无法下载(仍可以检测到器件)。我的解决办法是在19脚(XI或叫XTAL1)加个跳线选择32.768M(含)以下石英晶振和66M的高频有源晶振,下载时切换到低频晶振。

OLED资料仍在看,好像挺难的。主要是我的编程水平,唉~。这个模块到底能不能调出来呢?心里没底啊。如果帖子不小心继续不下去了各位别怪我。

另放上传送门:
暂且伪装成时钟吧.---就算不准------10块钱OLED
https://www.yleee.com.cn/viewthread.php?tid=1173

不再是伪的.------- OLED指针钟. (怎么又是钟?)
https://www.yleee.com.cn/viewthread.php?tid=3273

[开坑不填我自豪] 基本能用的 OLED CLOCK 指针+数字 or zoom方式
https://www.yleee.com.cn/viewthread.php?tid=4987

[看链接]比1602还便宜的彩色1.04英寸65k色OLED屏 96*64 单片机接口
https://www.yleee.com.cn/viewthread.php?tid=987
回复

使用道具 举报

发表于 2011-1-6 13:50 | 显示全部楼层
支持楼主
回复

使用道具 举报

 楼主| 发表于 2011-1-7 12:02 | 显示全部楼层
本帖最后由 hefanghua 于 2011-1-7 12:24 编辑

谢谢支持。

快递还真是快,开工啦。不多说,上图。

正面

正面

背面

背面


从侧面看跟液晶屏没什么区别,只是屏幕表面有一层类似光学玻璃镀膜的紫色:
P1040923.JPG

模块用两排杜邦线连到单片机最小板上,最小板连到课程实验板用来ISP下载。
照着程序改成了51汇编,然后烧入MCU,结果没反应。一看发现12V变压器没通电,连上马上亮了。原来12V是OLED显示供电,与内部逻辑供电分开,只要3V不断,模块仍正常工作(只是不显示)。意外发现:悬空12V时居然有2.8V的电压出来,虽然没用。
刚高兴了一阵马上郁闷了。屏幕只能显示一条竖线,而单片机没有死机。。。上图。
P1040926.JPG

重启单片机可以看到屏幕从左往右快速刷一下白色,然后又回到“亮线”了。把晶振切换成高频的那个,刷屏看不到了,仍是“亮线”。郁闷中。。。
回复

使用道具 举报

 楼主| 发表于 2011-1-7 14:42 | 显示全部楼层
下午继续。
硬件方面:关3V而不关12V的话,偶尔会出现一个很亮的亮点,应该是扫描IC在扫描过程中停下了。很担心会损坏OLED,以后还是把3V升压电路用上吧。
程序方面:原来那条细线是初始化的时候画的线,不是故障。画3个不同颜色的矩形也可以了。看来C转51汇编成功。
接下来调完其它的子程序。
回复

使用道具 举报

发表于 2011-1-7 14:53 | 显示全部楼层
lz好速度...
回复

使用道具 举报

 楼主| 发表于 2011-1-7 18:58 | 显示全部楼层
本帖最后由 hefanghua 于 2011-1-7 19:45 编辑

还好啦。主要是前两天还没拿到模块就在参考编写你的程序了,呵呵。"测试负斜率的长线好像有点问题",试了下正常显示。
调了一下午,只有OLED_draw_line和OLED_draw_rectangle函数正常,杯具啊。想请教几个函数:OLED_draw_img函数做什么用的呢?我用它只画出两条白色的线(最左边)。esbusini呢?另外就是最主要的OLED_dot没效果,点画不出来。卡在这了。
回复

使用道具 举报

 楼主| 发表于 2011-1-8 16:39 | 显示全部楼层
继续。OLED_dot调出来啦,同时解决了红色变橙色的问题。(遇到的请见帖子117楼:
https://www.yleee.com.cn/viewthread.php?tid=1173&pid=78276&page=6 )
画矩形框要开启填充使能才能显示填充的颜色,不然只有个框。将全屏尺寸的矩形填充黑色可快速清屏(不知道还有没有更好的办法),代替比较慢的刷白屏及清屏函数disp_all。此法画的全屏三基色效果:

全屏三基色.JPG

编程到下一难关,呵呵。

OLED屏表面有张跟液晶显示器差不多的保护膜,我把它扯了。嘿嘿,居然是雾面的,漂亮多了。测了下功耗,12V时为0.7mA,SSD1332的资料上推荐的电感不需要那么大电流。全屏点亮三基色大约5分钟,屏幕仍然没温度,不像想象中的耗电。随着屏幕使用象素增多,关屏导致一排常亮的概率加大了很多(又好像是程序的BUG -_-),使用升压势在必行。我试着把电压调低,亮度也跟着变暗(不会是调亮度得这样吧~),5V已经很暗了。
回复

使用道具 举报

 楼主| 发表于 2011-1-9 18:31 | 显示全部楼层
从网上找的画圆程序,比如其中一句为"d+=2*x+3",看似简单,用汇编写起来就麻烦了。单片机的减法,出来的负数为补码,必须转成加法计算。昨天到今天总算把画圆弄出个样子了。虽然只画了1/8圆,还不能设定任意原点,样子也不太好看。毕竟是用“中点画圆法”实现的,速度飞快。
回复

使用道具 举报

发表于 2011-1-9 20:03 | 显示全部楼层
OLED_draw_img  是画图的. 显示flash中的图片.
回复

使用道具 举报

本版积分规则

QQ|一淘宝店|手机版|商店|一乐电子 ( 粤ICP备09076165号 ) 公安备案粤公网安备 44522102000183号

GMT+8, 2025-12-16 13:21 , Processed in 0.036566 second(s), 30 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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