钻石会员
主题
回帖0
积分10947
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。
, u7 O L. h# N中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。
" Z a' b) b' B7 v |, S+ T4 Epdf如下,只有一页,那是相当的简单 2 \' ?0 e3 n$ o) E
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
A1 }, a1 Y; o' \1 t& e. p
V5 ?( b2 X/ s
驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。5 M* o5 j6 e% ]7 b' `5 Z- |
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
! Z) x0 q( }* G2 R7 X5 P4 I3 i! W2 i! X2 l) ^
+ C" y, e6 Z! s. _/ g7 d
主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和
3 r; g" ?! A$ ]9 ]% f640×400/8Byte=31.25KByte的显示缓存。
8 d8 b. _4 Y h- Z% `7 O: Y3 U! @8 e
sram足够的只有一块mega128的板子(外扩32KbyteSRAM)。
9 F S) D2 e0 i4 p好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。
( U; k* d7 c( d! x2 w' K" j6 q; |, R) ^1 |* M8 h/ }) t s: g
+ a) M* V/ {: u' y' x7 w
最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。
( X6 d; Y/ V @" |" \" M$ K(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)# j |& r$ @3 q
% g* B+ `2 ]( t3 J4 Z/ p. F
4 k0 v0 @6 D" Q3 z
硬件:/ ]/ A# o9 ~* ~; s, S- B
MCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC5736 ~. Z/ e+ `9 }. {1 k. \6 G) _
, V0 d# o+ |* _: B
7 V% }' P+ K# I# A w3 L) `1 a
: o& S9 R- z" [6 u7 p
" F1 K$ q7 v7 l: q
液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。), |2 I/ l1 K: O4 R5 T5 c* e
带数码管的那个板子背面就是3R33 ) |( H Z/ ]# y
/ K3 u1 ~# [6 P
5 ?4 q' H% `3 H9 C* G. F. d4 L下面测试图:
/ J* M8 H. z8 Q3 ]1 ]
3 k |- |0 l6 A- C
) ]9 d! A/ Y9 s9 [$ C* P
$ A0 E) ^" U. u3 L) u) v4 m) P. {
8 Z8 l$ @2 a1 H: e
) v. H/ ?: M* j6 I1 R; J+ E7 H. W
% K, J$ c) ]7 S& y
8 |) @9 y3 f/ O, D
# d* a6 U/ X- i8 ?) r6 y( Y, T5 i5 \. [
程序不怎么样,愿意参考的可以看一下。
/ K5 F! P- v$ y! O' r$ S7 s
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
+ y& `% @+ E. R% T
2 b3 v h0 A* `: K5 [$ ~: ~" ZAVR studio 5.1编写,GCC编译器。
. O' H) s6 M: a2 ^另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。) Z5 G' p) e, X0 ~
3 ^, Q5 Y* M6 S; o/ ^
: C# r% P8 b( O# \/ l1 c8 p下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。; ^0 c2 B1 G5 E+ P
不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。
. m- j. d/ D9 J" M* O& k; Z, X2 Z8 a8 e
: S" Y( {. Z' L+ k+ n5 `. L0 \# w. N顺便贴两张正之前组装别人的VFD套件。
. b% T! N% f+ q3 D程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)
8 B+ \! ]) v- _8 O: R
5 O7 H$ n# m) ^
1 \# S: N% y$ l6 P; U4 c
|
评分
-
查看全部评分
|