过程控制实验报告.docVIP

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

北京信息科技大学

自动化学院

(计算机控制技术)实验报告

专业:自动化班级:自控0803班学号:2008010868姓名:朱星烨

实验名称

A/D、D/A转换实验

实验地点

实验楼706

实验时间

2011-3-8

实验目的:1、学习A/D转换器原理及接口方法,并掌握ADC0809芯片的使用

2、学习D/A转换器原理及接口方法,并掌握TLC7528芯片的使用

实验设备:PC机一台,TD-ACC+实验系统一套,SST51系统板一块

实验原理及内容:

一实验内容

(1)编写实验程序,将-5V~+5V的电压作为ADC0809的模拟量输入,将转换所得的8位数字量保存到变量中。

(2)编写实验程序,实现D/A转换产生周期性三角波,并用示波器观察波形。

二实验原理

1.A/D转换实验

ADC0809芯片主要包括多路模拟开关和A/D转换器两部分,其主要特点是:单电源供电、工作时钟CLOCK最高可达到1200KHz、8位分辨率,8个单端模拟输入端,TTL电平兼容等,可以很方便地和微处理器接口。TD-ACC+教学系统中的ADC0809芯片,其输出八位数据线以及CLOCK线已连接到计算机的数据线及系统应用时钟1MCLK(1MHz)上。其他控制线根据实验要求可另外连接(A、B、C、STR、/OE、EOC、IN0~IN7)。根据实验内容的第一项要求,可以设计出如图所示实验线路图。

上图中,AD0809的启动信号“STR”是有控制计算机定时输出方波来实现的。这里用P1.7来模拟1#定时器的输出,通过“OUT1”

图中ADC0809芯片输入选通地址码A、B、C为“1”状态,选通输入通道IN7;通过单次阶跃单元的电位器可以给A/D转换器输入-5V~+5V的模拟电压;系统定时器定时1ms输出方波信号启动A/D转换器,并将A/D转换完后的数据量读入到控制计算机中,最后保存到变量中。参考流程如下:

2.D/A转换实验

本实验采用TLC7528芯片,它是8位、并行、两路、电压型输出数模转换器。其主要参数如下:转换时间100ns,满量程误差1/2LSB,参考电压-10V~+10V,供电电压+5V~+15V,输入逻辑电平与TTL兼容。实验平台中的TLC7528的八位数据线、写线和通道选择控制线已接至控制计算机的总线上。片选线预留出待试验中连接到相应的I/O片选上,具体如下图:

以上电路是TLC7528双极性输出电路,输出范围-5V~+5V。“W101”和“W102”分别为A路和B路的调零电位器,实验前先调零,往TLC7528的A口和B口中送入数字量80H,分别调节“W101”和“W102”电位器,用万用表分别测“OUT1”和

实验步骤:

一A/D转换实验

(1)建立一个工程文件。将晶振等值设定好

(2)编写程序代码,然后将编好的C文件添加到工程中去,检查程序无误后编译连接。程序代码如下:

#includereg51.h

#includeabsacc.h

/********宏定义*************/

#defineucharunsignedchar

#defineuintunsignedint

#defineADC_7XBYTE[Ox7ff0]//定义模数转换IO地址

/*******函数声明***********/

Voidtddelay(inttime)

/*******全局变量定义********/

Sbitstr=P1^7;

uchardataad[10]; //声明变量,用于存储转换结果

uintdatatime; //声明变量,用于定时

uchardatat0_h,t0_l; //用于存储定时器0的初值

/********主函数***********/

voidmain(void)

{

uchari;

TMOD=0x01;

time=1; //定时1ms

t0_h=(65536-500*time)/256; //计算定时器0初值

t0_l=(65536-500*time)%256;

TH0=t0_h;

TL0=t0_l;

ET0=1; //开定时中断0

TR0=1; //启动定时器

EA =1; //开总中断

while(1)

{

for(i=0;i10;i++) //读取转换结果,并保存

{

ad[i]=ADC_7;

td_delay(500); //延时

}

td_delay(100)

您可能关注的文档

文档评论(0)

137****7707 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档