查看: 1914|回复: 0

三大电机控制方案之DSP篇(1):TMS320F28335

[复制链接]
  • TA的每日心情

    2018-8-2 13:58
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]初来乍到

    发表于 2019-5-27 14:55:57 | 显示全部楼层 |阅读模式
    分享到:
    近几年来,基于DSP的电机专用集成电路由于在计算速度、容量存储等方面比单片机具有更优的性能,已逐渐代替单片机运用于电机控制系统中。目前的大部分电机都把电流环控制作为DSP的一个协处理来考虑,而速度或位置环控制则由 DSP芯片来实现。一般情况下,由于位置控制比较灵活,且差异性比较大,很难做到通用性,所以位置环一般由DSP来直接完成;但速度和电流环相对具有通用性,且互相关联紧密,以致高性能的速度控制都离不开电流控制,因此完全可以把它们集成到一个芯片中处理,这样既可以实现速度伺服控制,又可以单独进行电流控制,还可以和DSP共同构成位置伺服系统。
    市面上专注于电机控制DSP解决方案的厂商屈指可数,作为世界上最知名的DSP芯片生产厂商,美国德州仪器生产的TMS320系列芯片广泛应用于各个领域,其中TMS320C2000系列便是面向工业控制推出的DSP芯片。

    TMS320F28335简介


    TMS320F28335数字信号处理器是属于C2000系列的一款浮点DSP控制器。与以往的定点DSP相比,该器件的精度高,成本低, 功耗小,性能高,外设集成度高,数据以及程序存储量大,A/D转换更精确快速等。

    TMS320F28335具有150MHz的高速处理能力,具备32位浮 点处理单元,6个DMA通道支持ADC、McBSP和 EMIF,有多达18路的PWM输出,其中有6路为TI特有的更高精度的PWM输出 (HRPWM),12位16通道ADC。得益于其浮点运算单元,用户可快速编写控制算法而无需在处理小数操作上耗费过多的时间和精力,与前代DSP相比,平均性能提高50%,并与定点C28x控制器软件兼容,从而简化软件开发, 缩短开发周期,降低开发成本。

    功能框架
    • 特性
    • 高性能静态 CMOS 技术
    • -高达 150MHz(6.67ns 周期时间)

    -1.9V/1.8V内核,3.3V I/O设计
    高性能 32 位 CPU(TMS320C28x)
    -IEEE-754 单精度浮点单元(FPU)(只在 F2833x 上提供)
    -16 x 16 和 32 x 32 介质访问控制 (MAC) 运算
    -16 x 16 双 MAC
    -哈佛 (Harvard) 总线架构
    -快速中断响应和处理
    -统一存储器编程模型
    -高效代码(使用 C/C++ 和汇编语言)
    6 通道 DMA 处理器(用于ADC,McBSP,ePWM,XINTF 和 SARAM)
    16 位或 32 位外部接口 (XINTF)
    -超过 2M × 16 地址范围
    片载存储器
    -F28335,F28235:
    -256K×16 闪存,34K×16 SARAM
    -F28334,F28234:
    -128K×16 闪存,34K×16 SARAM
    -F28332,F28232:
    -64K×16 闪存,26K×16S ARAM
    -1K x 16 一次性可编程 (OTP) ROM
    引导 ROM (8K X 16)
    -支持软件引导模式(通过 SCI,SPI,CAN,I2C,McBSP,XINTF 和并行 I/O)
    -标准数学表
    时钟和系统控制
    -支持动态锁相环 (PLL) 比率变化
    -片载振荡器
    -安全装置定时器模块
    GPIO0 到 GPIO63 引脚可以连接到八个外部内核中断其中的一个
    可支持全部58个外设中断的外设中断扩展 (PIE) 块
    128 位安全密钥/锁
    -保护闪存 / OTP/RAM 模块
    -防止固件逆向工程
    增强型控制外设
    -多达 18 个脉宽调制 (PWM) 输出
    -高达 6 个支持 150ps 微边界定位 (MEP) 分辨率的高分辨率脉宽调制器 (HRPWM) 输出
    -高达 6 个事件捕捉输入
    -多达两个正交编码器接口
    -高达 8 个 32 位定时器(6 个 eCAP 以及 2 个 eQEP)
    -高达 9 个 32 位定时器(6 个ePWM 以及 3 个 XINTCTR)
    三个 32 位 CPU 定时器
    串行端口外设
    -多达 2 个控制器局域网 (CAN) 模块
    -多达 3 个 SCI (UART) 模块
    -高达 2 个 McBSP 模块(可配置为 SPI)
    -一个SPI模块
    -一个内部集成电路 (I2C) 总线
    12 位模数转换器 (ADC),16 个通道
    -80ns 转换率
    -2 x 8 通道输入复用器
    -两个采样保持
    -单一/同步转换
    -内部或者外部基准
    多达 88 个具有输入滤波功能可单独编程的多路复用通用输入输出 (GPIO) 引脚
    JTAG 边界扫描支持 IEEE 标准 1149.1-1990 标准测试端口和边界扫面架构
    高级仿真特性
    -分析和断点功能
    -借助硬件的实时调试
    开发支持包括
    -ANSI C/C++ 编译器/汇编语言/连接器
    -Code Composer Studio IDE
    -DSP/BIOS
    -数字电机控制和数字电源软件库
    低功耗模式和省电模式
    -支持 IDLE(空闲)、STANDBY(待机)、HALT(暂停)模式
    -可禁用独立外设时钟
    字节序:小端序
    封装选项:
    -无铅,绿色封装
    -薄型四方扁平封装 (PGF,PTP)
    -MicroStar BGA (ZHH)
    -塑料 BGA 封装 (ZJZ)
    温度选项:
    -A:-40°C 至 85°C (PGF,ZHH,ZJZ)
    -S:-40°C 至 125°C (PTP,ZJZ)
    -Q:-40°C 至 125°C (PTP,ZJZ)
    主要模块分析
    C28x CPU
    F2833x (C28x+FPU)/F2823x (C28x)系列都属于 TMS320C2000? 数字信号控制器 (DSC)平台。 基于C28x+FPU 的控制器和 TI 现有的 C28xDSC具有相同的 32 位定点架构,但是还包括一个单精度(32 位)的 IEEE 754 浮点单元(FPU)。 这是一个非常高效的的 C/C++ 引擎,它能使用户用高层次的语言开发他们的系统控制软件。 这也使得能够使用 C/C++ 开发算术算法。 此器件在处理 DSP 算术任务时与处理系统控制任务时同样有效而系统控制任务通常由微控制器器件处理。 这样的效率在很多系统中省却了对第二个处理器的需要。 32 x 32 位 MAC 64 位处理能力使得控制器能够有效地处理更高的数字分辨率问题。 添加了带有关键寄存器自动环境保存的快速中断响应,使得一个器件能够用最小的延迟处理很多异步事件。 此器件有一个具有流水线式存储器访问的 8 级深受保护管道。 这个流水线式操作使得此器件能够在高速执行而无需求助于昂贵的高速存储器。 特别分支超前硬件大大减少了条件不连续而带来的延迟。 特别存储条件操作进一步提升了性能。
    内存总线
    与很多DSC类型器件一样,多总线被用于在内存和外设以及 CPU 之间移动数据。 C28x 内存总线架构包含一个程序读取总线、数据读取总线和数据写入总线。 此程序读取总线由 22 条地址线路和 32 条数据线路组成。 数据读取和写入总线由 32 条地址线路和 32 条数据线路组成。 32 位宽数据总线可实现单周期 32 位运行。 多总线结构,通常称为哈弗总线,使得 C28x 能够在一个单周期内取一个指令、读取一个数据值和写入一个数据值。 所有连接在内存总线上的外设和内存对内存访问进行优先级设定。 总的来说,内存总线访问的优先级可概括如下:
    最高级: 数据写入 (内存总线上不能同时进行数据和程序写入。)
    程序写入 (内存总线上不能同时进行数据和程序写入。)
    数据读取
    程序读取 (内存总线上不能同时进行程序读取和取指令。)
    最低级: 取指令 (内存总线上不能同时进行程序读取和取指令。)
    ADC
    TMS320F28335 上有 16 通道、12 位的模数转换器 ADC。他可以被配置为两个独立的 8 通道输入模式,也可以通过配置 AdcRegs.ADCTRL1.bit.SEQ_CASC=1,将其设置为一个 16 通道的级联输入模式。输入的方式可以通过配置AdcRegs.ADCTRL1.bit.ACQ_PS=1,将其设置为顺序采集。即从低通道开始到高通道结束。
    时钟
    TMS320F28335 上有一个基于 PLL 电路的片上时钟模块,为 CPU 及外设提供时钟有两种方式:一种是用外部的时钟源,将其连接到 X1 引脚上或者 XCLKIN 引脚上,X2 接地;另一种是使用振荡器产生时钟,用 30MHz 的晶体和两个 20PF 的电容组成的电路分别连接到 X1 和 X2 引脚上,XCLKIN 引脚接地。我们常用第二种来产生时钟。此时钟将通过一个内部 PLL 锁相环电路,进行倍频。由于 F28335 的最大工作频率是 150M,所以倍频值最大是 5。其中倍频值由 PLLCR 的低四位和 PLLSTS 的第 7、8 位来决定。
    外部中断
    支持8 个被屏蔽的外部中断 (XINT1–XINT7, XNMI)。 XNMI 可被连接至 INT13 或者 CPU 的 NMI 中断。这些中断中的每一个可被选择用于负边沿、正边沿或者正负边沿触发,并且可被启用或禁用(包括XNMI 在内)。 XINT1, XINT2,和 XNMI 还包含一个 16 位自由运行的上数计数器,当检测到一个有效的中断边沿时,该计数器复位为 0。 这个计数器可被用于为中断精确计时。 与 281x 器件不同,没有用于外部中断的专用引脚。 XINT1,XINT2 和 XINT 中断可接受来自 GPIO0-GPIO31 引脚的输入。 XINT3–XINT7 中断可接受来自 GPIO32-GPIO63 引脚的输入。












    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-11-24 04:32 , Processed in 0.119170 second(s), 15 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.