钻石会员
主题
回帖0
积分10947
阅读权限50
注册时间2012-3-28
最后登录1970-1-1
在线时间 小时
|
在地摊街收了块640×400的无控制器液晶LM64135T。资料不好找,收的时候以为是VGA。! k6 j' @# V; y0 O5 ~
中途因为快递放假,十几天才到货,期间找到资料,发现是640×400。0 p7 U4 M% H/ ^- Z
pdf如下,只有一页,那是相当的简单 + M) E9 ?* f8 |
LM64135z.pdf
(133.26 KB, 下载次数: 1178)
E3 r; V1 [' U$ Z# I, b% x8 ^& l
/ _0 @( J" s! Q2 L
驱动起来难度不大,双4bit接口,驱动参考了同系列的LM64183P的PDF,这个写的比较详细。: Q" v( Y6 L( a* k& b" z
LM64183P.PDF
(1.23 MB, 下载次数: 1153)
' X( r4 g1 s( _! w" T
" h1 _* `* ~" _# O, e% p5 r; Z8 w* G m# K
主要难度来源于60Hz×640×400/8byte=1.92Mbyte/s数据传输速度和
4 v4 W7 {, u$ Q! A) `" U640×400/8Byte=31.25KByte的显示缓存。 + A7 Z" Y) n% i; u
8 K+ V. s' ~9 ^0 o" O1 p7 y
sram足够的只有一块mega128的板子(外扩32KbyteSRAM)。. b$ P3 P! ^/ X. t
好吧,找到一个25MHz的晶振,换上。超频近60%求各路神仙保佑(AVR核心问题不大,有源晶振32M,mega16A依然能正常工作,但是外设不太行,这里最担心的就是SRAM控制器了)。
* X. d9 s6 t6 R z, W$ l0 ]# k' U6 J- m
$ {% w5 t8 @; W& i9 q0 b0 Z
最后,在我的努力优化下,还是驱动成功,刷新速度比要求的最低60稍高,能到70左右。6 v3 y" n& s5 P; D& x9 V# C
(小声说,其实,所谓优化,纯粹是,把读取SRAM的那句C语句,换成了汇编。无论开何种等级的优化,读取外部SRAM都要10多个汇编语句,而我自己写的,只需要2句……)& u- W5 i+ J6 R
* x7 i: W2 W" T* [ D
7 p2 y0 E+ X7 @7 i) o. E
硬件:" h5 P, |7 a$ |& m" }% b
MCU:ATMEGA128 SRAM:IS62C256 数据锁存器:74HC5734 |, t7 P* w, D3 @% T, W
# [: K3 h6 W: A# u( h1 R: B1 \# h& |. P
& R& t4 b& @8 e% a
' H. N) l% ]% i: H2 O2 Q0 j液晶-18V及高压板24V:3R33负压接法(这里高压板实际供电是正极接5V,负极接液晶负压-18V,实际供电电压是23V,已经足够亮了。)
a# i7 K0 Y. V3 C5 |1 `' C v f带数码管的那个板子背面就是3R33
/ Q! z/ k# M3 a0 h% ~1 }; D
( B! c2 J3 A8 }4 h
% M! N# N! _* J. ^( q6 [
下面测试图:
: C4 S* |+ M, m
* w! `3 v. G+ x5 p8 }* Z
) `3 u- e( e' T: `5 Y
+ k# t ?2 ?! G) j2 @
F: E. ]+ K! h9 q2 p& L
4 d+ y5 ]2 j/ Y5 M" C% w
, z' v; D3 @6 q1 ^0 `) {
" X5 e% s& o6 `9 Z% Y: W g- d
) b8 C: R8 k4 H1 S; a2 y! y# ^6 T& {5 k. C3 ?1 P) @
程序不怎么样,愿意参考的可以看一下。% O8 k# t: U0 n- g0 Y3 A
VGA_640400_test.zip
(121.49 KB, 下载次数: 1106)
& d3 w! [0 ]' P! i- n1 [5 ~5 H
/ E# l7 O/ `$ A9 x: y) x ?AVR studio 5.1编写,GCC编译器。
; u6 x, x* \+ B# _/ b另,外置SRAM的初始化代码已经放到启动区,所以主程序中并没有调用,不是Bug的说。: f, z8 r# g1 G/ s3 c' b6 \
8 E6 _% v; I4 [/ M- T2 K$ I
$ X& [' [" n: A( d S1 p
下一步,换STM32,F4 discovery板子正在路上,有了这个就不用纠结速度问题了。
) |( o' l& l3 B+ N( I不过话说回来,F4用在这里还真浪费,准备最终给它一片F103了事。
- q) W' S7 ]" T p' R0 `* `3 V
F/ ~6 K4 O, f6 f) T C- @, N3 ?0 z3 N" X6 `+ r
顺便贴两张正之前组装别人的VFD套件。1 B; ~) P- ]) p3 j( n( I" c$ S
程序全部为自己重写(界面无美化,debug信息还没去掉,温度比较高是因为自身发热……)- ]0 W. Q& o* ~1 h' u! c4 p
0 a2 E' d- V2 c2 f0 @* }) @ N8 f" f: ~- J* w( M, C& ^+ H% Y
|
评分
-
查看全部评分
|