📄 adc_c.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0058)http://www.oxbad.com/DSP/maindoc/arithmetic_source/c/ADC.C -->
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2900.3492" name=GENERATOR></HEAD>
<BODY><PRE>/* adc.c - successive approximation A/D converter */
#include <math.h>
double dac();
int u();
void adc(x, b, B, R)
double x, R;
int *b, B;
{
int i;
double y, xQ, Q;
Q = R / pow(2, B); /* quantization width \(Q=R/2\sp{B}\) */
y = x + Q/2; /* rounding */
for (i = 0; i < B; i++) /* initialize bit vector */
b[i] = 0;
b[0] = 1 - u(y); /* determine MSB */
for (i = 1; i < B; i++) { /* loop starts with \(i=1\) */
b[i] = 1; /* turn \(i\)th bit ON */
xQ = dac(b, B, R); /* compute DAC output */
b[i] = u(y-xQ); /* test and correct bit */
}
}
</PRE></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -