钻石会员
主题
回帖0
积分10948
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。1 e3 }! Z* h( W
中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。
: x( ], P, M8 ~8 O' Q cpdf如下,只有一页,那是相当的简单 ) Z* v8 R- P Z
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
5 n, R5 a: X) H
5 m! C" X" I/ ]. Q驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。+ N5 H0 D4 G6 A+ {
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
6 k. n% s. Y; m2 L& r
/ j6 i& E& p/ b
) u4 Y! g b! w) t9 t# X主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和! I6 {5 F, }% @
640×400/8Byte=31.25KByte的显示缓存。 : }; p7 i8 R% d6 q' d: M
" U1 G+ c2 V" X0 G q4 {7 A9 asram足够的只有一块mega128的板子(外扩32KbyteSRAM)。
' d0 F/ ]# t: F- b2 t; X好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。
' {2 B1 R: b5 a
) E z# X# r1 `7 O; M5 _
. s$ Q* S/ W; A$ q% d, C9 ~最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。3 i6 U ^8 x, E0 r5 u: ~, V: l" u
(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)
# E8 A' N& b) _# ~2 T
' o5 @0 {9 {* T' g$ a# L9 d8 e: l
9 R! e' Q( w- v8 | G3 u4 J: ]
硬件:
0 `/ X1 w7 f7 l! `MCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC5730 \: w) B# n7 o/ A; {* g# s( e+ s: j
9 P* i' M6 L+ Y& z+ z! M8 x* K. v- h- z3 X3 c k H' W
* { s0 O0 c1 ^4 [7 W$ |4 Z' P {8 m1 ]2 V0 E5 _2 G
液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)
9 P3 L6 f/ i% V+ d. i4 C Y! G& k带数码管的那个板子背面就是3R33
; U6 @6 k0 M# Z* _; `
1 t$ E: t; \ b0 G" u. Q7 G
9 f, |2 |9 A# L8 o0 m i: p下面测试图: U/ l l6 l D1 r8 N3 x
/ K6 f, V# Q u) t# {: E( }9 c" E
, F& ^1 V2 `( G% r, @& ]
5 u4 P. N3 D. |7 N* Q. M( L* i+ p; N& l! H% l2 }* Z
) V0 J0 m, H& j) ~
: q7 A1 ~# T, g6 e' i
& T8 O! o' M" S" Q# \/ C
) L% Q5 J4 E+ F. T3 C6 \8 `# m: t
程序不怎么样,愿意参考的可以看一下。4 w+ t( q2 E; a+ u$ {
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
* O: ]% d7 N5 d9 a5 T0 Q9 x2 L* A% {0 C6 x3 v
AVR studio 5.1编写,GCC编译器。: R+ c% J2 U' S6 f$ R
另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。9 [1 Y9 T# ~& }9 P. v
1 G- Q O) Z5 ?: x. {% y
2 E, c2 {; g7 |/ V
下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。' {$ w! P' `+ m2 b
不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。9 i" k" s" u; `8 |7 Z" ?" Z
4 B& @7 E# l6 ]
7 P4 E6 E: v5 a顺便贴两张正之前组装别人的VFD套件。
$ k. F5 D3 r) I$ E程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)
' M# X, V5 k& ~, {& e
+ z) g1 M7 H6 V# F
J& Y6 a3 p( w6 E2 t3 p
|
评分
-
查看全部评分
|