钻石会员
主题
回帖0
积分10948
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。; m: D9 s; v) }6 ^7 U7 b( ~
中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。: l$ f( o& A) F7 M' i' N! Z
pdf如下,只有一页,那是相当的简单 4 F) D* h o5 H7 ?8 W
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
6 w; t& @' g5 F: O4 M
5 b# @1 H, Y( H! U# e7 @: G驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。
# {' x$ M, k3 t- z6 a) T9 v" Q
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
" G! l. a8 n# v% j) x& B5 P
2 A# R6 H" s, |1 V* U- \
" g( f+ D- y1 s主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和
7 j( k. ]- R2 `: Z: P* A; Y640×400/8Byte=31.25KByte的显示缓存。 / t4 ~$ n+ S# n5 p2 p( {5 i
2 b& v5 r1 K1 m4 Q" m) H
sram足够的只有一块mega128的板子(外扩32KbyteSRAM)。
+ A5 h6 |- ]8 G# i, m好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。8 s) I; J1 \4 r
) c# I# B2 I" R
5 ~; f2 d' W! R% e& |: S
最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。* y0 Q7 h. l: x# _& C; e0 w8 H8 C5 x
(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……): D- ]/ U( d2 o3 O
2 m- {# u9 |2 E v* E. _ P
: S/ E; P) M0 @硬件:* M* ^; j9 r V, O; U+ U, M* c
MCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC573
1 |3 x4 F& F) f" ^
+ L7 e2 R' Z' M( ?. }6 e, O$ L& Q, l0 d: o$ V
8 v ~( q9 x7 u8 X/ r# x) V
& w4 h# ~3 P# n7 |+ O+ P液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)
" v! Q D6 }5 w. e% v带数码管的那个板子背面就是3R33 ( G1 E7 w* p8 v* L
) z& K5 u$ ?% C* s* u( X0 R! i0 h+ [* g
; m( I4 M; p: R. K下面测试图:" X& d$ n5 K! N2 q. [# @
1 I; H w: Z+ P
9 g' a3 L& e# _$ e1 d4 N
0 q" M K9 |8 u* D% N
- S& J8 C3 E: ^* ?
1 v* f2 y2 s/ E& v+ n/ N
0 I* W' ]/ z h5 Y
5 i4 l; b% u. p Q" E
, M: H* s) J/ t" ?( w
+ U: d d+ @8 h5 x2 p& r程序不怎么样,愿意参考的可以看一下。7 z( n! K8 Q) q1 }9 {* A
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
0 M! v" Q7 ]$ t0 Z+ T
) a+ [9 B8 q7 c0 X( @' |1 e3 qAVR studio 5.1编写,GCC编译器。
+ o t& G7 F4 U6 l+ ^6 J另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。; ^$ n+ }5 @' ]; ]/ m
' D$ H: u7 K( W, I( H, a. g* Y$ l# H9 T, \
下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。& u) ]8 J" r) E1 _9 S) v Z& e
不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。
6 m! m l7 U1 c6 c& S( A3 b" {+ y! W( o. H
) Y6 Q$ T( U; Z$ f: T1 r# k顺便贴两张正之前组装别人的VFD套件。; b, z! v) n: \6 d0 ~* z$ C
程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)5 r7 T' m' [+ b- v1 n
2 T% O e6 p% M2 ]1 W; Q' o6 D1 ]( V" z/ f+ R
|
评分
-
查看全部评分
|