钻石会员
主题
回帖0
积分10948
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。( c: x* T& u( F6 j: H' d/ ~( Y: `/ h
中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。
' ~3 y2 R: u$ G3 npdf如下,只有一页,那是相当的简单
. A" L' O7 \3 a+ n: ^
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
- l; x; y+ m3 `* F; U1 f1 G
! H/ J6 O, ^- S1 f驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。: c5 r s! k' |5 m( O
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
( g4 n( j( Z2 |" n# n& y- L" j" U- Z6 k# W# [$ @9 R, T9 z$ i) m
) l- G9 }/ h& x- b主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和
1 n9 U, }' U8 Z* v( W640×400/8Byte=31.25KByte的显示缓存。 $ }5 y8 \ Y; O$ `# L% R
& ~2 Y; O8 Y$ O* F8 S+ Y- ^sram足够的只有一块mega128的板子(外扩32KbyteSRAM)。# ?! f/ y( p" P8 c
好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。) k- w) s2 j) ]7 U/ g
% r( c W: W' }
* s3 _3 [( d4 n: `
最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。0 [/ B/ N! a( D* V* r$ L# O5 {5 M
(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)$ u) E- F/ ~' P2 x
! L$ q) |3 m& z& Z0 v D2 @6 J1 |9 K& K, S
硬件:
3 j o7 a/ }& I: H+ T+ YMCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC5732 c% W9 o4 D0 }, e
0 a; q4 Y5 j9 k6 E
) }7 t$ H [# P I) I& e e, A5 M; l* [* U* W* C0 s
! z- a- K$ z0 b$ [+ q$ |. Y
液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)' n; g; k: \- I8 k
带数码管的那个板子背面就是3R33
; J$ |3 L8 A& }7 v* {' p
# P% c' r/ \8 S& x( {0 W
7 T) R' B& I: `6 t下面测试图:
$ w, O7 u0 C- l1 {1 _& S6 Q6 E Y r2 p3 Z
0 |0 S& Y O( p4 F, s- f) ^+ r1 s
- c: w9 `1 ~' Q1 s* ?& {% `0 c7 G& U3 I
# Y W& E( q% y7 v
) R# N9 W+ I& S- k, ~0 x
/ u- g, R; b5 s' A. ^4 k
4 Q9 ^! _( A$ G8 }6 n* W w! u$ L% [% d
程序不怎么样,愿意参考的可以看一下。
$ X1 R" G) A% |7 a" M- {2 f
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
5 I* b) T$ d4 u3 p1 j
! D/ M0 U* o( f) s, A, I' c+ S$ ~
AVR studio 5.1编写,GCC编译器。
( I1 w1 r3 G/ x* r( y& f另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。* `9 i' a6 S& w6 q& s! I$ j
$ c5 j. C3 I" m4 r4 G& T4 B) ^
% c9 _0 D! e6 l2 B. Q" g0 D# i
下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。
5 f8 \: a8 Q2 k+ r0 ?' J6 h不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。
! X1 v, g h* f H/ k7 y) j% P7 B" l
5 {: \5 {. ~, i- \$ i, A) s
顺便贴两张正之前组装别人的VFD套件。9 h/ o; D( {4 {' u- u) R
程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)
3 C) l+ z, O+ u6 R9 {' n8 E
% `1 q1 ?, z1 n3 |; ]1 T; J& V% c& \; J; Z0 ~8 y9 r0 _3 |
|
评分
-
查看全部评分
|