单片机c语言程序设计---DA转换实验报告

单片机c语言程序设计---DA转换实验报告


2024年5月30日发(作者:)

单片机c语言程序设计---D/A转换实验报告

课程名称: 单片机c语言设计 实验类型: 设计型实验

实验项目名称: D/A转换实验

一、 实验目的和要求

1. 掌握数模转换的概念

2. 掌握D/A转换芯片DAC0832的功能及特点,掌握与单片机的接口

3. 掌握D/A转换芯片DAC0832的c语言编程实例

二、 实验内容和原理

实验1.信号发生器

功能:使用DAC0832用作信号发生器,编写产生锯齿波、三角波

和方波的程序。本次项目中,DAC0832采用单缓冲单极性的线选法接

线方式,其选通地址为7FFFH。

(1)硬件设计

使用P1口接3个独立的按键S01、S02、S03,当按下S01时输出

锯齿波,按下S02时输出三角波,当按下S03时输出方波。

电路原理图如下

仿真所需元器件

(2)proteus仿真

通过Keil编译后,利用protues软件进行仿真。在protues ISIS

编译环境中绘制仿真电路图,将编译好的“”文件加入AT89C51。

启动仿真,观察仿真结果。

三、实验要求:

1. 完成信号发生器实验。具体包括绘制仿真电路图、编写c源程序、

进行仿真并观察仿真结果,需要保存原理图截图,保存c源程序,总

结观察的仿真结果。完成思考题。

四、操作方法与实验步骤

1.按照硬件设计在protues上按照所给硬件设计绘制电路图。

2.在keil上进行编译后生成“”文件。

3.编译好的“”文件加入AT89C51。启动仿真,观察仿真结

果。

五、实验结果与分析

void main()

{

while(1)

{

while( K01==0 ) //生成锯齿波

{

for(cDigital=0;cDigital<=250;cDigital++)

{

TransformData(cDigital);//进行数模转换

}

}

while( K02==0 ) //生成三角波

{

for(cDigital=0;cDigital<=250;cDigital++)

{

TransformData(cDigital);//进行数模转换

}

for(cDigital=250;cDigital>=0;cDigital--)

{

TransformData(cDigital);//进行数模转换

}

}

while( K03==0 ) //生成方波

{

TransformData(0);//进行数模转换

Delay(500);

TransformData(250);//进行数模转换

Delay(500);

}

}

}

六、讨论和心得


发布者:admin,转转请注明出处:http://www.yc00.com/web/1717054133a2733343.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信