钻石会员
主题
回帖0
积分10948
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。. {/ v5 h# \1 X: g+ j! W
中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。" C( P- A5 f, i- t# k7 G4 P4 X
pdf如下,只有一页,那是相当的简单 ( ?0 K& ^5 T" ^
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
! S9 a- C: @6 K$ A8 Q
d1 w% n% C8 t% c# W5 z7 E/ O- q驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。0 [' T! \5 d& a/ p y; X7 N" ^
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
, v+ V% p' d q. N) |2 g
) I5 ]# E. t3 j' {$ e. t6 C
' Q& ~7 M, l ?/ t8 S P主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和
( ~; G0 y0 S6 q640×400/8Byte=31.25KByte的显示缓存。 i+ t: h3 U5 m1 u* z n: H7 t
. u: A# G6 P8 m4 n9 J `' Zsram足够的只有一块mega128的板子(外扩32KbyteSRAM)。4 o8 h- j- C/ g# i' F
好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。! v# W1 J# k# j9 i8 Q, j2 B
- q( ?1 r; _5 q1 T* e5 w 7 b- \$ ]- r6 v, k% [5 N7 G
最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。
. V7 W4 q4 `% l; f0 v, B(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)' ]# P3 g9 P& B0 ~
' u$ l" Q9 V9 Y- q
* o, u( f2 e, S. R+ d硬件:
7 j3 d4 y) q3 V; g& K3 N! i1 KMCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC573
5 i7 z; j+ F, ?5 ` Q' y7 `
" L( w8 u1 i. F) I$ c6 d& A) Z' G2 {
: S( \8 g/ m1 n0 [) }. S1 t& N! w9 Z3 M$ ]. K5 k
/ u% T) P+ K1 @3 P) `液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)
5 V9 X7 P3 s, h& ?带数码管的那个板子背面就是3R33 ' R- R: Q% D! o8 O) G& q
: g% l$ v: f. a7 o; n4 d, e- \* n0 ^$ |
下面测试图:& L2 Q1 @; r O, K3 G4 b- w
$ n- m% x o/ Z: `6 Q7 m
8 e6 ^# K, r' l" [# h1 h# @* V9 O1 O" N* F3 v/ N8 K
2 X; c D6 ^4 T( t x' e9 o% W9 w
3 N4 }8 R: f; a1 a" b" k( u
2 T: B) d r9 a9 [1 M
6 S3 c9 D! f, D8 A3 ?) y
) I* C, \9 M( W4 d
+ l; l/ W. Z. C
程序不怎么样,愿意参考的可以看一下。' j# k2 g' j, E- Z- t
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
- ^$ [2 `8 ~& t. H0 t
, }' E: T9 L) }# c0 p2 bAVR studio 5.1编写,GCC编译器。% M. Y4 {. N/ A% ^
另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。 p4 e1 B$ R' x v9 j- Q
3 m$ ^4 P" q2 l( m. N F2 U
/ t4 g# F2 V e4 c0 D; \" j: x
下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。
6 _% E/ w) n9 d% X7 s4 C( r不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。8 _: W+ h* e; L! c' ^
5 {/ C+ \" l% r( R- J$ J: Q" r5 K
9 h0 Q( W! }' I$ z" I! Q顺便贴两张正之前组装别人的VFD套件。
) O) a) M8 }$ v- h程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……); `& V9 }6 Y& J: Q
) Z; O+ H% H' C7 Q }
, j; ?" E/ i- J3 e# F& Y" O
|
评分
-
查看全部评分
|