|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 岁月如歌21 于 2025-10-9 17:00 编辑 7 R) _: s) z- u3 R
/ g0 C3 b2 p, P* B0 W
3 n$ K( K, o4 f3 ?* Y1 u
高速DAC实现, 用DMA支持的) b' o! H* I" P# E8 C" y6 g- k c# l9 H9 n
===TFT彩屏8位或16位并行数据接口送R-2R电阻网络+ }0 Y& d! @& g1 R6 n, s
===输出正弦波,或任意波形
0 Y2 V! K. {3 T# P===@Ai8051U,DMA-M6800/i8080并行8/16位接口 8 A, g9 p8 F6 W; J0 F4 {6 ~
使用TFT彩屏接口+DMA, 将正弦波数据输出到P2口,
5 O- o) S: M; y/ n接R-2R做DAC输出正弦波(或任意波形)。, `9 t1 ~% u3 X) K/ P8 Z
本例为32点正弦波,此法将极大程序减少对CPU的占用,: @+ z8 n3 t( p- k
中断频率为输出波形的频率,比如输出2000Hz的正弦波,
7 c' Z" v+ e/ w# m3 e如果用传统的中断重装方式,将需要64KHz(15.625us)的中断,) y; [1 W* O* ?9 A4 O2 q
严重拖累CPU。
9 x1 {3 |& a( h1 ~而使用本方法,中断率为2000Hz,并且中断仅仅是重启DMA。 x! [$ M. }& K4 R; V. r+ a9 a
注意:
5 T- Y# w! Z6 X, K重启DMA需要大约1us的时间,会附加到输出波形中,引起失真,- |/ Y' I N! K! P) H
当波形小于5000Hz时,影响可以忽略,大于10KHz时,! I2 f! c/ m8 c. v. Q6 @7 N
影响开始能检测到。: ^! q/ [% k7 O" K& v: c
后面做数字电桥LCR会考虑使用本部分电路及方法,. ]' s' j, ` b+ `- Y
或者使用DMA-PWM产生正弦波。: e. P; z: _/ S' J/ m, F
要附加一个 R-2R DAC 电路:
' j. d4 Z, k) \6 U* y2 L
! k8 i$ B7 |6 ~) w- l) C: \# \9 G6 u8 X! z. d
|
|