钻石会员
主题
帖子
积分10948
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。3 n) b I/ z! z. e, G
中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。
3 ]+ F" U' ~) ~& S- `; _9 ipdf如下,只有一页,那是相当的简单 ]; m0 C% K5 A) I+ w- a
LM64135z.pdf
(133.26 KB, 下载次数: 1177)
0 R! a5 j5 r. j6 ~- ]
! S. K- a$ v/ H8 A驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。
( H$ I/ q3 r; ?' H4 w
LM64183P.PDF
(1.23 MB, 下载次数: 1152)
c$ j `( N0 w. l& O
7 s: z* B7 X" p1 r" Q" F9 } o' O2 W" a
主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和; v9 _# g! |- i) P
640×400/8Byte=31.25KByte的显示缓存。
Y+ I) w& I* n8 b9 g9 Y$ V
+ x3 [5 P0 U; x1 Q+ ^2 f1 f, v. Nsram足够的只有一块mega128的板子(外扩32KbyteSRAM)。
6 S5 ]7 @4 E& o# b, o3 A& {4 Q好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。
) w/ `& X0 f+ k! t# o. \) i$ K# S' D! k# b$ L
3 i- g) w3 k) e& O* G& y: n; [最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。
) L7 S2 P4 A/ a(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)
6 } O5 s# G" J) @) I' ^* w; c
! M& @. V+ N1 x3 r( |3 }+ b N0 m, ~0 P) ?+ c
硬件:
8 |1 _; r6 b% c+ GMCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC573
& m; ?, `) }. d+ A( h
+ P6 v' F6 s/ V' [6 f$ l
' I' Q% U% ~6 e+ E6 q! Q% _% E) W' `7 z C. a4 R5 C5 S- B8 x7 V
# N7 G5 e) a! V1 s7 j) y' h, O液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)1 \/ ^: _7 E, J& _
带数码管的那个板子背面就是3R33
4 H6 m {/ A: p2 N, B& ?$ }
9 q7 @* b& L. b f) a% H/ G
% q! B. i# b8 y/ F0 D* M Q下面测试图:) D0 g6 e( y; ^: N: W, V* G
. Y" T d) q% n+ S
6 r" @9 j3 T! H# y' f
1 G) V/ I. `! P4 ~
2 Z5 Q7 x, Y' _2 `, ~
' q4 R7 T6 b1 }% Z; `0 p
6 f7 p' d+ C6 }5 B' x5 X z7 B3 d, [
& f; L& z R+ p6 b* }" f
! t9 }! Q- D( E9 b7 t5 y$ r' `# _ y+ N% o2 t& a% }2 c
程序不怎么样,愿意参考的可以看一下。2 T' T# Q) Z! g- ?: ]
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
. L' G7 e3 x- J/ K) j$ S
- ~5 d4 N: @: o) }) P. T
AVR studio 5.1编写,GCC编译器。7 L3 B+ |4 t, [
另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。) I+ ~& W ]9 \% S
6 n, Z4 O% Q% U8 d, }
* z$ ]* u/ ?/ z# N1 L( i下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。
: M# F) h$ k3 T2 Z不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。: z" Q6 j r/ G4 \
; X7 y% x& s: B
$ F4 h* ]8 n- v' p9 {- c: D4 Y顺便贴两张正之前组装别人的VFD套件。. n) |5 P# L: H# T$ U* X
程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)) _+ L( L" X. v$ m
. w+ M& ~" b4 b' _9 ~2 P
* e3 h+ E$ h$ i/ A }/ w
|
评分
-
查看全部评分
|