钻石会员
主题
回帖0
积分10947
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。
_- |3 G# Y9 G4 r中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。
. H/ r% Y2 x4 V4 I$ Dpdf如下,只有一页,那是相当的简单 * {9 O4 ~4 x9 V* k4 Q6 `! K
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
4 g/ f0 H3 [& [3 ^$ ]
, q0 l ]8 q3 h, D w1 B' o( O$ E驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。
: x) H/ ~& ^5 ~$ i# ]3 q+ i. k
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
+ k5 e9 X) B( ~" m# }% i
, X: d) F: H. Q ~+ }8 U8 v" H, i; g3 S/ ]' X0 F4 h. J
主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和- ?4 s: R% k# W# H/ z; p) y
640×400/8Byte=31.25KByte的显示缓存。 % j# U/ o4 H" U0 a3 U: ]0 P+ {
2 R/ \* k4 B* I6 U5 e' R
sram足够的只有一块mega128的板子(外扩32KbyteSRAM)。3 J9 D# ]0 Y8 s( E9 n. d& u: b
好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。* u7 q" n5 L& g) N' a0 c$ I
0 _; e2 ^' F v" d% |7 ?! ^0 t
* N6 _( i2 C/ o7 ]: O# m1 {! e1 v最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。- z4 ?; a9 d9 v9 z) i5 Q- G4 R0 }
(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)/ i7 G8 ~0 n$ ~
, k' }. g, s: b0 y
6 ^( u9 K" J$ c( ~硬件:, q5 Z0 Q' S% ^4 ~3 o( r" G8 x' L* N
MCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC573
4 h. v2 x0 e1 v8 a
* X( z6 h8 L" D8 g9 P! B. J+ X2 q5 B0 _7 i/ j; Z
4 d) Z! D5 @' U4 J
5 }4 }+ J7 W+ d# w x2 ^. i% a
液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)
N/ m$ X8 L# `& h' h9 Q8 h1 J7 n带数码管的那个板子背面就是3R33
6 [2 r, z c' u: U$ }4 z
+ i/ V# J1 [3 e! u X3 U
4 r' h; D$ r' M( ?4 _
下面测试图:
4 I) N( Z2 W! ^% w V1 r; a. k; @
q4 h5 T2 c& h+ o% A( G0 s% b: [) x; e, `
0 V! R' @5 I" u# i1 u' x
0 }! y+ @, h# p7 K& o' I
) Z$ X6 x& H% d. p& f
0 Y, b% \5 |0 g% |
D/ n9 q1 F1 [( }' R
" ~ K2 P$ b7 L: b' f程序不怎么样,愿意参考的可以看一下。8 Q( N$ D0 N2 |9 F
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
! P3 Q' ]+ Y& n6 Z1 n
% `8 z! x4 c# O" A& PAVR studio 5.1编写,GCC编译器。! @. M% s; v) R. I7 S" I- @
另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。 o7 h; N2 j. w9 n* u
* P4 c8 R" Y$ U
! s% N. C, O6 f. E! S4 l下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。
3 ~. y& I' s3 y# f$ E/ A# ]不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。 C: P! W' k" b0 d6 U& s
% r" ~8 F5 Z$ c
# q. u; {4 K* A! J# k顺便贴两张正之前组装别人的VFD套件。
7 w6 j, Y3 k- S7 c- C! b程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)9 f9 I: j. \& Z' J2 C# x
. L" _+ e: Q' o/ h8 q0 n, d
4 h. @3 m4 p4 b w0 Z- Q+ j
|
评分
-
查看全部评分
|