钻石会员
主题
回帖0
积分10948
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。
3 B/ R- X, U9 d, a c$ S中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。
' |$ }7 R5 J" P5 b5 j+ wpdf如下,只有一页,那是相当的简单 5 l6 A5 T) C" Z7 e: _1 N
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
/ q9 W. E# |+ q7 ]' B/ d% K/ F
( M8 p' `( v" [8 Y$ \7 ^0 Q% S驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。! M+ ?1 i8 f4 u! f$ ^+ C' s& B
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
9 u) M5 ^( o) X; D
5 ` k w2 X4 U6 G; y7 X; {+ G2 e# V. o" o l8 o6 {
主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和9 r9 z6 v e8 M" {
640×400/8Byte=31.25KByte的显示缓存。 7 \: q( L! \$ l
7 @7 U9 G. i: I( W
sram足够的只有一块mega128的板子(外扩32KbyteSRAM)。; G; A! V. Q& ~7 U Y# P% s
好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。
' }1 Z4 ?: p* M! H6 |7 a% P* r# o+ `! R2 R2 B( L

! R- T6 `2 F7 F" V% F最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。# j7 j# @$ P; M
(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)& `0 F+ Z/ c( o
( p. z' N) O# j9 Q8 Q; @7 U
+ d) e* |* A Y$ E硬件:: h# p& d% u8 \) f( q
MCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC573
& T. z& w" n. r1 D
/ W; u4 R- g( R# f
" f0 `- B6 @) L6 Y4 v1 S' Z0 }% ~% G3 @
! o8 @; I" V% G8 Z' O
液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)9 y; ~# A; r2 {0 g6 x& j4 b- k# t2 S
带数码管的那个板子背面就是3R33
2 ]: l0 `5 J4 |5 G8 f# B" Z
% c$ N; g2 {) B# w4 H V m: e3 o( t$ E6 V% b
下面测试图:
i9 \+ }1 X& b1 b+ x: g/ N1 P1 R2 H, ]
2 T0 P; D9 i0 i8 N) W+ q) P
) D. O+ ]7 T1 R9 a# p! M# m# J3 C' ~7 }& H% v, B- ^
4 k4 t$ |7 D4 R$ c/ v1 q8 L- }9 W$ j5 R! }; N
( a6 D9 f' ]6 m4 f1 C2 P
N9 |4 a' Q/ a5 E _7 e
+ v# L* L, m6 a# `程序不怎么样,愿意参考的可以看一下。
z2 }' u$ u- [. T5 E
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
: j1 K& i( _7 y7 S& E
# I8 c# Q6 e% e
AVR studio 5.1编写,GCC编译器。2 |0 S4 ?5 _& Q& _( X/ ^
另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。
( M0 e3 D- } x* C& f7 U; ^" j$ \% z# C/ g8 i5 c
5 _! s. |1 s8 W. [
下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。& F$ m5 N& @: D+ |" ~$ T8 d, p& B
不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。
1 A, s3 l) X4 u& B, |
3 E$ E# O+ v# _ L; w+ ]
. f7 H+ l- e" Q- @顺便贴两张正之前组装别人的VFD套件。
( Z: H& Y# l4 U4 n) k程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)+ W1 y. |( ?1 o% E* Y6 ~. a: v
. |5 X5 ]; m9 L3 h7 s- u
5 u; b. ^8 l* e8 O2 k, F8 g
|
评分
-
查看全部评分
|