导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→C51编程:让我们共同来体会[新兵]

 *第2093篇: C51编程:让我们共同来体会

  
楼 主:新兵 2002年1月22日13:55
 C51编程:让我们共同来体会
    各位阿G 好:
因上网不便,关于软件A/D一文回应让大家久等了甚歉!
除89C2051系统外您只需3电阻,2电容可构成,建议用低压差精密三端lm2950-5供电,
(VREF=4.995-5.005V,压差  <100MV)R1=R2=1M,C1=C2=104,R3=5.1K,R3是 P3.7的上拉电
阻,R1 C1和 R2 C2都作积分连接,前者作VIN入和去藕,后者和P3.7一道构成冲放电回路
跟踪VIN变化。

DIN=D0*VIN/VREF    和晶体频无关,但直接影响测量速度, 软件改变D0可免硬件调试软定
标,但当VIN>  =VREF时 DIN=D0,已溢出! 精度1/5000 ,测量速度4次/秒 @24MHZ
ORG 0000H
NOP
SJMP MAIN

ORG 000BH
MOV C,P3.6
MOV P3.7,C   ;冲放电,A/D转换核心
JNC $+3
INC DPTR
RETI

MAIN:MOV TMOD,#22H
MOV TL0,#156
MOV TH0,#156
MOV TCON,#15H
MOV IE,#10000010B
MOV R3,#250
ADSTR:MOV DPTR,#0000H ;DIN 记数
MOV R4,#20
INC PCON
DJNZ R3,$-2
MOV R3,#250
DJNZ R4,$-6     ;R4 R3 D0记数,典型值为5000
MOV R7,DPH
MOV R6,DPL
SJMP ADSTR
END
实际上A/D程序就两条   MOV C,P3.6 MOV P3.7,C,所以用两等值电阻R4=R5=1K,分压作
VIN加在R1上,然后动态测P3.7电压 ,当非常接近1/2VREF时,软硬件就基本正常了


  
2楼:《农民运动讲习所》所长 2002年1月23日11:00
 还这么复杂,俺用一个OC输出IO口,一个电阻一个电容就可以了。用IC的0-1的本身电平出发,不用比较器。
  
3楼:新兵 2002年1月23日11:17
 这位大师您好!如能再减少软硬件更通用,无疑更可靠,因为THE BEST THING IS JUST AS THE NOTHING!!!!,大师您可不能自专,诚请发布详情,让小M和大家如法炮制。
 
  
4楼:《农民运动讲习所》所长 2002年1月23日11:34
 很简单的,我以前就发表过,在C51BBS上。就是先输出0,对电容放电。延时,再输出1,开始冲电,VI接电阻另一端。到电容电平达到IC的高触发时的时间就是。简单吧。
  
5楼:新兵 2002年1月23日17:11
 请告线性,精度,特别是稳定性?

>>>>>>对该主题发表你的看法

本主题贴数5,分页: [第1页]


[上一篇主题]:闲聊:单片机与TCP/IP高手,咱合作吧? 

[下一篇主题]:初学者:AT89C55WD的加密狗怎么解,如果第一次往里写程序没有解开加密狗,这个片子是否会被写