




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 5V20mA输出0V 4mA利用运放设计输入为和 Vo2=0VVo1=1.25V,调节2Rp时输入4mA时,调节1Rp使 即可2Rp使Vo2=5V输入20mA时,调节1Rp使Vo1=6.25V,调节 输入/5V输出的4I/V20mA转换电路 LM324组成的下面是这个电路网上介绍的资料: 增加这级运算放大器可以起到对零点的处理会变得更加方便,无需耗用单片机的内部资源,尤其单片机是采用AD接口来接受这种零点信号不为零电压的输入时,可以保证A/D转换位数的资源能够全部应用于有用信号上。 以420mA 例,图B中的RA0是电流取样电阻,其值的大小主要受传感变送器供电电压的制约,当前级采用24V供电
2、时,RA0经常会使用500的阻值,对应20mA 的时候,转换电压为10V,如果仅仅需要最大转换电压为5V,可以取RA0=250,这时候,传感变送器的供电只要12V就够用了。因为即使传送距离达到1000M,RA0最多也就几百而已。 同时,线路输入与主电路的隔离作用,尤其是主电路为单片机系统的时候,这个隔离级还可以起到保护单片机系统的作用。 图2 采用的是廉价运放LM324,其对零点的处理是在反相输入端上加入一个调整电压,其大小恰好为输入4mA时在RAO上的压降。有了运算放大器,还使得 RAO的取值可以更加小,因为这时信号电压不够大的部分可以通过配置运放的放大倍数来补足。这样,就可以真正把420m
3、A电流转换成为05V电压了。 使用运算放大器也会带来一些麻烦,尤其在注重低成本的时候,选择的运 放往往是最最廉价的,运放的失调与漂移,以及因为运放的供电与单片机电路供电的稳定性,电源电压是否可以保证足够稳定,运放的输入阻抗是否对信号有分流影响,以及运放是否在整个信号范围内放大特性平坦,如此等等,造成这种廉价电路的实际效果不如人意。 而最大的不如人意之处还是在零点抵消电路上,随着信号电流的变化,运 放的反相端的电压总是会与零点调整电压发生矛盾,就是这个零点电压也在随着运放输出的变化而变化,只不过由于有了信号有用电压的存在,而在结果中不容易区分而已。这种现象最容易造成非线性加大。虽然可以在单片机里
4、采用软件校正来纠正,但是,就具体措施而言,这样做需要增加编程人员不少的工作量,而且需要多点采集数据来应对。 百度答题,420mA转110V 问题连接地址: 无需计算公式免费赠送,如需推导公式“黄金”百两悬赏100分 参考程序#include eg52.h #include intrins.h #define uchar unsigned char #define uint unsigned int #define somenop _nop_()。_nop_()。_nop_()。_nop_()。_nop_()。 uchar code smg_du = 0xc0,0xf9,0xa4,0xb0,0x
5、99,0x92,0x82,0xf8,0x80,0x90。 uchar code smg_we=0x01,0x02,0x04,0x08,0x10,0x20,0x40,0x80。 uchar code smg_du1=0x40,0x79,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10,0x7f。 / 有小数点的段选 。sbit SDA = P21sbit SCL = P20。 sbit s7=P30。 sbit s6=P31。 uchar tflag,dspflag,qian,bai,shi,ge,qian1,bai1,shi1,ge1,num,temp,bb。 u
6、int t,aa,date。 void delayms(uint x) uchar t。 while(x-)for(t=0。t<120。t+)。 void keyscan() if(s7=0) delayms(10)。 if(s7=0) P0=0x10。P2=0xa0。P2=0。 。 TR0=1 。num=1。t=0 while(!s7)。 if(s6=0) delayms(10)。 if(s6=0) date=t/2。TR0=0。 P0=0。P2=0xa0。P2=0。 num=2。 TR0=1。 while(!s6)。 void display(uchar we,uchar du) P
7、0 = 0xFF。 /消影子 P2 |= 0xE0。 。P2 &= 0x1F P0 = smg_dudu。 P2 |= 0xE0。 P2 &= 0x1F。 P0 =smg_wewe。 P2 |= 0xC0。 P2 &= 0x3F。 / void iic_start(void) SDA = 1。 _nop_()。 SCL = 1。 somenop。 SDA = 0。 somenop。 SCL = 0。 void iic_stop(void) SDA = 0。 _nop_()。 SCL = 1。 somenop。 SDA = 1。 void ack() unsigned c
8、har i。 SCL=1。somenop。while(SDA=1)&&(i<200)i+。SCL=0。 void iic_sendbyte(unsigned char byt) unsigned char i。 for(i=0。i<8。i+) if(byt&0x80) SDA = 1。 else SDA = 0。 somenop。 SCL = 1。 byt <<= 1。 somenop。 SCL = 0。 ack()。 unsigned char iic_recbyte(void) unsigned char da。 unsigned char
9、i。 for(i=0。i<8。i+) SCL = 1。 somenop。 da <<= 1。 if(SDA) da |= 0x01。 SCL = 0。 somenop 。 return da。 unsigned char adc_pcf8591(void) unsigned char temp。 iic_start()。 iic_sendbyte(0x91)。 temp = iic_recbyte()。 iic_stop()。 return temp。 void init_pcf8591(void) iic_start()。 iic_sendbyte(0x90)。 iic_s
10、endbyte(0x01)。 。 iic_stop() delayms(10)。 / void main() P0=0xff。P2=0x80。P2=0。 P0=0。P2=0xa0。 P2=0。 /关蜂鸣器 。 TMOD = 0x22 。TH0 = 0x06 。TL0 = 0x06 。TH1 = 0x06 TL1 = 0x06。 ET0 = 1。 EA = 1。 TR1=1。ET1=1 。 init_pcf8591()。 while(1) 。 keyscan()if(t=10000) TR0=0。 P2=0xa0。 P2=0。P0=0。 / 超出标志 num=3 。 TR0=1。 void is
11、r_t0(void) interrupt 1 /数码管显示 tflag+。 aa+。 if(aa=400) /10ms t+ aa=0。 t+。 if(t=10000) P0=0。P2=0xa0。P2=0。 qian=t/1000。bai=t_x0010_00/100。shi=t_x0010_0/10。ge=t_x0010_。 if(num=1) /计时标志 if(tflag = 4) /1ms 动态显示 tflag = 0。 dspflag+。 if(dspflag = 7) dspflag = 0。 if(dspflag=0) P0 = 0xFF。P2 |= 0xE0。P2 &=
12、0x1F。 P0=smg_du1bai。P2 |= 0xE0。P2 &= 0x1F。 。P2 &= 0x3F P0 =smg_we5。P2 |= 0xC0 if(dspflag=1) 。 display(6,shi) if(dspflag=2) display(7,ge)。 if(dspflag=3) display(4,qian)。 if(dspflag=4) 。P2 |= 0xE0P2 &= 0x1F P0 = 0xFF 。P2 |= 0xE0。P2 &= 0x1F P0=smg_du10。 。P2 &= 0x3F P0 =smg_we1。P2 |=
13、 0xC0 if(dspflag=5) display(2,5)。 if(dspflag=6) display(3,0)。 算费标志 / if(num=2) if(tflag = 4) /1ms dspflag+。 tflag = 0。if(dspflag = 7) 。 dspflag = 0 。shi1=date_x0010_0/10。bai1=date_x0010_00/100。 qian1=date/1000 ge1=date_x0010_。 if(dspflag=0) P0 = 0xFF。 P2 |= 0xE0 。P2 &= 0x1F。 P0 = smg_du1bai1。P2
14、|= 0xE0。P2 &= 0x1F。 P0 =smg_we5。 P2 |= 0xC0 。P2 &= 0x3F。 if(dspflag=1) display(6,shi1)。 if(dspflag=2) display(7,ge1)。 if(dspflag=3) display(4,qian1) 。 if(dspflag=4) P0 = 0xFF。P2 |= 0xE0 。P2 &= 0x1F。 P0=smg_du10。P2 |= 0xE0。P2 &= 0x1F。 P0 =smg_we1。P2 |= 0xC0。P2 &= 0x3F 。 if(dspflag
15、=5) display(2,5)。 if(dspflag=6) display(3,0) 。 if(num=3) if(tflag = 4) /100ms tflag = 0。dspflag+。 if(dspflag = 7) dspflag = 0。 if(dspflag=0) P0 = 0xFF。P2 |= 0xE0。P2 &= 0x1F。 P0 = smg_du19。 P2 |= 0xE0。 P2 &= 0x1F。 P0 =smg_we5。P2 |= 0xC0 。 P2 &= 0x3F。 if(dspflag=1) display(6,9)。 if(dspflag=2) display(7,9)。 if(dspflag=3) display(4,4)。 if(dspflag=4) P0 = 0xFF 。P2 |= 0xE0。P2 &= 0x1F。 P0=smg_du10。P2 |= 0xE0。P2 &= 0x1F 。 P0 =smg_we
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年热固化油墨项目发展计划
- 40岁闺蜜最暖心短句
- n沟道mos管漏极接负载
- nips 李雅普诺夫函数
- muet超全作答技巧
- 《数学广角-集合》教学设计-2024-2025学年三年级上册数学人教版
- 山东省郯城县红花镇初级中学八年级生物下册 第七单元 第三章 第三节生物进化的原因教学实录 (新版)新人教版
- 《生活中的塑料:3“限塑令”有效吗》教学设计-2023-2024学年五年级下册综合实践活动沪科黔科版
- 2024-2025学年年高中政治 第三单元 发展社会主义民主政治 5.2 始终坚持以人民为中教学实录 新人教版必修2
- 班级特色课程的开发与实践计划
- 行政审批政策法规知识讲座
- 合肥娃哈哈厂劳动合同
- 【盒马鲜生生鲜类产品配送服务问题及优化建议分析10000字(论文)】
- 《江苏住宅物业管理服务标准》(DB32T538-2002)
- 急诊室缩短急性脑卒中患者DNT时间医院持续质量改进PDCA项目汇报书
- EHS法律法规清单及合规性评估
- 中西医诊所规章制度集合4篇
- 边坡土石方施工方案
- 《民航地面服务与管理》项目四
- 中国神经外科重症患者营养治疗专家共识(2022版)课件
- 2023年R1快开门式压力容器操作考试题库及R1快开门式压力容器操作考试100题(含答案)
评论
0/150
提交评论