单片机
返回首页

基于单片机的D/A三角波发生器设计

2022-03-25 来源:eefocus

D/A转换器

  • CS=0、ILE=1时,WR1信号有效时将数据总线上的信号写入8位输入锁存器

  • XFER=0时,WR2信号有效时将输入寄存器的数据转移到8位DAC寄存器中,输出量随之改变

工作方式:

  • 直通工作方式(如下实验)

    • 当某一根地线或地址译码器的输出线使CS有效(低电平),ILE高电平,同时WR1/XFER/WR2为低电平时,单片机数据线上的数据字节直通D/A转换器,被转换并输出

    • CS、WR1接引脚,通过软件置低电平

    • VCC、VREF、ILE接POWER

    • WR2、XFER、RFB、GND*2接GND

  • 单缓冲方式

    • 仅适用于只有一路模拟量输出或几路模拟量输出但并不要求同步的系统

    • ILE、VCC接POWER

    • CS、XFER接单片机引脚,输入寄存器和DAC寄存器地址都是7FFFH

    • WR1、WR2接单片机WR引脚,单片机写信号

    • 当单片机对DAC0832执行一次写操作,则把一个字节数据直接写入DAC寄存器中,输出的模拟量随之变化

  • 双缓冲方式

    • 当多路D/A转换接口要求同步进行D/A转换输出时必须采用双缓冲方式。DAC0832数字量的输入锁存和D/A转换输出时分两步完成的。即CPU的数据总线分时输出数字量并锁存在各D/A转换器的输入寄存器中;然后CPU对所有D/A转换器发出控制信号,各输入寄存器→DAC寄存器,实现同步转换输出。

    • 每一路模拟输出量需要一片DAC0832

    • DAC0832(1)的输出锁存器地址0DFFFH

      DAC0832(2)的输出锁存器地址0BFFFH

      两个DAC0832的DAC寄存器地址同为7FFFH

————————————————————————————————————————————

基于DAC0832的三角波发生器实验

实验说明:

  • 用DAC0832芯片制作一个信号发生器,输出一个三角波信号

  • 采用直通工作方式

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

接线说明:

image.png

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

实现代码:

include

typedef unsigned char uchar;

typedef unsigned int uint;

sbit cs = P3 ^ 7;

sbit wr = P3 ^ 6;

void Delay(uchar m)

{

    while(m--);

}

void main()

{

    uchar k = 0; //设置k的初始值为0

    cs = 0; //当CS与WR1端置低电平时做好写数据的准备,只要P0口有数据输出,DAC0832将会转换成模拟信号

    wr = 0;

    while(1) //通过输出值在 0-255和255-0之间变化,通过示波器可以看到模拟信号的情况

    {

        while(1) //输出值在0-255之间变化

        {

            P0 = k++; //输出k且k+1

            Delay(1);

            if (k == 0xff) //到达255时结束循环

                break;

        }

        while(1) //输出值在255-0之间变化

        {

            P0 = k--; //输出k且k-1

            Delay(1);

            if (k == 0x00) //到达0时结束循环

                break;

        }

    }

}



进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 家用电源无载自动断电装置的设计与制作

  • 用数字电路CD4069制作的万能遥控轻触开关

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 开关电源的基本组成及工作原理

  • 用NE555制作定时器

  • 带有短路保护系统的5V直流稳压电源电路图

    相关电子头条文章