EDA365电子论坛网

标题: SPI-DMA 刷 LCD12864 程序,整屏523us,AI8051U 驱动1.44寸黑白点阵屏,超高帧频 [打印本页]

作者: 岁月如歌21    时间: 2025-11-21 17:00
标题: SPI-DMA 刷 LCD12864 程序,整屏523us,AI8051U 驱动1.44寸黑白点阵屏,超高帧频
本帖最后由 岁月如歌21 于 2025-11-21 17:03 编辑 3 H( ^5 t# D3 u2 `- f+ e- d

" G( o5 m8 N% M/ W9 o5 t' z" CAi8051U驱动1.44寸黑白点阵LCD12864实验程序
7 z+ _+ d0 d  i) K; x===SPI-DMA刷整屏523uS,超高帧频% Q( Z+ a9 G. }( p# T

( z4 q9 M7 r( A9 p9 z4 {& _本例程基于AI8051U为主控芯片的实验箱V1.1版本进行编写测试。
! d7 w) g7 H- s% R, }& a8 z! |使用Keil C251编译器,Memory Model推荐设置XSmall模式,
2 ]; }  c) @! q; W2 t( t) @
默认定义变量在edata,单时钟存取访问速度快。
( K; p2 C' C4 B5 Z7 z; B( Medata建议保留1K给堆栈使用,
4 N# f$ V, m) E+ ?
空间不够时可将大数组、不常用变量加xdata关键字定义到xdata空间。7 O; n, o' G% n! [4 X) v" [
( B+ h8 |  J2 Q+ U' [) f4 T& r
黑白点阵屏LCD12864驱动程序,驱动IC为ST7565R,SPI接口,
& U3 T! x# L2 B8 S& Q2 u
通过SPI-DMA将1024字节的图片数据送到彩屏,传送时不占用CPU时间。
; P1 D+ w! u' s. \8 Y显示图形,汉字,英文,数字。) w1 n5 u3 s6 M+ }, q
驱动芯片: ST7565R, ST7567A, UC1701(注意: UC1701的对比度设置不同).. l% s8 R. R$ S8 q" U( C

% L  b; B; K  e  @1 O其中图形显示发送命令和图片数据使用SPI-DMA操作,
2 ?! ?% k2 @+ |- J$ F! j! g' k
传输数据时不占用CPU时间,做GUI最方便了。# ?2 T5 a! ~! A8 F& g4 a( B
可以先操作定义于xdata的1024字节缓存,然后触发SPI-DMA即可,
' z+ D" [7 E+ m2 T  T523us或943us即可自己动刷完。4 e; r' a* B, d1 J4 Q5 k
* t# s9 \; P+ `9 v/ m4 C' z) y
本例运行于40MHz, SPI速度为主频4分频(10MHz),

& _( G1 F' H' d- q每次SPI-DMA传输总时间943us,
2 K/ f* I6 r( k; `. LSPI速度为主频2分频(20MHz),每次SPI DMA传输总时间523us。* Q& D% Q, q7 ^3 y5 b
将要显示的内容放在1024字节的显存中,启动DMA传输即可。' A' D5 ^2 C9 L

! J% u# U  b! Y% [, t下载时, 选择时钟 40MHz (用户可自行修改频率后重新编译即可).
! B" i$ X1 a( l( q# I
下图使用的屏其点阵宽高比是3:4的,所以显示圆形成了椭圆,4 g0 Z1 `# ]5 r3 X. \4 ~
这种屏显示字符、汉字就比较好看。+ F2 E& n' G  t. y/ Y8 z
7 L$ S3 X6 ?# I3 r, ~7 A: n* i

5 n# Y1 `& B  Y/ R! A: f4 l  h( R, v( B9 f1 m$ I

ST7565R驱动1.44寸黑白点阵LCD12864显示屏程序-SPI-DMA.rar

90.97 KB, 下载次数: 0, 下载积分: 威望 -5


作者: Sleep_xz    时间: 2025-11-21 17:05
现在用 的都是彩屏,这种屏落后了




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2