基于单片机的简易数字电流表设计内容摘要:

数为: R=10KΩ, C=150PF, fCLK≈ 640KHz,转换速度为 100μs。 另外就是采样电流信号的采样电路,参考了相关的资料,设计的电路主要由两个 OP07运算放大器组成的差分放大电路,放大倍数约为一百倍,为了减少运放的失真,还专门设计了有 MC34063 构成的一个反向电路,用来给运放提供 5V 电压,然 后就是利用的一个 欧姆的水泥采样电阻来把电流信号转换成电压信号,输入到运放中,因为ADC0804 只能输入电压信号。 最后电路显示部分采用的 LCD1602 液晶显示。 工作原理 整个电路正常工作时,电流信号首先流过采样电阻,转换成电压信号经过 100 倍差分放大电路放大后,进入 ADC0804 芯片,经过 A/D 转换后,单片机 P2 端口接收到 0804转换出来的数字信号,经过单片机内部的处理后再将电压值在 LCD 上显示出来,因为前面电压信号进过了放大,所以程序中需要除以相关的值(本次为 10)还原电 流值,才能送到 lcd 显示出来。 其中须判断电流值是否超过 200 毫安,若超过应该亮红灯,正常时亮红灯。 由于是 8 位 ADC,当单端输出时,数字输出 D 的范围是 0255,这时的公式应为:D=V/VREF*256,参考电压 VREF 设置的是 ,假设采样的电流为 bA,实际显示应该为 1000b 毫安经过采样电阻后转换成 ,,经过 100 倍放大后变成 10bV,再根据ADC0804 的量化公式 D=V/VREF*256, D的值便为 1000bV,刚好与要显示的毫安级别的电 6 流值相等,就不需要在程序中再次进行数值处理和还原 了。 A/D 转换和显示电路 反向电压产生电路 7 采样电路 AD 转换器参考电压 稳压 电路 8 元件清单 名 称 型 号 封装形式 数量 单片机 AT89S52 DIP40 1个 A/D 转换器 ADC0804 DIP20 1个 液晶 显示器 LCD1602 DIP16 1个 晶 振 12M XTAL1 1个 电阻排 10k X8 SIP9 1个 滑动变阻器 1K VR5 1个 电 阻 100K 2个 按 键 SW ANJIAN 1个 电 阻 1K 1个 采样电阻 1个 电解 电 容 470uf 2个 电 容 470pF 1个 电 阻 10K 4个 运算放大器 0P07CP DIP8 2个 电阻 330 欧姆 2个 反向电路芯片 MC34063 DIP20 1个 限流电阻 欧 姆 1个 电感线圈 33uh 1个 稳压管 TL431 SIP3 1个 发光二极管 led SIP2 2个 电阻 220 欧姆 1个 电容 150pf 1个 电解电容 10uf 3个 电容 30pf 2个 9 NO YES YES NO 开始 LCD 初始化,显示初始内容 启动 A/D 转换 判断 A/D 转换是否完成 读取并显示电流值 判 断 是 否超 过 200 黄灯亮 红灯亮 继续等待 10 主程序: include include include sbit _RD=P3^7。 sbit _WR=P3^6。 sbit _INTR=P3^3。 sbit LED1=P1^3。 sbit LED2=P1^4。 unsigned char ADC_Datshow[16]={current :000 Ma}。 unsigned char ADC_Dat=0。 unsigned char Get_Adc0804(void) //A/D 转换函数,内部自动量化 { unsigned char dat=0。 //定义一个字符变量 _WR=0。 //拉低写端口 _nop_()。 //延时两个机器周期。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。