恒流源设计Word文档下载推荐.docx

上传人:b****5 文档编号:20361368 上传时间:2023-01-22 格式:DOCX 页数:9 大小:92.80KB
下载 相关 举报
恒流源设计Word文档下载推荐.docx_第1页
第1页 / 共9页
恒流源设计Word文档下载推荐.docx_第2页
第2页 / 共9页
恒流源设计Word文档下载推荐.docx_第3页
第3页 / 共9页
恒流源设计Word文档下载推荐.docx_第4页
第4页 / 共9页
恒流源设计Word文档下载推荐.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

恒流源设计Word文档下载推荐.docx

《恒流源设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《恒流源设计Word文档下载推荐.docx(9页珍藏版)》请在冰豆网上搜索。

恒流源设计Word文档下载推荐.docx

学号:

成绩:

______________

实验时间:

 

1.实验目的

(1)掌握数字直流电压表的工作原理。

(2)掌握单片机的使用方法。

(3)掌握程序的编写、调试和下载方法。

(4)学会分析、观察及调式电路。

2.仪器设备

AT89C51单片机1个

ADC08091个

LM324运放1个

9013三极管1个

11.0592M晶振1个

四位共阴极数码管1个

22pF瓷片电容2个

10uF电解电容1个

排阻1k*81个

10k电阻若干

3、基本要求:

(1)设计一个能输出电流0-0.5A可调的恒定电流源;

(2)用2个或更多的LED数字显示电流的大小;

(3)要求带50欧姆的负载测量;

4、实验原理与方法

1)AT89C51功能简介:

4Kbytes闪存,128字节RAM,32个I/O线,两个16位定时/计数器,五向量两级中断结构,一个全双工串行通信口,片内振荡器和时钟电路。

此外,AT89C51降至0Hz的静态逻辑操作,并支持两种软件可选的节电模式。

空闲模式时CPU停止工作,而RAM,定时/计数器,串行口和中断系统,温度继续运作。

掉电模式保存RAM的内容,但冻结振荡器关闭,直到下一个硬件复位芯片其它功能。

AT89C51原理方框图:

2)、电路原理图:

1、晶振电路部分:

2、AD采样电路部分:

3、显示电路部分:

4)、电流测量部分电路部分:

5)、恒定电流产生部分电路:

6、系统总体电路图:

5、实验步骤及内容:

1、按照原理图在proteus上搭建电路图;

2、按程序流图编写程序,在proteus上仿真,并调试成功,得到符合要求的仿真结果;

3、按照原理图在面包板上搭建电路;

4、将程序下载到单片机中,检查电路后,接通电源,调试电路直到得到满意的实验结果。

5、记录、分析结果;

6、实验结果:

(1)设计出了一个能输出电流0-0.5A可调的恒定电流源;

(2)用3个LED数字显示电流的大小;

(3)要求带50欧姆的负载测量,在张变负载的情况下,电流不张变,实现了恒流的效果。

7、程序:

#include<

reg52.h>

#defineuintunsignedint

#defineucharunsignedchar

ucharcodeLEDData[]=

{

0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f

};

sbitOE=P1^0;

sbitEOC=P1^1;

sbitST=P1^2;

sbitCLK=P1^3;

voidDelayMS(uintms)

uchari;

while(ms--)

{

for(i=0;

i<

120;

i++);

}

}

voidDisplay_Result(uintd)

P2=0xf7;

//11110111第四个数码管显示个位数

P0=LEDData[d%10];

//显示个位数

DelayMS(5);

P2=0xfb;

//11111011第三个数码管显示十位数

P0=LEDData[d%100/10];

P2=0xfd;

//11111101第二个数码管显示百位数

P0=LEDData[d/100];

voidmain()

TMOD=0x02;

//定时器1的工作方式2:

8位初值自动重装的8位定时器/计数器

TH0=0x14;

//装初值

TL0=0x00;

IE=0x82;

//10000010开总中断并允许T0中断

TR0=1;

//启动中断

while

(1)

ST=0;

ST=1;

while(EOC==0);

OE=1;

P1=0x2f;

//00101111选择通道1输入

Display_Result(P3*1/255*500);

OE=0;

}

voidTimer0_INT()interrupt1//脉冲

CLK=!

CLK;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 管理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1