钻石会员
主题
回帖0
积分10947
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。6 k( l1 ^, C! C" M2 V
中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。
p5 @) X5 \' p( u/ y3 ?1 R( zpdf如下,只有一页,那是相当的简单 , [1 V6 }3 i' a' `
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
A5 a( s( X' M- d' q
! W+ h# _3 o2 K" |驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。
# i; u# h' K: }
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
) l4 X( |/ j( b, |, ~
8 m1 Y! V3 Y, N2 t( z- k+ B; q$ v- ]0 L
主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和
" @* }/ }2 O$ x# t640×400/8Byte=31.25KByte的显示缓存。 8 \ T5 z1 z/ e5 H& Y- Y
( \. w+ R' k/ |. C- K
sram足够的只有一块mega128的板子(外扩32KbyteSRAM)。8 Y/ Z+ X) d. J e
好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。
! `/ m' ]' C) J0 b; o- H' K8 \. C1 I1 M! }5 P# _+ r2 \6 X

' d( f# l; R2 ]& G V+ R最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。
' P* n5 s u0 m7 P" o' [5 i+ t(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……). ~- I+ K9 ^) ~. [ m6 G, ?
0 |' L* y, x; s! d, H- d. ^
4 N- U* D5 D' U4 U) k硬件:" Q6 Y. z7 I- X; `% t' [! R
MCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC573
* `7 N6 [, D& w- i
5 Y6 R: h# A; `+ q8 C: j6 C
, |/ D% c( n! [; v8 B- o' ?2 I: D, @5 v4 n
4 ?" N6 l' c+ q1 Q9 c) p. Z液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)
* F9 K/ {0 U* B9 W9 K3 u; {带数码管的那个板子背面就是3R33
( t& d$ S! {, O9 C9 D) X& r
1 K% u7 J1 A+ V
3 ~/ ~, Z* r& `7 b下面测试图:
; c, ?) ?2 E" `- I. m# x
* P' v! w+ G5 M# f, {3 O
9 X# h/ Z& w7 ^; E2 V2 K8 z2 q+ O+ V3 N* b% r' W
2 z4 a% Y0 U6 w/ Q* g+ _# u/ e
2 L( Y1 C1 q9 k) e
1 @, `# W: W: h ]
# N9 {9 f) v; H: ~- I3 u
; _5 h) V( G# ~8 J% K- ?8 L3 ]0 ?: Y w& }2 _9 t2 x
程序不怎么样,愿意参考的可以看一下。/ _4 h8 U+ {. f+ d% o/ ?
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
2 b- V2 v: o# ^& t$ ~
; B4 T+ M% ^. a
AVR studio 5.1编写,GCC编译器。! @% ^" z5 }8 Q& b, Q' S7 q
另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。
) f# m0 {) j$ c* L& w
8 b3 r$ m% \7 O( L3 |# X! m! m% P" k; H& f- l# ^
下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。
: {; `3 ~9 j- P( } S! `7 q不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。
8 i) Z, ^0 N k: {+ W& G8 N( f; i
( c. T' g1 n, F5 k
6 w6 E& j" y0 c( p5 m$ A- {) R顺便贴两张正之前组装别人的VFD套件。
& F6 R, I, f# p5 N程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……); d4 n( C$ G" A
: K2 P7 A: \1 E7 B% X. H3 c8 T- D# h$ u. e O
|
评分
-
查看全部评分
|