基于串口的数模转换芯片与D S P 的高速设计

2022-10-21 13:44孙宇伟苗世亮
科学技术创新 2022年28期
关键词:寄存器上位串口

孙宇伟*,苗世亮,王 琰,黄 凯

(北京精密机电控制设备研究所 航天伺服驱动与传动技术实验室,北京 100076)

概述

随着科技高速的进步,在工业应用上,小型化、高速化、高可靠性越来越重要,而且对于高速通信传输过程中特别是中远程数据传输的可靠性显得非常重要。现在工业应用上,均为大型的数模转换芯片,并且速度较慢,不利于小型化的设计[1]。利用CAN 芯片来收发信号已被广泛应用于在产品上,用于开发嵌入式以及其嵌入式的软件,并实现了在不同上位机之间相互通信传输。当下,高集成度的网络设计模式正在向多个控制系统于各个设计平台之间相互连接通信从而实现实现集中化控制演变,嵌入式硬件和嵌入式软件两者并行处理数据的重要性以及优异性已经日益突出。基于DSP 28335 芯片不仅拥有集成高速的SPI接口和强大的内部资源,还能够运用CAN 通信芯片实现主控芯片和上位机之间的数据传输,除此以外,还能通过串口调试小助手对上位机与控制板之间的通信传输进行试验,从而实现了DSP 芯片和上位机之间的通信试验并传输到模数转换芯片,实现模拟量的输出。在实现超高速传输数据时,TI 公司的DSP 28335 系列芯片发挥了强大的工作能力,还可以满足进行远程大范围的访问需求。首次采用基于模块化设计的思想进行PCB 电路板的设计,满足了设计者对进行设计和利用软件进行仿真试验时更加快捷的需求,从而使得印制板开发的周期缩短、难度降低。

SDA5638BMD 是一款双路12 位低功耗D/A 转换器,实现整机系统中数字信号转换为模拟信号的功能。电路包含了串并转换、数据锁存器、高精度电压基准、电阻网络DAC 核、轨到轨输出缓冲等单元。具有内部基准可编程、建立时间可编程、兼容SPI 接口、微分非线性误差小等特点,可用于数字伺服控制回路、偏移和增益的数字调整、工业过程控制、机械和运动控制设备、大容量储存设备等领域[2]。芯片的整个原理,见图1。

图1 SDA5638 工作原理图

该产品16 位可编程串行码的具体功能设计,见表1。

表1 SDA5638BMD 串行码输入格式

表2 为SDA5638 的工作时间。

表2 SDA5638 工作时间

1 电路方案设计

由于数模转换的设计在自动化领域运用非常之广,为了尽可能的将其小型化和集成化设计,尽可能的做到控制非常小但是而且功能强大。

本文以TI 公司生产的DSP 28335 芯片内SPI 口来设计模数转换SDA5638 的具体应用场景。TI 公司的DSP 28335 芯片具有3 路高速SPI 接口,具有16位数据传输的芯片,具有接口多,传输快的优点。因此,在本电路的设计中,既能满足较高系统中实时性的要求,又可以满足SPI 接口的元件既能简化电路设计,还可以提高整个应用中的可靠性传输[3]。图2 为整个设计的原理图。

图2 设计原理图

SDA5638 的工作原理为:通过时钟输入端口输入时钟信号,对串行数字输入信号进行采集,该串行信号为可编程的16 位串行码,包括高4 位控制位和低12 位数据位,控制位设置省电模式、普通模式,快模式、慢模式,同时设置写入12 位串行数据到控制锁存器、DAC 锁存器或者缓存,当写入到控制锁存器时,写入数据用于设置基准,选择内部基准或者外部基准,当选择内部基准时可设置内部基准为2.048 V 或者1.024 V;12 位串行数据通过串/ 并联转换电路后输出12 位并行数据到锁存器,数据锁存完毕即可启动转换;启动转换时,利用开关来控制电阻分压的方法获取模拟输出,模拟输出经过闭环增益为2 的轨到轨AB 类输出缓冲输出模拟电压[4]。

表3 为SDA5638 的引脚定义。

表3 SDA5638 引脚定义

原理图内数模转换芯片SDA5638 与DSP 芯片上的高速SPI 接口直连,DSP 28335 芯片作为主,数模转换芯片SDA5638 作为从,DSP 芯片通过其CS 引脚输出低电平,数模转换芯片在低电平的时候为有效,DSP的CLK 时钟引脚为整个SPI 传输中提供时钟信号,如图3 所示,在时钟的下降沿接收到SPI 总线上的数据。然后经过16 个时钟信号,完成了一帧的数据传输。

该产品的工作时序如图3 所示。

图3 SDA5638BMD 时序图

主控芯片DSP 28335 芯片是集成了TI 公司的新一代高速可编辑芯片,本文主要是通过DSP 28335 芯片内部的可逻辑控制区域来配置与SDA5638 芯片进行高速数据传输的接口,当SDA5638 上的片选CS 引脚接收到低电平信号时,这时候主控芯片DSP 的内部数据为16 位传输。传输结束后,主控DSP 芯片的CS引脚恢复为高电平,等待上位机下一次的指令。为了保障电路设计的可靠性,保证其电路传输速率最佳,因为关系到数模转换芯片SDA5638 在整个数据传输过程中的抗干扰能力;数模转换芯片SDA5638 在数据传输过程中信号不受到干扰,采用印制板平行布线的方式,为了降低控制芯片和数模转换芯片的供电3.3 V 防止通过内部的其他线路传输中而造成损坏其他芯片,通过印制板分层设计的原则,电源层与信号层都选用不同的叠层进行布线,从而可以防止引入其他电源信号对接口电路的影响[5]。

为了保障更好的传输与可靠性,PCB 印制板电阻都选用千分之一的国军标电阻和0402 封装的高可靠国军标的电容;在印制板PCB 布线的同时,电阻和电容都紧挨着主控DSP 芯片和数模转换芯片放置;这样可以避免因滤波电容及电阻摆放位置太远而导致整个传输过程中信号受到干扰,导致整个PCB 印制板设计失败的问题。PCB 印制板在布线时,严格按照设计标准规范要求,将主控芯片的布线距离按走线最短同时不走弯线原则[6];对于PCB 内的地层,选用大面积铺铜的走线方式,并且与信号线物理隔开,满足了高可靠性的传输。

2 软件实施设计

首先在DSP 的加载程序里面执行,将DSP 内部的程序进行整体初始化,先将DSP 内的高速串口引脚进行设置,选择用SDA5638 的内部基准,因SDA5638输出能力于内部基准输出电压相关,内部基准时可设置内部基准为2.048 V 或者1.024 V,所以选择内部基准为2.048 V,这样SDA5638 的输出能力就是0~4.096 V。

DSP 内部配置和初始化完成后,DSP 芯片就进入到待机状态等待上位机上面的指令信号,当上位机的总线上传来控制信号时,通信的协议芯片CAN 芯片会返回相应的解码信息给DSP 芯片,DSP 芯片这样就收到并且解析相应的指令。

在数据传输的过程中,首先片选信号CS 变为低电平,数模转换芯片SDA5638 被选中,处于工作状态,在SDA5638 进入工作状态后,CLK 输入的信号变为下降沿,16 位的数据从最高位一位接着一位写入到芯片内部的寄存器里,当16 位的数据结束后或者CS 信号到达上升沿,移入到内部寄存器的数据则转移到目标的寄存器DACA 或者DACB 内,表4 为16 位数据的控制位和数据位。

表4 SDA5638 芯片内部数据表

其中SPD 为控制位,一般选择置为1,快模式;PWR 为功率控制位,一般选择置为0,正常工作模式;R1 和R0 为内部寄存器的选择位,内部寄存器的配置,见表5。

表5 内部寄存器配置

因内部数模转换芯片SDA5638 内部有两种基准电压,可以配置基准源,配置基准的选择情况,见表6。

表6 内部基准配置

本文的设计选择内部基准源,并且电压输出为2.048 V。

现已完成基于串口的数模转换芯片与DSP 的高速设计,本文对于DSP 芯片传使用的调试软件为高速串口调试助手软件,可以实现对主控芯片DSP 控制的高速串行D/A 芯片SDA5638 相互通信之间测试。此款高速串口调试助手软件可以实时监控和显示出当时数据传输的状态,更有利于主控芯片DSP 和上位机之间随时掌握输出状态的依据。当主控芯片收到上位发送的指令后,会回读信息,并向上位机发送收到指令;然后高速串口调试助手软件点击上面的发送或者读取数据给数模转换芯片发送信号,最后以数模转换芯片SDA5638 周围放置的红色LED 指示灯亮暗为信号,来观察判断主控芯片和数模转换芯片之间的连接状态以及他们之间数据相互交互的情况。

3 结论

本文设计基于串口的数模转换芯片与DSP 的高速设计,其选用主控芯片DSP 28335 上的高速串口通道,运用数模转换芯片SDA5638 进行两者之间的高速数据传输,并运用高速串口调试助手软件对上位机与控制板之间的通信传输进行试验,实现了DSP 芯片和上位机之间的通信试验。整个PCB 印制板在设计中运用了基于模块化设计的理念,使开发和利用软件进行模拟实验更加方便快捷,从而对印制板设计的难度有所改善,大幅缩短了设计周期。

猜你喜欢
寄存器上位串口
一场史无前例的乐队真人秀
飞思卡尔单片机脉宽调制模块用法研究
移位寄存器及算术运算应用
MCS—51单片机中的多串口通讯技术的应用
数字电路环境下汽车控制电路信号设计
基础油“上位”
全国计算机等级考试机房准备工作探讨
微机串口的测试诊断
基于VC的PLC数据采集管理系统
基于VC串口通信的实现