EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
51单片机AD转换后的值
, w; e+ m& [& }- I* L
5 C6 ]: K0 g/ q8 u6 B. d, K2 `# Y7 l2 y
用TL549 AD芯片来处理。它是8位的芯片。
: U3 p2 a7 H! @) h: F* K) E* {% euint ad_549() //TLC549处理
# R4 ]0 s `' d0 R5 z( j{" J6 y W3 B! ]- Y; U
uchar i;
" D$ E1 x; Z0 o! N uint data_ad = 0;
1 A& b2 P3 ]: h2 r$ V' C cs = 1; //初始化,启动
N5 n3 s: z& ?/ D$ d4 u% \' s sclk = 0;0 d2 p2 c9 c4 S; \
cs = 0;
9 l0 p7 x$ T: K$ t' |1 R _nop_();
% m; l7 [6 ]- V, b" B for(i = 0;i < 8;i++) //读取采集数据,读取的是上一次采集数据
* t( g5 q# h) N: [ S) p {
" B% W. u# i% _% G' o+ y sclk = 1;
+ Y' n3 ?5 O0 K, z# ]
* x9 O; r: x) m0 h if(data_temp)data_ad |= 0x01;
9 A* L& z0 K2 r6 V' ]& ] sclk = 0; y, S5 j, R3 E' w! o; ?
data_ad = data_ad << 1;
! r/ K$ h3 {) T9 e/ z( H' z }
0 }1 P) \* F9 A5 @+ g" J- O cs = 1;
/ `0 y0 ^, z# c I* ]0 N" n/ ~3 { A data_ad = data_ad * (500/ 256);
4 l: ? \. A1 Z' N8 ]. r return(data_ad);
3 u0 X/ N) A, i1 i' |! H}4 s% a8 M+ U" U* |; _# ?
. b) C- ~( ]2 l4 C. {' a' P! y& F6 k, _; w9 U
为什么转换后的值要 * (500/ 256),这部分该怎么理解? 谁能说下
$ l9 w. N9 k1 @5 U! e1 M. _0 C |