基于AT89C51的电流源设计,Current Source Design based on AT89C51
关键字:电流源设计,AT89C51电源电路
DAC
设计中采用的芯片是DAC0808,它是一个8位DAC。图2是DAC典型应用电路。
图2中输出的模拟量是一个正电压,当需要负电压时,在DAC的第4引脚直接接一个3KΩ左右的电阻即可。DAC的第4引脚的电流总是流入的,其最大值为1.992mA。当外接一个3KΩ的负载电阻RL时,输出的电压是通过RL上所加的电压,最大的电压为-3KΩ×1.922mA ≈-6V(当所有位输入都是高电平的时候),与实验中的数据相符合。需要指出的是,负载电阻的大小会影响转换时间,当负载电阻为2.5KΩ的时候,在最坏的情况下,会使转换时间增加1.2μs。
单片机的控制
图3是系统中使用的控制流程图。要从小键盘读人0-255的控制信号,要调用KEY子程序3次,读入百位、十位、个位,保存在寄存器中。单片机得到这些数字后,变成一个二进制的控制码输出到DAC,控制VCCS的电流大小。最后,程序自动初始化,清空堆栈,为下一次控制信号的输入作准备。
统性能及分析
测试仪器为滨江DT9978万用表,直流电流精度为:2m/20mA±0.8%±2,200mA±1.2%±2。当负载为500Ω时,键入不同数值得到实际电流大小;而理想电流是测出VCCS输入电压值,用公式(4)计算出来。实际电流要比理想电流稍大,但是在输入的整个范围内保持良好的线性关系。系统的负载变化时,在最坏的情况下(即输入数值最大时),输出电流在负载变化时基本保持不变,具有良好的恒流源特性。
因为系统在整个输入数值范围内都具有线性关系,截取其中一段分析可得输出电流步长。系统的电流步长取多次测量的平均值,其大小为0.1mA,精度为±7%,具有较高的精确度。 系统应用
系统应用是一种真彩色LED的驱动电路,在一个LED里面封装了分别可以发出红、绿、蓝光的3块芯片,它们的光强与通过的电流直接相关,因此,要用电流源作驱动电路。中心控制为AT89C51单片机,从小键盘中输入红绿蓝的控制值(0~255),通过P0口输入到单片机,经过单片机处理后,输出到P1口、P2口、P3口,再通过DAC把控制信号转化为一个模拟电压信号。这个电压信号通过VCCS就可以改变LED的电流,LED的光强随着电流的变大而增强。图4采用了本文介绍的电流源来实现LED驱动电路。每种颜色有256级的亮度,组合起来,这个发光管就可以发出16万种颜色--这便是人眼能够识别的真彩色。
结语
这个系统以较低的成本实现了对电流源的精确控制,同时具有良好的通用性和扩展性。本系统作为RGB三色LED的驱动电路,实现了每种颜色256级亮度,组合起来有16万种颜色,对光强的控制作用明显。此外,这个系统仅改变单片机的程序就可以用于非线性控制,这种非线性控制在实现人眼视觉效应的动态伽马校正方面具有重要意义。 (来源:电子设计应用)
|