c2000 gen-3对比于gen-2的c2000,加入了三角函数运算单元来进一步提升运算能力,提供了更多的adc模块及窗口比较器来增强采样和保护的快速性和灵活性。同时,在实时通信方面,引入了新一代快速串行通信接口fast serial interface (fsi),可以支持在隔离的情况下最高200mbps的数据传输速率。
本文主要讨论adc通道的选择、fsi接口的应用、3.3v供电选型考量、gpio口的配置和jtag的连接与调试进行详细介绍。
adc通道的输入寄生电容:
当我们在把外部信号匹配到c2000的adc通道的时候,常常会忽略到adc的输入模型可能会带来的潜在影响。其中最为明显的就是每个adc通道上都会有一个输入寄生电容,而具有较大输入寄生电容的adc通道通常是不适用于高频采样信号的。这是因为较大的输入寄生电容会带来更长的采样窗口,进而可能会影响到控制回路里的computational power budget。
针对于gen-3的f28002x的c2000, 我们可以在数据手册的adc input model章节的表格table 1 中查询到每一个adc通道的内部输入寄生电容。基于table 1,adcina3/adcinc5通道不管是否启用了比较器,因为其内部输入寄生电容达到71.4pf,都是明显是不适合用于高速采样信号的。而对于adcina0/adcinc15来说,如果使用了内部比较器,那么就需要慎重考虑采样窗口和外部采样电路。例如:如果我们希望使用某个adc通道实现ovp功能的实现,而我们又只剩下了adcina0/adcinc15这一个通道,那么我们可以利用软件代码在后台任务来实现ovp的功能,而无需使用内部比较器。如果我们一定要实现基于cmpss模块的ovp功能,那么建议切换到其他到adc通道。
table 1: adc 通道寄生电容
fsi 接口介绍:
fsi接口是gen-3的c2000引入的最新的高速可靠的快速串行接口。针对需要隔离的通信应用场景,fsi接收端模块具有一个可编程的delay line control。通过对每一个线的rx_dly_line_ctrl寄存器值进行修改,从而对系统元器件(例如信号缓冲器和隔离器等)引起的信号延迟和板级的(例如不均匀的布线等)引起的信号延迟进行补偿,最终保证信号的完整性,实现高速可靠通信。fsi是应用于点对点的的通信协议,例如单主/单从配置,所以fsi主要应用于以下两种场景:
两个mcu直接进行通信
板级之间的通信,例如psfb的原边和副边的两个mcu通过隔离芯片来通信
fsi接口的传输端(fsitx)和接收端(fsirx)是完全独立的,每个端口有自己独立的寄存器、时钟和中断。而不同于iic接口的一个重要区别是其只能作为单一方向的通信传输。基于figure 1, fsi的每个端口有3个信号线,分别是时钟clk,数据线d0和一个额外的数据线d1。额外的数据线d1是作为多线传输来加倍数据传输速率,也可作为gpio口。所以,通常来说点对点的fsi需要至少4根信号线。fsi最大可支持的时钟频率为50mhz,而时钟的上升沿和下降沿也可作为数据的有效位判定。所以,理论上是可以达到最高200mbps的传输速率。
figure 1: fsitx/rx 模块连接图
在电机驱动和数字电源中,mcu之间进行实时通信越来越普遍,而这也对通信实时性的要求变高。fsi接口因为具有可编程的delay line control,可以确保隔离应用场景下高速通信且可靠,所以对比传统的uart、spi和can等通信接口来说更具优势。
f28002x fsi 和iic兼容gpio口及隔离芯片:
如果我们要把f280025c 64pin作为副边的mcu和原边的mcu进行fsi通信,在工程师进行系统调试阶段,有时会希望通信接口既能作为fsi又能作为iic通信。这个时候就会引入一些问题,例如iic是双向通信,而fsi是单向的。针对f280025c 64pin,只有以下gpio口既能支持fsi,又能支持iic:
gpio33 >> i2ca_scl and fsirxa_clk
gpio8 >> i2ca_scl and fsitxa_d1
gpio0 >> i2ca_sda and fsirxa_clk
gpio32 >> i2ca_sda and fsirxa_d0
gpio10 >> i2ca_sda and fsitxa_clk
首先,只有gpio32是支持fsirxa_d0的数据线。其次,只有gpio33的fsi和iic都是作为时钟使用。所以我们建议使用gpio32/33作为接收端(rx)的数据和时钟线。
此外,在选择隔离器时,如果我们已经明确了通信方向,那么只要我们保持iic和fsi的数据传输方向,那么依然可以使用单向的隔离器,例如iso7742来传输数据。
3v供电电源芯片选择小细节:
通常我们根据c2000的供电vdda/vddio选择对应的前级dc/dc或者ldo时,更多会把重点放在输出电流能力、psrr和压降等参数上,往往忽视了ldo的精度可能会带来的影响。针对c2000内部cmpss模块的参考dac模块,系统框图如下图。如果我们选择vdda作为compdac的参考电压,那么vdda的任意百分比变化都会影响到compdac的输出。所以通常针对峰值电流控制模式的dc/dc,推荐使用1%精度的ldo,例如tps7a90。
figure 2: c2000 cmpss 模块的参考dac部分框图
gpio口与外部信号的匹配:
三态(tri-state)外部信号。例如外部信号active的时候需要拉高,sleep状态下需求拉低,idle模式需求floating。那么我们有两种方式来处理,第一是通过将gpio设置为输入,然后禁用上拉,第二种是将gpio设置为输出和开漏,同时把gpio电平设为低位。而这都可以通过c2000里面的gpaodr寄存器实现。
特定情况下,一些例如使能的数字口,如果不足以在低电平拉低,可以把其配置到模拟口。然后通过软件对模拟量的判断来实现高低电平的判断,从而实现使能和关闭使能。
数字gpio口不够时的备选方案:
将原本作为风扇等其他小型设备的反馈电压(原边为数字信号)作为模拟gpio口。然后通过软件代码基于采样电压来判断高低电平。
boot load的gpio24和gpio32如果是boot from flash,可以节省出两个gpio口。如果是boot from sci和can等的话,可以在boot结束后复用为其他gpio口。
jtag接口连接及调试:
通常来说jtag(ieee标准 1149.1-1990 standard test access port and boundary scan architecture) 具有五个引脚:tms/tdi/tdo/tck/trstn。主要的三大功能如下:
下载软件到mcu的flash
调试
边界扫描:访问芯片内部的信号逻辑状态以及芯片引脚状态等
通常针对jtag连接出现问题的调试流程如下:
a) power good led 开启:ti所有的c2000开发板都有led来标识mcu的供电是否正常。
b) 检查device manager:使用jtag仿真器和pc通信,我们首先需要安装好驱动文件。通常我们在安装ccs的时候会有具体细节。如需验证驱动是否成功安装,连接jtag模拟器到pc并供电。然后在pc的control panel >> device manger 来定位到usb仿真器。
figure 3: device manager 驱动确认
c) 检查mcu jtag的trstn信号是否拉高:如果在ccs连接过程中,trstn没有改变状态,那么需要验证仿真器是否配置正常。
d) 检查target configuration:在target configuration file (.ccxml) 会包含连接target device的所有相关信息以及jtag仿真器的类型。在ccs中点击“view”,然后点击target configuration,找到user defined下的 .ccxml 文件,就会显示处new target configuration 界面如下图。在下图中选择合适的devices,保持配置,再点击测试连接即可测试连接是否正常。
figure 4: target configuration 确认连接是否正常
e) 启动ccs调试。
f) 检查xrsn状态:如果xrsn的状态是低或者出现从低到高再到低的脉冲状态,那么可能是多种因素造成。例如如果是从低到高再到低的脉冲,那么可能是看门狗导致的重启。如果一直处于低电平,那么可能是因为供电或者pcb的其他的原因导致了brown out rest (bor)。
g) 检查boot mode:如果使用的是gpio24和gpio32默认的bootload口,那么参照f28002x的trm中3章节,检查gpio24和gpio32的引脚来确认是否在期望的boot load 模式。
h) 检查vreg/时钟/系统时钟:测量并确认jtag的时钟和晶振是否符合数据手册表明。测量并确认是否供电是否运行在了推荐电压值以外导致了bor等问题。
智能矿山AI算法助你轻松掌握护帮板正常打开状态
Check Point宣布订立新的安全保护标准 可检测SSL加密流量却不影响正常工作
海南省首例“达芬奇”机器人胰头十二指肠切除术顺利完成
关于量子力学基本原理的几个题目
智能LED照明系统与传感技术方案特点
Gen-3 C2000 F280025C外围电路和引脚配置详解
半导体衬底的光电效应研究
独创融合视觉技术,锐思智芯打造AR/VR全新视觉传感器
华为视频与腾讯视频达成重量级合作 引领视频行业合作新生态
信号钳位对ADC的作用
TQ335XB远程实时环境监测仪的应用分析
如何开发高性能锂离子电池负极材料
干货 | 第三代半导体器件可靠性检测知多少?
红外传感器和激光传感器的区别
人工智能如何改进数据中心设施的性能
谷歌发布Nest Hub Max 搭载10寸触摸屏与摄像头
小米6最新消息:新一代性能小怪兽小米6真的有这么强吗?居然敢来挑战三星S8
DDS,什么是DDS,DDS的结构
展馆机器人核心功能和常见业务场景
多个集成电路项目签约落户徐州 该市目前基本形成了以集成电路材料与设备、封装与测试为主的集成电路产业