使用STM32驱动双通道12位DAC(TLV5618)

TLV5618参考资料

TLV5618是德州仪器公司研发的一种双通道12-bit数模转换器, 具有较宽的电压输出范围和2倍增益
本文参考资料:TLV5618 DataSheet

硬件资源概述

  • STM32F407ZGTx, 192KB RAM, 1MB Flash, 168MHz System Clock
  • TLV5618 SSOP-8 @Texas Instrucments

开发资源概述

  • IAR for ARM 8.10.0
  • STM32CubeMX v4.22 with STM32F4 HAL v1.16.0

使用低版本IAR for ARM将无法打开本工程文件

STM32F4 SPI分析

  1. SPI是Motorola开发的一种通用串行外设接口,支持发送16或8位的数据,使用者只需考虑初始时序即可
  2. SPI共有四根接线,分别是NSS,MISO,MOSI,SCLK
    • 使用SPI时,通信的双方分为主机和从机,一般认为有时钟信号输出的为主机,此次STM32作为主机
    • NSS,从器件选择,使用STM32时一般无需关心
    • MISO,主机输入,从机输出,是主机的数据输入线,同时也是从机的数据输出线
    • MOSI,与MISO相反,是从机的数据输入线,同时也是主机的数据输出线
    • SCLK,时钟信号线,与波特率有关
  3. 若不使用NSS线作为器件选择引脚,可以选用通用I/O接口作为片选(chip select),这么做的好处就是一个SPI接口可以挂载多个从器件,常见芯片多数为片选拉低有效
  4. STM32F4拥有三个相互独立的SPI接口,其中SPI1挂载在APB2总线(最高频率84MHz)上,SPI2和SPI3挂载在APB1总线(最高频率42MHz)上,此次选用SPI2为TLV5618的挂载接口
  5. 其余的请自行查阅STM32F4中文参考手册
    注:中文参考手册最新版为2013版,与最新版2017版英文手册有一定差距,最好查阅2017版手册

TLV5618数据手册分析

  1. SSOP-8封装引脚图(俯视图)
    • a. DIN 串行数据输入
    • b. SCLK SPI时钟输入
    • c. CS 片选引脚,低电平有效
    • d. OUTA 通道A输出
    • e. AGND 模拟/电源地
    • f. REF 参考电压输入,此次选用2.048V参考电压(REF5020)
    • g. OUTB 通道B输出
    • h. VCC 供电端
  2. 电气参数及其特性此处不多赘述,只分析如何应用SPI驱动该芯片
  3. 根据数据手册,该芯片支持SPI和QSPI驱动,此次仅使用SPI,接线如下
原文地址:https://www.cnblogs.com/program-tech/p/7368475.html