DesignDRIVE中EtherCAT通信支持_2016 TI 嵌入式产品研讨会实录
Loading the player...
将在30s后自动为您播放下一课程
确实现在这个 EtherCAT 东西 越来越流行尤其是在我们这边在中国 那我们首先我们 C2000 现在主要的这个 目标客户就是这边 电机包括比如伺服做一些工业控制 他们都会有 EtherCAT 需求 但是我们 TI 实际在 EtherCAT 这边 我们自己 C2000 目前是 没有办法直接去处理 EtherCAT slave 节点 那 master 就更别说了我们也搞不定 但是我们现在是有这么几个几种处理的方式 一种就是我们的 AM335x 它既可以做 EtherCAT slave 也可以搞定做 master 所以那你可以把 EtherCAT 这个 任务都交给 AM335x 然后我们和 AM335x之间 比如说通过高速的 SPI 或者是通过一些其它的这个总线去通讯 这是一个方案 另一个方案就是由外边的这种 EtherCAT slave 的控制器 我们去跟它去通讯 但是这个就带来一个问题就是说 那这个东西和用 AM335x 去实现有什么区别呢 大家可能会问啊 这不就重复了 既然用 AM335x 为什么要做这个 那首先 AM335x 它自己是一颗 Cortex A8 的处理器 那它要外扩 flash要外扩 DDR 去做这些事情 它一定不可能是像我们这种单芯片 或者怎么样去做 那还有就是说我们的连一个外接的控制器 不管是 ET1100还是其它的控制器 连这个东西的话 那最主要的一个区别就是 EtherCAT 协议栈跑在哪一边 如果我们接这种 ET1100 那我们 C2000上面是要跑一个 EtherCAT 协议栈的 如果用 AM335x EtherCAT 协议栈可以直接跑在 AM335x 的 A8 核上 那它跟你之间的通讯可以自己去定义 所以 C2000 上面不用跑 EtherCAT 协议栈 这就是最最最主要的区别 这个是我们现在已有的参考设计 我们在这个现在做一个 TI design 用我们的这个2837x 和 ET1100 用它俩去连 连完以后 这个 TI design 现在做到哪一步 就是现在我们提供了 我们和 ET1100 之间的硬件连接 我们和 ET1100连接是通过两种方式 应该是主要看 ET1100 因为它本身就有两种方式 一种是并行总线 另外一种是 SPI 我们也做了相应的这个 我们的 SPI 是直接那个 SPI 没有什么问题我们叫并行总线 我们是用因为我们2837x是有两条并行总线的 我们有一个32位总线 那我们可以用我们16位总线去连 ET1100 这是我们现在能给大家 就是我们 TI design 里面现在就有硬件连接 除了硬件连接还有什么 那我们除了硬件连接的原理图 我们还有一个底层的驱动 就是怎么去跟 ET1100 SPI 通讯 包括或者说并行总线通讯 把这一部分驱动的总线的驱动我们写好了 那 EtherCAT 协议栈 我们现在没有提供给大家 因为这东西不是 TI 可以提供的 因为你必须是 ETG 的会员 你才可以用 EtherCAT 的协议栈 所以我们现在就是说如果 现在有的东西就是硬件连接底层驱动 EtherCAT 协议栈需要你自己去 EtherCAT 成为 ETG 成员以后再去拿 然后自己做一个移植 将来我们计划是说我们会 给大家在移植方面做一些指导 就比如说因为我们肯定我们的产品线 他们首先会去移植测试这个协议栈 然后对于移植方面可以做指导 但是它还是不能直接把协议栈提供给大家 在我们 L335x 那边他们会出一颗单独的料号 这一颗它会把 EtherCAT 烧在里面 作为一个 SOC 的方式 提供给大家 但是它还是需要你去外扩一些东西 所以这个看大家怎么平衡和取舍 这个实际有一个没画 就是实际我们在规划下一代 C2000芯片的时候 我们是有计划做一颗芯片 然后把 ET1100 直接封在我们芯片里面 这样大家就不需要专门去搞一个外边的 不管是 SPI 还是并行总线去连接它 这样我们可以直接从我们内部的数据总线上 去访问 ET1100 大家有没有这个需求啊 就是在座的有哪些是用到过 EtherCAT 或者说想要用 EtherCAT 有吗 如果没有 那实际这方面可能大家就不太感兴趣 没关系 那我们后面就可以说快一点 然后大家有什么其它什么感兴趣的 可以跟我们一块讨论一下 在座的真的是没有用 EtherCAT 是吧 或者说有这个需求 后面有是吧 你那边用了是吧 那你现在用的什么方案呢 之前没有用过 现在主要是想直接上 EtherCAT 这个总线 那你现在是用哪一颗我们 C2000 的器件 现在用的 TI 那个57 AM57 570是吗 5728 Sitara 那条线 5728 你用 Sitara Sitara 那边就好办了 Sitara 那边不管是从还是主它都能搞定 只不过主的那个协议栈它是要第三方合作的 从的那个应该可以直接放出来 而且不要授权费这些都不要 这个就好办了 但对我们 C2000来说 有些客户他不喜欢用 他没有 processor 的开发经验的话 那他退而求其次 他就会选一颗 ET1100来实现我们控制 首先说 EtherCAT 不是 TI 的 EtherCAT 是 BECKHOFF 的 BECKHOFF 制定的这么一个标准 包括它这里边的授权都是 BECKHOFF 授权出来的 所以他们还成立了一个 ETG 就是说你所有关于 EtherCAT 的东西 只有成为 ETG 成员 才可以去拿到相应的协议栈 其它的一些资料 那怎么成为 ETG 的会员 因为我确实也不是 ETG 的成员 但是我也跟客户了解了一下 就是说你可以去申请 它各地有代表处你可以去申请 成为 ETG 的成员 可以列一个表格好像也不收费 然后只是注册一下 然后你就可以成为 ETG 的会员了 这 EtherCAT 除了大家说 就如果你们要都没使过的话 肯定会说 EtherCAT 到底是个什么东西 为什么说这些做这种 比如说实时控制工业控制人都喜欢使用这个东西 那 EtherCAT 就现场总线 实时现场总线实际最重要的一个参数就是实时 就是这是最重要的 而且也是它最关注的东西 然后 那 EtherCAT 可以做到什么 EtherCAT 可以做到它对这个 它的响应的就是指令的延迟 比如我从发到那边对方收到 我的底下的 slave 的节点 收到我这个数据 中间的这个延迟可以做到小于100us 就包括线路上的延迟和逻辑上控制器的延迟 可以做到小于100us 这就是它最大最大的特点 就是快 100 微妙级的这种数据通讯 二是它和现在的这个 它可以用现在有的这种 比如说标准的网口啊这种回线啊 它都可以沿用现在的东西 那一个是快另外一个是兼容性比较好 包括它这个主栈 就是说你找一台 PC有网口的 PC 你也可以实现这个主栈 所以兼容性和速度方面 EtherCAT 是存在一个最大的优势 所以这个在工业控制这边 当然还有其它的 其它的实际也有各有优缺点 但是在我们这边实际的情况就是 在中国这片土地实际情况就是大家 实际会看别人用什么我也用什么 或者哪个比较用的人多 大家实际会统一在一个标准下 就现在的趋势上来看 实际是 EtherCAT 用的人越来越多 包括有一些做这种数控系统的 他们有一个 IO 板包括这个 每一个 IO 节点一个小的控制单元 它全是还是 EtherCAT 联系的 这个是说 EtherCAT 整个结构 首先 EtherCAT 它是分 主节点和 master slave 这个节点的 我刚才说了做主的搞 IPC 就可以做 像其它的我们一些处理器 比如说 Cortex A8 这种处理器也可以做 但是它主节点的要求 实际可以完全兼容现在的 Ethernet 但是它这个从节点是特殊的结构 因为它上面这个 它的从节点的数据实际是 类似于这种菊花链形式的 它的数据是串行的 一个节点串串串它要 bypass 往后走的 所以它就从节点上都会有 大家可以看往后看 你看我们的有什么它从节点都长这样 上面最典型就两网口 所以它就菊花链的 它数据就一串串串过去的 这个就是我们刚才说的 我们 TI 参考设计的 ET1100 的板子 这个板子可以放在插在我们下面控制板上 插在我们现在那个控制板上 刚才说实际上我们这个 跑我们 C2000 可以直接跑在 EtherCAT 协议栈 然后实现 EtherCAT 的通讯 实际我们之前 上一节我们也讲过 我们有一个开发板叫 IDDK 就是 IDDK 上面 我们实际是有三个插槽 我不知道大家注意过没有 如果大家见过我们 IDDK 开发板 我看后面有没有图啊 IDDK 上我们实际是有3个插槽的 就是说我们 IDDK 上就是说一套电机控制的硬件 然后上面可以插3个处理器 这3个处理器插槽 一个是 C200088377D 它就是专门实现电机控制的 还有一个是我们Hercules 他可以插一个Hercules的器件 然后可以通过Hercules来实现功能性安全的功能 那第三个插槽实际插的就是我们 Sitara 的 AM335x 通过 AM335x 它能实现 EtherCAT 我们的那个同事就是 DO 的同事 他们实际做了一个完整的 demo 就是包括 EtherCAT 通讯 然后通过 EtherCAT 传指令到下面 然后我们的 C2000 控制电机做出各种指令 然后通过我们Hercules的器件 来去监测保证整个系统的稳定性安全 这是我们的 demo 就是通过 IDDK 去实现的 这就是我们刚才说的 它那个数据都是串进来串行串着走的 所以它整个网络长的是这样的 这就决定它那个从节点一定是特殊的 MAC 层 不是我们普通的 Ethernet MAC 层 这个是我们和那个 和 ET1100 之间的连接 这个是还是通过并行总线的方式去连接的 我们用的是 EMIF2 因为我们 C2000这个器件 就是2837x 这个器件 实际是双 EMIF 的 双 EMIF 就是我们可以有两条总线扩出来 1个16位的总线 像我们这个 EMIF2 另外还有一个32位的总线 32位的总线你可以去扩 比如说 FPGA 啊 无论其它的什么存储器件去扩 然后通过16位的总线可以扩什么 比如说扩这个 EMIF 扩这个 EtherCAT 那还可以扩什么 比如说扩一些其它的这个控制器 比如说外置的 ADC 这是我们基础设备设备的一个特点 双总线 目前我不知道其它家有没有 应该在 MCU 里头我们是 可能是唯一一家有双总线的 还有其它家有吗 谁家的不算处理器啊 像什么处理器当然不算了 我们就说在 MCU 里面 就 flash RAM 内置的这种微控制器里边 我们应该是这方面保持领先的 刚才说了 ET1100 还可以通过 SPI 通信 这些都没有关系 我们之前说了我们现在能够 给大家的参考设计就是通过我们这个控制板 那我们实际还做了一个参考设计 是基于我们的 launchpad 用这两个我们就可以很方便的去测试 EtherCAT 整个网络 那我们下面会这个 给大家说如果你要是想去评估一下 用现在给你的这个方案怎么评估 首先你需要我们这个硬件 就是说我们从栈这边你需要这个 叫 Launch pad 或者我们那个 Control Card 刚才展示的那两个 主栈这边你实际去需要做这个软件 这个是在 ETG 网站上可以下载到 然后把这个东西装在你的 PC 上 任何一台电脑都可以当 EtherCAT 的主栈 只要装了这个软件就可以了 然后把我们这个 EtherCAT 这个 我们做好的一个 slave image 烧进去 就是说我们给大家 提供了一个可以供大家评估的 slave image 而不是原码 因为说了刚才那个协议栈我们不能提供 但我们可以给你提供一个编译好的 来让你测试一下 然后通过我的 PC 去连我的 Launch pad 通过这根网线 然后就可以去在上面去做测试了 因为大家可能大部分也都不用这些 所以可能真的是越听越困 所以那我们就 我不知道大家对其它有什么感兴趣的 我们可以去跟大家讨论一下我们其它的 包括这个如果你们有感兴趣的也可以 就这个是它里边的一些测试程序 关于今天我们这部分 EtherCAT 这部分 大家有什么感兴趣的吗 或者说其它的跟 EtherCAT 无关的 因为我刚才看了一下 满场就只有最后一位朋友是事实用过这个 剩下大家都对这个无需求 你讲 EtherCAT 传输容量是 CAN 总线多少倍 这个我还是真不清楚 你可以我回头我看一下 你是说它的速率是吗 它肯定比 CAN 要快 对 要不然大家也不会用这个 直接用 CAN 就好了 实际也不光是容量的问题 实际你跟 CAN 去比 CAN 很难做到对某个节点做到响应想到哪指哪 因为 CAN 是无主的系统 它实际最大特点还是它延时响应 就什么人会用它以前那个 比如说做那种大型机床的人 它这个机床什么时候该怎么动 怎么往哪个路径上刀头要走到哪个路线 它完全可以通过这个东西 去把它的指令发到下面各种伺服 然后伺服去响应然后就能满足它的精度 我们以前传统的形式 实际是很难做到这种低延迟的 这个对延迟要求是很高的 而且它数据 它一个数据包是可以最少 一个节点可以只加1bit 的数据上去 它那个数据包特别灵活从1bit 到那个 刚才有个数据来着是多少 你可以加一个位进去 所以它那个 最少是8个 所以主要是延时 CAN 是没有办法控制延时的 其它还有大家对这方面还有什么感兴趣的 或者对其它我们 C2000 的器件有什么感兴趣的 没有的话我们这部分可能就这样了 因为有很多细节的东西大家都没有积极了 听着都晕了 是这样的那我们现在因为 大家可能对这一方面不太感兴趣的话 就是说 EtherCAT 这部分 那我们还回来说对我们的 C2000器件 包括我们其它 那我在座我想问一下大家 在座的比如说电源相关的有多少 能帮忙举一下手吗 那电机相关的呢 那剩下的朋友都是什么应用的 是这样我们讲一下我们 因为我们实际平时遇到最多的问题 就是我们 C2000的开发工具的问题 因为很多很多人问我工具的问题 就包括我们的 IDE CCS 包括我们的仿真器 那这些东西跟应用无关嘛 所以我想跟大家抽这个时间 正好我们 EtherCAT 可能对大家意义不大 那我们就聊一下软硬件的开发工具 比如说这个 首先我们软件这个 就讲一下我们软件啊就是说 TI 的 C2000是只能在 CCS 上开发的 这个东西没有别的办法 只有 CCS 那 CCS 我们也大家以前用过的知道 从3.3到后面的4 5 现在已经到6了 马上年底我们还会出 CCS 7 这个 CCS 日新月异 但是我们实际 有很多我们现在的用户还是停留在3上 而且现在由于这个操作系统升级 很多人很困惑 说我们3在 windows7 以下能不能用 包括64位的 win7 以下能不能用 那首先我声明 TI 自己的官方声明是 我们 CCS3.3 是不支持 win7的 包括64位 win7 但它说的不支持不是指的不能用 它说的不支持是说 我们不能保证它能用 这个意思是这样 但实际我们也有客户 在他的 win7 以下去装 CCS3.3也能装成功 包括他的那个用比如说 xds100 的仿真器 包括510 560 的仿真器 在这底下也能用成 所以这个东西首先告诉大家 如果你用3.3 实际我们建议你最好是能换的话是换一换 因为 CCS6 一方面它对各种操作系统 它是 Java 嘛 Eclipse 它是从 Java 来的 所以它对各种操作系统的支持会好一些 你也不用纠结于3.3到底将来 这个能用那个不能用 但是有一点说明就是 CCS6 不支持2407 2406 所有的24的器件它都不支持 如果你有24的器件你还是留个 CCS3.3吧 这个没办法 我们新的 CCS6 不支持这些 当然话又说回来了 那个你 CCS3.3 支持不支持我们新的这些 37x 啊这些肯定是不支持的 CCS6 是可以支持我们 现在今天主要讲的这些28 37x 07x 我们新一代的 C2000的设备 其它的5必须要打补丁 那与其那样不如直接搞个6呢 打那个补丁麻烦 第二就是说 我们实际那就统一到一个平台上说 如果你有2407的项目 你留一个 CCS3.3 如果没有 那我们建议你能升6就都升到6吧 然后对于新器件的支持也好一些 而且我们 CCS6 有一个好处就是 我们所有 TI 的 MCU 包括我们的无线产品它都能支持 就包括 Sitara 包括我们的多核 DSP 所以你可以在 CCS6以下 把 TI 所有的处理器平趟 你不用再去来回就换 IDE 换处理器 因为以前很多人是这样的他的430 比如说他用 IAR 对吧或者用 Keil 用这些东西去做430 比如说他用那个 Keil 去编我们的 M4 我们有一个 M4 或者用 IAR 去编 那他又用 IAR 去编 然后 C2000 他又用 CCS 现在不用这么麻烦了 如果你能把它统一到 CCS6上面来说 我们的430 Hercules 我们的 Cortex M4 我们的这些无线什么的 CC这些系列 我们都能搞定 除了有一颗 CC 搞不定 就是CC 的以前的那一代25 CC25 几几 那个里头是一颗51核 我们 CCS 里头没有51的编译器 所以除了51核的我们都能搞定 所以换成 CCS6 还是值得的 换了以后你比如说你底下的 其它的 TI 平台你都没有问题了 那 CCS6 的事情我们就说到这 就是说我们 CCS6 CCS6 讲完就涉及到一个 license 的问题 经常大家会问 CCS6 license 是怎么办 有没有 license 实际是这样的 CCS6 对于我们 xds100 的仿真器 是无需要 license 的 就是说你安装的时候它有一个选项叫 xds100 free license 如果你安装的时候申请的是这个 license 你去用邮件注册一下 它就返回来一个注册码 然后这个就不要钱 那局限就是说它只能用在 xds100仿真器上 那 xds100 仿真器跟我们510 560有什么区别呢 如果你不用这个设备 就我们37x 07x 你用的是035包括以前的2808335这些 这些东西没有区别 xds100 仿真器 那个烧这些 flash 的速度是完全一致的 没有区别 完全没有区别 那什么是有区别的 有区别的就是说 我们新一代 device 因为它用了新的 flash 的工艺 所以你用 xds100 仿真器烧这个 flash 的时候 会慢一些 但烧 RAM 一点都不慢 所以你初期开发的时候 你就可以用 CCS xds100仿真器 说到这个 xds100仿真器 那大家就捎带说说 那就从 CCS 的话题转到我们仿真器的话题上 那我们 TI 是这样的 TI 首先 TI 自己不生产仿真器 所有市面上卖的仿真器没有一个是 TI 的 现在 最早的时候 TI 做过仿真器 但好多年都不做了 那 TI 网站上的仿真器 都是 Spectrum Digital 或者 Blackhawk 所以这个 那 Spectrum Digital 或者 Blackhawk 包括比如说在国内这个 瑞泰 和众达 对吧 这些以前卖仿真器的这些 它跟 TI 是什么关系 TI 只是把授权给它 那它自己去做一个仿真器 那是它的产品 它对这个品质负责 包括这些仿真器在那个 比如说 510 和 560 它在这个操作系统底下 它不是 USB 的吗 那个 USB 驱动都是他们自己写的 所以这就会有时候发生这个说 同样是510 比如说我 Spectrum Digital 或者 Blackhawk 510 就能支持最新的 CCS6 有可能某些厂商的510它就支持不了 CCS6 这个东西不是 TI 的原因 是它没有自己更新它在 CCS6 底下的支持的驱动 所以这个请大家去咨询自己买的仿真器的供应商 你问他这东西能不能支持 CCS6 对不对 然后如果不能的话 或者说可以升个级啊 或者它连升级都升不了就必须买新的 那是两码事了 所以说我首先说这个东西就是 xds100 跟510 560 的区别 那 xds100 本身有3个版本 xds100 有 v1 v2 v3 这个东西有什么区别啊 大家又疑惑了 首先这个 v1 是可以支持 CCS3.3的 3.3的最后的3.3什么38几几是可以支持 v1 的 v2 v3 在3.3上用不了 那 v1 是不支持6的 反过来说 所以那我们既然刚才已经讨论了半天 反正就是说建议大家把 CCS 升级到6 那好把你的 xds100 仿真器 最好来个 v2 v3 的对不对 然后这样就搞定了 而且 xds100 仿真器在 v2 v3 上面 实际跑的很好啊 为什么 因为 xds100 仿真器刚才说了 它的弱点就是稍微慢一点 慢一点是因为它的 USB 驱动 它用的是通用类 就是它不是自己写的 USB 它用的是一个通用类以后 TI 去通过这个 通过我们 CCS 里头 直接调用它操作的 它是一个透传的东西 所以它对新器件的支持就会好一些 就是不管 TI 出了什么新器件 只要你把 CCS 一更新 然后 v1 v2 v3 的仿真器实际它不需要更新 这是 v1 v2 v3 最好的一个点 第二个 v1 v2 v3 还有一个好处就是 v2 v3 啊就不讲 v1 它不能支持 CCS6就不说它了 那我们 xds100 仿真器便宜 这是最大的特点 这东西经常有客户说这个 比如说他使一个很小的器件28035 335 xds 一般仿真器你去淘宝上买 一两百人民币吧我不知道具体多少 反正挺便宜的 那你就算去 TI 你想去来个高大上的 到 TI 商店买一个 Black Hawk 的 或者说什么 Spectrum Digital xd100 也没多少钱 60多美元 这对于大家来说负担就小多了 你要不上个510 560 你也搞的很头疼 TI 也不想这样 但是怎么说历史原因 以前510 560 所以 TI 就出了一款仿真器 因为大家又会纠结说这个510 560 我就是用28377 对不对 那这个用 xds100 烧 flash 太慢了 真的是太慢了 我们试过560烧的速度 就一样是比如说1M 的512的 flash 两个速度差10倍 就是说你用那个510 560一下30s一分钟刷完 用 xds100 刷 flash 要刷好几分钟 可能喝杯茶回来也刷不了 这个不可接受 所以大家又纠结了 说这么好的东西速度不能快一点吗 所以这时候 TI 就出了一个叫 xds200 的仿真器 它是介于510 560和 xds100之间的 xds200也不是 TI 产的 也是由各种各样的厂商产的 那我们就以 Spectrum Digital 去为例 那 Spectrum Digital xds200是 两三百美元吧可能是 那比510 560比它自己 510 560还是便宜多了 但是它的速度是跟510 560是一样的 会比 xds100 烧写速度快10倍 所以这就是我刚才讲的 关于 IDE 和仿真器的这个 大家这方面没有什么疑问 我相信这个应该是 大家对于我们新的这个比如 CCS6 和我们用的这些仿真器有什么疑问吗 这个没有疑问是吧 没有疑问那我们今天的这部分 对 trace 我跟大家澄清一下 trace 只有当器件支持的时候 你这颗 CPU 支持的时候它才有 trace 的功能 很不幸我们 C2000 根本就没有 trace 这部分 所以你买560 trace 也没用 它 trace不了 我想问一下有4个 DSP 然后用那个 CCS6 烧的话 就是相当于4个 CPU 都要同时烧吗 我们说4核是一两个叫协处理器 它自己不需要程序 它只是那两个28 烧两套程序 就是以往就是双 DSP 然后每一个 DSP 有两个 对 那你就烧4遍 那它 CCS6 支持那种像编一个脚本的话 也可以就是烧写的那种 我们自己的没有 你 CCS6 搞不定 但是会有那个第三方做的量产平衡器 它是可以支持这个调用包括 API 你可以去自己调用 它有调用的接口 你可以自己写一个程序去调用干一些事情 包括它那上边都可以 比如说一烧多 一烧二 一烧三 一烧几都能实现 就像一个板子上一个菊花链上就是 它不用菊花链它就直接出来8个 JTAG 口 那我一个 JTAG 口的话就是挂两个 DSP 那种 你是要问一下它那菊花链能不能去支持调用 你可以具体问一下 因为我们没有量产平衡器 国内有 说到这就说那个量产平衡器 捎带提一句 TI 本身我们 CCS C2000我们没有做量产平衡器 那产量烧写怎么办 一个就是以前的叫什么 我们有个叫 C2Pro 对吧 第三方叫 code 它有一个串口的烧写工具 那你可以如果你留了串口你可以用串口烧写工具 它是免费的 你可以利用它那个东西去烧 但是这个东西缺点就是 它要跳一下 GPIO 要把 GPIO 跳到串口的不同模式 还有如果你非要用 JTAG 烧 那就是两个方案 一个是国外的 有一家叫什么 DP Electronics 它是产的一个叫 C2000 的烧写器 它就是那种一拖八 一个上面 而且它那个可以脱离电脑 把你的image直接落到它那个烧写器里头 这东西在 TI 的 store 上有卖的 大概是我忘了几百美元吧 也不算太贵 两三百美元 你可以用这个东西 那这个东西好处就是说 它做了一拖多而且小巧又便宜 那不好的地就是它的厂商在国外 你不管是硬件还是软件有什么问题的话 可能咨询起来不那么方便 那实际我们在我们国内还有一家供应商 然后那个它叫昂科 它自己也产 C2000编程器 它的好处就是它是国内厂商 你有什么事可以找他 但是它据说啊据我们其它客户说 它的量产烧写器可能稍微贵那么一点点 大家可以去咨询一下 所以这个就是两方面 一个事国内厂商一个是国外厂商 看你怎么衡量了你都试一试 而且实际有大部分客户他不需要这玩意 大部分客户实际就是不想用 CCS 说产线上的人不会用 CCS 你给我 我们实际 TI 有一个叫 uion flash 的工具 这东西不需要 CCS 它直接可以烧把 .out 拿出来 然后打开 flash 配置好以后弄个仿真器直接就烧 这个产线上也可以用 所以看大家怎么想了
确实现在这个 EtherCAT 东西 越来越流行尤其是在我们这边在中国 那我们首先我们 C2000 现在主要的这个 目标客户就是这边 电机包括比如伺服做一些工业控制 他们都会有 EtherCAT 需求 但是我们 TI 实际在 EtherCAT 这边 我们自己 C2000 目前是 没有办法直接去处理 EtherCAT slave 节点 那 master 就更别说了我们也搞不定 但是我们现在是有这么几个几种处理的方式 一种就是我们的 AM335x 它既可以做 EtherCAT slave 也可以搞定做 master 所以那你可以把 EtherCAT 这个 任务都交给 AM335x 然后我们和 AM335x之间 比如说通过高速的 SPI 或者是通过一些其它的这个总线去通讯 这是一个方案 另一个方案就是由外边的这种 EtherCAT slave 的控制器 我们去跟它去通讯 但是这个就带来一个问题就是说 那这个东西和用 AM335x 去实现有什么区别呢 大家可能会问啊 这不就重复了 既然用 AM335x 为什么要做这个 那首先 AM335x 它自己是一颗 Cortex A8 的处理器 那它要外扩 flash要外扩 DDR 去做这些事情 它一定不可能是像我们这种单芯片 或者怎么样去做 那还有就是说我们的连一个外接的控制器 不管是 ET1100还是其它的控制器 连这个东西的话 那最主要的一个区别就是 EtherCAT 协议栈跑在哪一边 如果我们接这种 ET1100 那我们 C2000上面是要跑一个 EtherCAT 协议栈的 如果用 AM335x EtherCAT 协议栈可以直接跑在 AM335x 的 A8 核上 那它跟你之间的通讯可以自己去定义 所以 C2000 上面不用跑 EtherCAT 协议栈 这就是最最最主要的区别 这个是我们现在已有的参考设计 我们在这个现在做一个 TI design 用我们的这个2837x 和 ET1100 用它俩去连 连完以后 这个 TI design 现在做到哪一步 就是现在我们提供了 我们和 ET1100 之间的硬件连接 我们和 ET1100连接是通过两种方式 应该是主要看 ET1100 因为它本身就有两种方式 一种是并行总线 另外一种是 SPI 我们也做了相应的这个 我们的 SPI 是直接那个 SPI 没有什么问题我们叫并行总线 我们是用因为我们2837x是有两条并行总线的 我们有一个32位总线 那我们可以用我们16位总线去连 ET1100 这是我们现在能给大家 就是我们 TI design 里面现在就有硬件连接 除了硬件连接还有什么 那我们除了硬件连接的原理图 我们还有一个底层的驱动 就是怎么去跟 ET1100 SPI 通讯 包括或者说并行总线通讯 把这一部分驱动的总线的驱动我们写好了 那 EtherCAT 协议栈 我们现在没有提供给大家 因为这东西不是 TI 可以提供的 因为你必须是 ETG 的会员 你才可以用 EtherCAT 的协议栈 所以我们现在就是说如果 现在有的东西就是硬件连接底层驱动 EtherCAT 协议栈需要你自己去 EtherCAT 成为 ETG 成员以后再去拿 然后自己做一个移植 将来我们计划是说我们会 给大家在移植方面做一些指导 就比如说因为我们肯定我们的产品线 他们首先会去移植测试这个协议栈 然后对于移植方面可以做指导 但是它还是不能直接把协议栈提供给大家 在我们 L335x 那边他们会出一颗单独的料号 这一颗它会把 EtherCAT 烧在里面 作为一个 SOC 的方式 提供给大家 但是它还是需要你去外扩一些东西 所以这个看大家怎么平衡和取舍 这个实际有一个没画 就是实际我们在规划下一代 C2000芯片的时候 我们是有计划做一颗芯片 然后把 ET1100 直接封在我们芯片里面 这样大家就不需要专门去搞一个外边的 不管是 SPI 还是并行总线去连接它 这样我们可以直接从我们内部的数据总线上 去访问 ET1100 大家有没有这个需求啊 就是在座的有哪些是用到过 EtherCAT 或者说想要用 EtherCAT 有吗 如果没有 那实际这方面可能大家就不太感兴趣 没关系 那我们后面就可以说快一点 然后大家有什么其它什么感兴趣的 可以跟我们一块讨论一下 在座的真的是没有用 EtherCAT 是吧 或者说有这个需求 后面有是吧 你那边用了是吧 那你现在用的什么方案呢 之前没有用过 现在主要是想直接上 EtherCAT 这个总线 那你现在是用哪一颗我们 C2000 的器件 现在用的 TI 那个57 AM57 570是吗 5728 Sitara 那条线 5728 你用 Sitara Sitara 那边就好办了 Sitara 那边不管是从还是主它都能搞定 只不过主的那个协议栈它是要第三方合作的 从的那个应该可以直接放出来 而且不要授权费这些都不要 这个就好办了 但对我们 C2000来说 有些客户他不喜欢用 他没有 processor 的开发经验的话 那他退而求其次 他就会选一颗 ET1100来实现我们控制 首先说 EtherCAT 不是 TI 的 EtherCAT 是 BECKHOFF 的 BECKHOFF 制定的这么一个标准 包括它这里边的授权都是 BECKHOFF 授权出来的 所以他们还成立了一个 ETG 就是说你所有关于 EtherCAT 的东西 只有成为 ETG 成员 才可以去拿到相应的协议栈 其它的一些资料 那怎么成为 ETG 的会员 因为我确实也不是 ETG 的成员 但是我也跟客户了解了一下 就是说你可以去申请 它各地有代表处你可以去申请 成为 ETG 的成员 可以列一个表格好像也不收费 然后只是注册一下 然后你就可以成为 ETG 的会员了 这 EtherCAT 除了大家说 就如果你们要都没使过的话 肯定会说 EtherCAT 到底是个什么东西 为什么说这些做这种 比如说实时控制工业控制人都喜欢使用这个东西 那 EtherCAT 就现场总线 实时现场总线实际最重要的一个参数就是实时 就是这是最重要的 而且也是它最关注的东西 然后 那 EtherCAT 可以做到什么 EtherCAT 可以做到它对这个 它的响应的就是指令的延迟 比如我从发到那边对方收到 我的底下的 slave 的节点 收到我这个数据 中间的这个延迟可以做到小于100us 就包括线路上的延迟和逻辑上控制器的延迟 可以做到小于100us 这就是它最大最大的特点 就是快 100 微妙级的这种数据通讯 二是它和现在的这个 它可以用现在有的这种 比如说标准的网口啊这种回线啊 它都可以沿用现在的东西 那一个是快另外一个是兼容性比较好 包括它这个主栈 就是说你找一台 PC有网口的 PC 你也可以实现这个主栈 所以兼容性和速度方面 EtherCAT 是存在一个最大的优势 所以这个在工业控制这边 当然还有其它的 其它的实际也有各有优缺点 但是在我们这边实际的情况就是 在中国这片土地实际情况就是大家 实际会看别人用什么我也用什么 或者哪个比较用的人多 大家实际会统一在一个标准下 就现在的趋势上来看 实际是 EtherCAT 用的人越来越多 包括有一些做这种数控系统的 他们有一个 IO 板包括这个 每一个 IO 节点一个小的控制单元 它全是还是 EtherCAT 联系的 这个是说 EtherCAT 整个结构 首先 EtherCAT 它是分 主节点和 master slave 这个节点的 我刚才说了做主的搞 IPC 就可以做 像其它的我们一些处理器 比如说 Cortex A8 这种处理器也可以做 但是它主节点的要求 实际可以完全兼容现在的 Ethernet 但是它这个从节点是特殊的结构 因为它上面这个 它的从节点的数据实际是 类似于这种菊花链形式的 它的数据是串行的 一个节点串串串它要 bypass 往后走的 所以它就从节点上都会有 大家可以看往后看 你看我们的有什么它从节点都长这样 上面最典型就两网口 所以它就菊花链的 它数据就一串串串过去的 这个就是我们刚才说的 我们 TI 参考设计的 ET1100 的板子 这个板子可以放在插在我们下面控制板上 插在我们现在那个控制板上 刚才说实际上我们这个 跑我们 C2000 可以直接跑在 EtherCAT 协议栈 然后实现 EtherCAT 的通讯 实际我们之前 上一节我们也讲过 我们有一个开发板叫 IDDK 就是 IDDK 上面 我们实际是有三个插槽 我不知道大家注意过没有 如果大家见过我们 IDDK 开发板 我看后面有没有图啊 IDDK 上我们实际是有3个插槽的 就是说我们 IDDK 上就是说一套电机控制的硬件 然后上面可以插3个处理器 这3个处理器插槽 一个是 C200088377D 它就是专门实现电机控制的 还有一个是我们Hercules 他可以插一个Hercules的器件 然后可以通过Hercules来实现功能性安全的功能 那第三个插槽实际插的就是我们 Sitara 的 AM335x 通过 AM335x 它能实现 EtherCAT 我们的那个同事就是 DO 的同事 他们实际做了一个完整的 demo 就是包括 EtherCAT 通讯 然后通过 EtherCAT 传指令到下面 然后我们的 C2000 控制电机做出各种指令 然后通过我们Hercules的器件 来去监测保证整个系统的稳定性安全 这是我们的 demo 就是通过 IDDK 去实现的 这就是我们刚才说的 它那个数据都是串进来串行串着走的 所以它整个网络长的是这样的 这就决定它那个从节点一定是特殊的 MAC 层 不是我们普通的 Ethernet MAC 层 这个是我们和那个 和 ET1100 之间的连接 这个是还是通过并行总线的方式去连接的 我们用的是 EMIF2 因为我们 C2000这个器件 就是2837x 这个器件 实际是双 EMIF 的 双 EMIF 就是我们可以有两条总线扩出来 1个16位的总线 像我们这个 EMIF2 另外还有一个32位的总线 32位的总线你可以去扩 比如说 FPGA 啊 无论其它的什么存储器件去扩 然后通过16位的总线可以扩什么 比如说扩这个 EMIF 扩这个 EtherCAT 那还可以扩什么 比如说扩一些其它的这个控制器 比如说外置的 ADC 这是我们基础设备设备的一个特点 双总线 目前我不知道其它家有没有 应该在 MCU 里头我们是 可能是唯一一家有双总线的 还有其它家有吗 谁家的不算处理器啊 像什么处理器当然不算了 我们就说在 MCU 里面 就 flash RAM 内置的这种微控制器里边 我们应该是这方面保持领先的 刚才说了 ET1100 还可以通过 SPI 通信 这些都没有关系 我们之前说了我们现在能够 给大家的参考设计就是通过我们这个控制板 那我们实际还做了一个参考设计 是基于我们的 launchpad 用这两个我们就可以很方便的去测试 EtherCAT 整个网络 那我们下面会这个 给大家说如果你要是想去评估一下 用现在给你的这个方案怎么评估 首先你需要我们这个硬件 就是说我们从栈这边你需要这个 叫 Launch pad 或者我们那个 Control Card 刚才展示的那两个 主栈这边你实际去需要做这个软件 这个是在 ETG 网站上可以下载到 然后把这个东西装在你的 PC 上 任何一台电脑都可以当 EtherCAT 的主栈 只要装了这个软件就可以了 然后把我们这个 EtherCAT 这个 我们做好的一个 slave image 烧进去 就是说我们给大家 提供了一个可以供大家评估的 slave image 而不是原码 因为说了刚才那个协议栈我们不能提供 但我们可以给你提供一个编译好的 来让你测试一下 然后通过我的 PC 去连我的 Launch pad 通过这根网线 然后就可以去在上面去做测试了 因为大家可能大部分也都不用这些 所以可能真的是越听越困 所以那我们就 我不知道大家对其它有什么感兴趣的 我们可以去跟大家讨论一下我们其它的 包括这个如果你们有感兴趣的也可以 就这个是它里边的一些测试程序 关于今天我们这部分 EtherCAT 这部分 大家有什么感兴趣的吗 或者说其它的跟 EtherCAT 无关的 因为我刚才看了一下 满场就只有最后一位朋友是事实用过这个 剩下大家都对这个无需求 你讲 EtherCAT 传输容量是 CAN 总线多少倍 这个我还是真不清楚 你可以我回头我看一下 你是说它的速率是吗 它肯定比 CAN 要快 对 要不然大家也不会用这个 直接用 CAN 就好了 实际也不光是容量的问题 实际你跟 CAN 去比 CAN 很难做到对某个节点做到响应想到哪指哪 因为 CAN 是无主的系统 它实际最大特点还是它延时响应 就什么人会用它以前那个 比如说做那种大型机床的人 它这个机床什么时候该怎么动 怎么往哪个路径上刀头要走到哪个路线 它完全可以通过这个东西 去把它的指令发到下面各种伺服 然后伺服去响应然后就能满足它的精度 我们以前传统的形式 实际是很难做到这种低延迟的 这个对延迟要求是很高的 而且它数据 它一个数据包是可以最少 一个节点可以只加1bit 的数据上去 它那个数据包特别灵活从1bit 到那个 刚才有个数据来着是多少 你可以加一个位进去 所以它那个 最少是8个 所以主要是延时 CAN 是没有办法控制延时的 其它还有大家对这方面还有什么感兴趣的 或者对其它我们 C2000 的器件有什么感兴趣的 没有的话我们这部分可能就这样了 因为有很多细节的东西大家都没有积极了 听着都晕了 是这样的那我们现在因为 大家可能对这一方面不太感兴趣的话 就是说 EtherCAT 这部分 那我们还回来说对我们的 C2000器件 包括我们其它 那我在座我想问一下大家 在座的比如说电源相关的有多少 能帮忙举一下手吗 那电机相关的呢 那剩下的朋友都是什么应用的 是这样我们讲一下我们 因为我们实际平时遇到最多的问题 就是我们 C2000的开发工具的问题 因为很多很多人问我工具的问题 就包括我们的 IDE CCS 包括我们的仿真器 那这些东西跟应用无关嘛 所以我想跟大家抽这个时间 正好我们 EtherCAT 可能对大家意义不大 那我们就聊一下软硬件的开发工具 比如说这个 首先我们软件这个 就讲一下我们软件啊就是说 TI 的 C2000是只能在 CCS 上开发的 这个东西没有别的办法 只有 CCS 那 CCS 我们也大家以前用过的知道 从3.3到后面的4 5 现在已经到6了 马上年底我们还会出 CCS 7 这个 CCS 日新月异 但是我们实际 有很多我们现在的用户还是停留在3上 而且现在由于这个操作系统升级 很多人很困惑 说我们3在 windows7 以下能不能用 包括64位的 win7 以下能不能用 那首先我声明 TI 自己的官方声明是 我们 CCS3.3 是不支持 win7的 包括64位 win7 但它说的不支持不是指的不能用 它说的不支持是说 我们不能保证它能用 这个意思是这样 但实际我们也有客户 在他的 win7 以下去装 CCS3.3也能装成功 包括他的那个用比如说 xds100 的仿真器 包括510 560 的仿真器 在这底下也能用成 所以这个东西首先告诉大家 如果你用3.3 实际我们建议你最好是能换的话是换一换 因为 CCS6 一方面它对各种操作系统 它是 Java 嘛 Eclipse 它是从 Java 来的 所以它对各种操作系统的支持会好一些 你也不用纠结于3.3到底将来 这个能用那个不能用 但是有一点说明就是 CCS6 不支持2407 2406 所有的24的器件它都不支持 如果你有24的器件你还是留个 CCS3.3吧 这个没办法 我们新的 CCS6 不支持这些 当然话又说回来了 那个你 CCS3.3 支持不支持我们新的这些 37x 啊这些肯定是不支持的 CCS6 是可以支持我们 现在今天主要讲的这些28 37x 07x 我们新一代的 C2000的设备 其它的5必须要打补丁 那与其那样不如直接搞个6呢 打那个补丁麻烦 第二就是说 我们实际那就统一到一个平台上说 如果你有2407的项目 你留一个 CCS3.3 如果没有 那我们建议你能升6就都升到6吧 然后对于新器件的支持也好一些 而且我们 CCS6 有一个好处就是 我们所有 TI 的 MCU 包括我们的无线产品它都能支持 就包括 Sitara 包括我们的多核 DSP 所以你可以在 CCS6以下 把 TI 所有的处理器平趟 你不用再去来回就换 IDE 换处理器 因为以前很多人是这样的他的430 比如说他用 IAR 对吧或者用 Keil 用这些东西去做430 比如说他用那个 Keil 去编我们的 M4 我们有一个 M4 或者用 IAR 去编 那他又用 IAR 去编 然后 C2000 他又用 CCS 现在不用这么麻烦了 如果你能把它统一到 CCS6上面来说 我们的430 Hercules 我们的 Cortex M4 我们的这些无线什么的 CC这些系列 我们都能搞定 除了有一颗 CC 搞不定 就是CC 的以前的那一代25 CC25 几几 那个里头是一颗51核 我们 CCS 里头没有51的编译器 所以除了51核的我们都能搞定 所以换成 CCS6 还是值得的 换了以后你比如说你底下的 其它的 TI 平台你都没有问题了 那 CCS6 的事情我们就说到这 就是说我们 CCS6 CCS6 讲完就涉及到一个 license 的问题 经常大家会问 CCS6 license 是怎么办 有没有 license 实际是这样的 CCS6 对于我们 xds100 的仿真器 是无需要 license 的 就是说你安装的时候它有一个选项叫 xds100 free license 如果你安装的时候申请的是这个 license 你去用邮件注册一下 它就返回来一个注册码 然后这个就不要钱 那局限就是说它只能用在 xds100仿真器上 那 xds100 仿真器跟我们510 560有什么区别呢 如果你不用这个设备 就我们37x 07x 你用的是035包括以前的2808335这些 这些东西没有区别 xds100 仿真器 那个烧这些 flash 的速度是完全一致的 没有区别 完全没有区别 那什么是有区别的 有区别的就是说 我们新一代 device 因为它用了新的 flash 的工艺 所以你用 xds100 仿真器烧这个 flash 的时候 会慢一些 但烧 RAM 一点都不慢 所以你初期开发的时候 你就可以用 CCS xds100仿真器 说到这个 xds100仿真器 那大家就捎带说说 那就从 CCS 的话题转到我们仿真器的话题上 那我们 TI 是这样的 TI 首先 TI 自己不生产仿真器 所有市面上卖的仿真器没有一个是 TI 的 现在 最早的时候 TI 做过仿真器 但好多年都不做了 那 TI 网站上的仿真器 都是 Spectrum Digital 或者 Blackhawk 所以这个 那 Spectrum Digital 或者 Blackhawk 包括比如说在国内这个 瑞泰 和众达 对吧 这些以前卖仿真器的这些 它跟 TI 是什么关系 TI 只是把授权给它 那它自己去做一个仿真器 那是它的产品 它对这个品质负责 包括这些仿真器在那个 比如说 510 和 560 它在这个操作系统底下 它不是 USB 的吗 那个 USB 驱动都是他们自己写的 所以这就会有时候发生这个说 同样是510 比如说我 Spectrum Digital 或者 Blackhawk 510 就能支持最新的 CCS6 有可能某些厂商的510它就支持不了 CCS6 这个东西不是 TI 的原因 是它没有自己更新它在 CCS6 底下的支持的驱动 所以这个请大家去咨询自己买的仿真器的供应商 你问他这东西能不能支持 CCS6 对不对 然后如果不能的话 或者说可以升个级啊 或者它连升级都升不了就必须买新的 那是两码事了 所以说我首先说这个东西就是 xds100 跟510 560 的区别 那 xds100 本身有3个版本 xds100 有 v1 v2 v3 这个东西有什么区别啊 大家又疑惑了 首先这个 v1 是可以支持 CCS3.3的 3.3的最后的3.3什么38几几是可以支持 v1 的 v2 v3 在3.3上用不了 那 v1 是不支持6的 反过来说 所以那我们既然刚才已经讨论了半天 反正就是说建议大家把 CCS 升级到6 那好把你的 xds100 仿真器 最好来个 v2 v3 的对不对 然后这样就搞定了 而且 xds100 仿真器在 v2 v3 上面 实际跑的很好啊 为什么 因为 xds100 仿真器刚才说了 它的弱点就是稍微慢一点 慢一点是因为它的 USB 驱动 它用的是通用类 就是它不是自己写的 USB 它用的是一个通用类以后 TI 去通过这个 通过我们 CCS 里头 直接调用它操作的 它是一个透传的东西 所以它对新器件的支持就会好一些 就是不管 TI 出了什么新器件 只要你把 CCS 一更新 然后 v1 v2 v3 的仿真器实际它不需要更新 这是 v1 v2 v3 最好的一个点 第二个 v1 v2 v3 还有一个好处就是 v2 v3 啊就不讲 v1 它不能支持 CCS6就不说它了 那我们 xds100 仿真器便宜 这是最大的特点 这东西经常有客户说这个 比如说他使一个很小的器件28035 335 xds 一般仿真器你去淘宝上买 一两百人民币吧我不知道具体多少 反正挺便宜的 那你就算去 TI 你想去来个高大上的 到 TI 商店买一个 Black Hawk 的 或者说什么 Spectrum Digital xd100 也没多少钱 60多美元 这对于大家来说负担就小多了 你要不上个510 560 你也搞的很头疼 TI 也不想这样 但是怎么说历史原因 以前510 560 所以 TI 就出了一款仿真器 因为大家又会纠结说这个510 560 我就是用28377 对不对 那这个用 xds100 烧 flash 太慢了 真的是太慢了 我们试过560烧的速度 就一样是比如说1M 的512的 flash 两个速度差10倍 就是说你用那个510 560一下30s一分钟刷完 用 xds100 刷 flash 要刷好几分钟 可能喝杯茶回来也刷不了 这个不可接受 所以大家又纠结了 说这么好的东西速度不能快一点吗 所以这时候 TI 就出了一个叫 xds200 的仿真器 它是介于510 560和 xds100之间的 xds200也不是 TI 产的 也是由各种各样的厂商产的 那我们就以 Spectrum Digital 去为例 那 Spectrum Digital xds200是 两三百美元吧可能是 那比510 560比它自己 510 560还是便宜多了 但是它的速度是跟510 560是一样的 会比 xds100 烧写速度快10倍 所以这就是我刚才讲的 关于 IDE 和仿真器的这个 大家这方面没有什么疑问 我相信这个应该是 大家对于我们新的这个比如 CCS6 和我们用的这些仿真器有什么疑问吗 这个没有疑问是吧 没有疑问那我们今天的这部分 对 trace 我跟大家澄清一下 trace 只有当器件支持的时候 你这颗 CPU 支持的时候它才有 trace 的功能 很不幸我们 C2000 根本就没有 trace 这部分 所以你买560 trace 也没用 它 trace不了 我想问一下有4个 DSP 然后用那个 CCS6 烧的话 就是相当于4个 CPU 都要同时烧吗 我们说4核是一两个叫协处理器 它自己不需要程序 它只是那两个28 烧两套程序 就是以往就是双 DSP 然后每一个 DSP 有两个 对 那你就烧4遍 那它 CCS6 支持那种像编一个脚本的话 也可以就是烧写的那种 我们自己的没有 你 CCS6 搞不定 但是会有那个第三方做的量产平衡器 它是可以支持这个调用包括 API 你可以去自己调用 它有调用的接口 你可以自己写一个程序去调用干一些事情 包括它那上边都可以 比如说一烧多 一烧二 一烧三 一烧几都能实现 就像一个板子上一个菊花链上就是 它不用菊花链它就直接出来8个 JTAG 口 那我一个 JTAG 口的话就是挂两个 DSP 那种 你是要问一下它那菊花链能不能去支持调用 你可以具体问一下 因为我们没有量产平衡器 国内有 说到这就说那个量产平衡器 捎带提一句 TI 本身我们 CCS C2000我们没有做量产平衡器 那产量烧写怎么办 一个就是以前的叫什么 我们有个叫 C2Pro 对吧 第三方叫 code 它有一个串口的烧写工具 那你可以如果你留了串口你可以用串口烧写工具 它是免费的 你可以利用它那个东西去烧 但是这个东西缺点就是 它要跳一下 GPIO 要把 GPIO 跳到串口的不同模式 还有如果你非要用 JTAG 烧 那就是两个方案 一个是国外的 有一家叫什么 DP Electronics 它是产的一个叫 C2000 的烧写器 它就是那种一拖八 一个上面 而且它那个可以脱离电脑 把你的image直接落到它那个烧写器里头 这东西在 TI 的 store 上有卖的 大概是我忘了几百美元吧 也不算太贵 两三百美元 你可以用这个东西 那这个东西好处就是说 它做了一拖多而且小巧又便宜 那不好的地就是它的厂商在国外 你不管是硬件还是软件有什么问题的话 可能咨询起来不那么方便 那实际我们在我们国内还有一家供应商 然后那个它叫昂科 它自己也产 C2000编程器 它的好处就是它是国内厂商 你有什么事可以找他 但是它据说啊据我们其它客户说 它的量产烧写器可能稍微贵那么一点点 大家可以去咨询一下 所以这个就是两方面 一个事国内厂商一个是国外厂商 看你怎么衡量了你都试一试 而且实际有大部分客户他不需要这玩意 大部分客户实际就是不想用 CCS 说产线上的人不会用 CCS 你给我 我们实际 TI 有一个叫 uion flash 的工具 这东西不需要 CCS 它直接可以烧把 .out 拿出来 然后打开 flash 配置好以后弄个仿真器直接就烧 这个产线上也可以用 所以看大家怎么想了
确实现在这个 EtherCAT 东西
越来越流行尤其是在我们这边在中国
那我们首先我们 C2000 现在主要的这个
目标客户就是这边
电机包括比如伺服做一些工业控制
他们都会有 EtherCAT 需求
但是我们 TI 实际在 EtherCAT 这边
我们自己 C2000 目前是
没有办法直接去处理 EtherCAT slave 节点
那 master 就更别说了我们也搞不定
但是我们现在是有这么几个几种处理的方式
一种就是我们的 AM335x
它既可以做 EtherCAT slave
也可以搞定做 master
所以那你可以把 EtherCAT 这个
任务都交给 AM335x
然后我们和 AM335x之间
比如说通过高速的 SPI
或者是通过一些其它的这个总线去通讯
这是一个方案
另一个方案就是由外边的这种
EtherCAT slave 的控制器
我们去跟它去通讯
但是这个就带来一个问题就是说
那这个东西和用 AM335x 去实现有什么区别呢
大家可能会问啊
这不就重复了
既然用 AM335x 为什么要做这个
那首先 AM335x 它自己是一颗
Cortex A8 的处理器
那它要外扩 flash要外扩 DDR
去做这些事情
它一定不可能是像我们这种单芯片
或者怎么样去做
那还有就是说我们的连一个外接的控制器
不管是 ET1100还是其它的控制器
连这个东西的话
那最主要的一个区别就是
EtherCAT 协议栈跑在哪一边
如果我们接这种 ET1100
那我们 C2000上面是要跑一个 EtherCAT 协议栈的
如果用 AM335x
EtherCAT 协议栈可以直接跑在 AM335x 的 A8 核上
那它跟你之间的通讯可以自己去定义
所以 C2000 上面不用跑 EtherCAT 协议栈
这就是最最最主要的区别
这个是我们现在已有的参考设计
我们在这个现在做一个 TI design
用我们的这个2837x 和 ET1100
用它俩去连
连完以后
这个 TI design 现在做到哪一步
就是现在我们提供了
我们和 ET1100 之间的硬件连接
我们和 ET1100连接是通过两种方式
应该是主要看 ET1100
因为它本身就有两种方式
一种是并行总线
另外一种是 SPI
我们也做了相应的这个
我们的 SPI 是直接那个
SPI 没有什么问题我们叫并行总线
我们是用因为我们2837x是有两条并行总线的
我们有一个32位总线
那我们可以用我们16位总线去连 ET1100
这是我们现在能给大家
就是我们 TI design 里面现在就有硬件连接
除了硬件连接还有什么
那我们除了硬件连接的原理图
我们还有一个底层的驱动
就是怎么去跟 ET1100 SPI 通讯
包括或者说并行总线通讯
把这一部分驱动的总线的驱动我们写好了
那 EtherCAT 协议栈
我们现在没有提供给大家
因为这东西不是 TI 可以提供的
因为你必须是 ETG 的会员
你才可以用 EtherCAT 的协议栈
所以我们现在就是说如果
现在有的东西就是硬件连接底层驱动
EtherCAT 协议栈需要你自己去 EtherCAT
成为 ETG 成员以后再去拿
然后自己做一个移植
将来我们计划是说我们会
给大家在移植方面做一些指导
就比如说因为我们肯定我们的产品线
他们首先会去移植测试这个协议栈
然后对于移植方面可以做指导
但是它还是不能直接把协议栈提供给大家
在我们 L335x 那边他们会出一颗单独的料号
这一颗它会把 EtherCAT 烧在里面
作为一个 SOC 的方式 提供给大家
但是它还是需要你去外扩一些东西
所以这个看大家怎么平衡和取舍
这个实际有一个没画
就是实际我们在规划下一代 C2000芯片的时候
我们是有计划做一颗芯片
然后把 ET1100 直接封在我们芯片里面
这样大家就不需要专门去搞一个外边的
不管是 SPI 还是并行总线去连接它
这样我们可以直接从我们内部的数据总线上
去访问 ET1100
大家有没有这个需求啊
就是在座的有哪些是用到过 EtherCAT
或者说想要用 EtherCAT 有吗
如果没有
那实际这方面可能大家就不太感兴趣 没关系
那我们后面就可以说快一点
然后大家有什么其它什么感兴趣的
可以跟我们一块讨论一下
在座的真的是没有用 EtherCAT 是吧
或者说有这个需求
后面有是吧 你那边用了是吧
那你现在用的什么方案呢
之前没有用过
现在主要是想直接上 EtherCAT 这个总线
那你现在是用哪一颗我们 C2000 的器件
现在用的 TI 那个57 AM57
570是吗
5728
Sitara 那条线
5728 你用 Sitara
Sitara 那边就好办了
Sitara 那边不管是从还是主它都能搞定
只不过主的那个协议栈它是要第三方合作的
从的那个应该可以直接放出来
而且不要授权费这些都不要
这个就好办了
但对我们 C2000来说
有些客户他不喜欢用
他没有 processor 的开发经验的话
那他退而求其次
他就会选一颗 ET1100来实现我们控制
首先说 EtherCAT 不是 TI 的
EtherCAT 是 BECKHOFF 的
BECKHOFF 制定的这么一个标准
包括它这里边的授权都是 BECKHOFF 授权出来的
所以他们还成立了一个 ETG
就是说你所有关于 EtherCAT 的东西
只有成为 ETG 成员
才可以去拿到相应的协议栈
其它的一些资料
那怎么成为 ETG 的会员
因为我确实也不是 ETG 的成员
但是我也跟客户了解了一下
就是说你可以去申请
它各地有代表处你可以去申请
成为 ETG 的成员
可以列一个表格好像也不收费
然后只是注册一下
然后你就可以成为 ETG 的会员了
这 EtherCAT 除了大家说
就如果你们要都没使过的话
肯定会说 EtherCAT 到底是个什么东西
为什么说这些做这种
比如说实时控制工业控制人都喜欢使用这个东西
那 EtherCAT 就现场总线
实时现场总线实际最重要的一个参数就是实时
就是这是最重要的
而且也是它最关注的东西
然后
那 EtherCAT 可以做到什么
EtherCAT 可以做到它对这个
它的响应的就是指令的延迟
比如我从发到那边对方收到
我的底下的 slave 的节点
收到我这个数据
中间的这个延迟可以做到小于100us
就包括线路上的延迟和逻辑上控制器的延迟
可以做到小于100us
这就是它最大最大的特点 就是快
100 微妙级的这种数据通讯
二是它和现在的这个
它可以用现在有的这种
比如说标准的网口啊这种回线啊
它都可以沿用现在的东西
那一个是快另外一个是兼容性比较好
包括它这个主栈
就是说你找一台 PC有网口的 PC
你也可以实现这个主栈
所以兼容性和速度方面
EtherCAT 是存在一个最大的优势
所以这个在工业控制这边
当然还有其它的
其它的实际也有各有优缺点
但是在我们这边实际的情况就是
在中国这片土地实际情况就是大家
实际会看别人用什么我也用什么
或者哪个比较用的人多
大家实际会统一在一个标准下
就现在的趋势上来看
实际是 EtherCAT 用的人越来越多
包括有一些做这种数控系统的
他们有一个 IO 板包括这个
每一个 IO 节点一个小的控制单元
它全是还是 EtherCAT 联系的
这个是说 EtherCAT 整个结构
首先 EtherCAT 它是分
主节点和 master slave 这个节点的
我刚才说了做主的搞 IPC 就可以做
像其它的我们一些处理器
比如说 Cortex A8 这种处理器也可以做
但是它主节点的要求
实际可以完全兼容现在的 Ethernet
但是它这个从节点是特殊的结构
因为它上面这个
它的从节点的数据实际是
类似于这种菊花链形式的
它的数据是串行的
一个节点串串串它要 bypass 往后走的
所以它就从节点上都会有
大家可以看往后看
你看我们的有什么它从节点都长这样
上面最典型就两网口
所以它就菊花链的
它数据就一串串串过去的
这个就是我们刚才说的
我们 TI 参考设计的 ET1100 的板子
这个板子可以放在插在我们下面控制板上
插在我们现在那个控制板上
刚才说实际上我们这个
跑我们 C2000 可以直接跑在
EtherCAT 协议栈
然后实现 EtherCAT 的通讯
实际我们之前
上一节我们也讲过
我们有一个开发板叫 IDDK
就是 IDDK 上面
我们实际是有三个插槽
我不知道大家注意过没有
如果大家见过我们 IDDK 开发板
我看后面有没有图啊
IDDK 上我们实际是有3个插槽的
就是说我们
IDDK 上就是说一套电机控制的硬件
然后上面可以插3个处理器
这3个处理器插槽
一个是 C200088377D
它就是专门实现电机控制的
还有一个是我们Hercules
他可以插一个Hercules的器件
然后可以通过Hercules来实现功能性安全的功能
那第三个插槽实际插的就是我们
Sitara 的 AM335x
通过 AM335x 它能实现 EtherCAT
我们的那个同事就是 DO 的同事
他们实际做了一个完整的 demo
就是包括 EtherCAT 通讯
然后通过 EtherCAT 传指令到下面
然后我们的 C2000 控制电机做出各种指令
然后通过我们Hercules的器件
来去监测保证整个系统的稳定性安全
这是我们的 demo
就是通过 IDDK 去实现的
这就是我们刚才说的
它那个数据都是串进来串行串着走的
所以它整个网络长的是这样的
这就决定它那个从节点一定是特殊的 MAC 层
不是我们普通的 Ethernet MAC 层
这个是我们和那个
和 ET1100 之间的连接
这个是还是通过并行总线的方式去连接的
我们用的是 EMIF2
因为我们 C2000这个器件
就是2837x 这个器件
实际是双 EMIF 的
双 EMIF 就是我们可以有两条总线扩出来
1个16位的总线
像我们这个 EMIF2
另外还有一个32位的总线
32位的总线你可以去扩
比如说 FPGA 啊
无论其它的什么存储器件去扩
然后通过16位的总线可以扩什么
比如说扩这个 EMIF
扩这个 EtherCAT
那还可以扩什么
比如说扩一些其它的这个控制器
比如说外置的 ADC
这是我们基础设备设备的一个特点
双总线
目前我不知道其它家有没有
应该在 MCU 里头我们是
可能是唯一一家有双总线的
还有其它家有吗
谁家的不算处理器啊
像什么处理器当然不算了
我们就说在 MCU 里面
就 flash RAM 内置的这种微控制器里边
我们应该是这方面保持领先的
刚才说了 ET1100
还可以通过 SPI 通信
这些都没有关系
我们之前说了我们现在能够
给大家的参考设计就是通过我们这个控制板
那我们实际还做了一个参考设计
是基于我们的 launchpad
用这两个我们就可以很方便的去测试
EtherCAT 整个网络
那我们下面会这个
给大家说如果你要是想去评估一下
用现在给你的这个方案怎么评估
首先你需要我们这个硬件
就是说我们从栈这边你需要这个
叫 Launch pad 或者我们那个 Control Card
刚才展示的那两个
主栈这边你实际去需要做这个软件
这个是在 ETG 网站上可以下载到
然后把这个东西装在你的 PC 上
任何一台电脑都可以当 EtherCAT 的主栈
只要装了这个软件就可以了
然后把我们这个 EtherCAT 这个
我们做好的一个 slave image 烧进去
就是说我们给大家
提供了一个可以供大家评估的 slave image
而不是原码
因为说了刚才那个协议栈我们不能提供
但我们可以给你提供一个编译好的
来让你测试一下
然后通过我的 PC 去连我的 Launch pad
通过这根网线
然后就可以去在上面去做测试了
因为大家可能大部分也都不用这些
所以可能真的是越听越困
所以那我们就
我不知道大家对其它有什么感兴趣的
我们可以去跟大家讨论一下我们其它的
包括这个如果你们有感兴趣的也可以
就这个是它里边的一些测试程序
关于今天我们这部分 EtherCAT 这部分
大家有什么感兴趣的吗
或者说其它的跟 EtherCAT 无关的
因为我刚才看了一下
满场就只有最后一位朋友是事实用过这个
剩下大家都对这个无需求
你讲
EtherCAT 传输容量是 CAN 总线多少倍
这个我还是真不清楚
你可以我回头我看一下
你是说它的速率是吗
它肯定比 CAN 要快
对 要不然大家也不会用这个
直接用 CAN 就好了
实际也不光是容量的问题
实际你跟 CAN 去比
CAN 很难做到对某个节点做到响应想到哪指哪
因为 CAN 是无主的系统
它实际最大特点还是它延时响应
就什么人会用它以前那个
比如说做那种大型机床的人
它这个机床什么时候该怎么动
怎么往哪个路径上刀头要走到哪个路线
它完全可以通过这个东西
去把它的指令发到下面各种伺服
然后伺服去响应然后就能满足它的精度
我们以前传统的形式
实际是很难做到这种低延迟的
这个对延迟要求是很高的
而且它数据
它一个数据包是可以最少
一个节点可以只加1bit 的数据上去
它那个数据包特别灵活从1bit 到那个
刚才有个数据来着是多少
你可以加一个位进去
所以它那个
最少是8个
所以主要是延时
CAN 是没有办法控制延时的
其它还有大家对这方面还有什么感兴趣的
或者对其它我们 C2000 的器件有什么感兴趣的
没有的话我们这部分可能就这样了
因为有很多细节的东西大家都没有积极了
听着都晕了
是这样的那我们现在因为
大家可能对这一方面不太感兴趣的话
就是说 EtherCAT 这部分
那我们还回来说对我们的 C2000器件
包括我们其它
那我在座我想问一下大家
在座的比如说电源相关的有多少
能帮忙举一下手吗
那电机相关的呢
那剩下的朋友都是什么应用的
是这样我们讲一下我们
因为我们实际平时遇到最多的问题
就是我们 C2000的开发工具的问题
因为很多很多人问我工具的问题
就包括我们的 IDE CCS
包括我们的仿真器
那这些东西跟应用无关嘛
所以我想跟大家抽这个时间
正好我们 EtherCAT 可能对大家意义不大
那我们就聊一下软硬件的开发工具
比如说这个
首先我们软件这个
就讲一下我们软件啊就是说
TI 的 C2000是只能在 CCS 上开发的
这个东西没有别的办法
只有 CCS
那 CCS 我们也大家以前用过的知道
从3.3到后面的4 5 现在已经到6了
马上年底我们还会出 CCS 7
这个 CCS 日新月异
但是我们实际
有很多我们现在的用户还是停留在3上
而且现在由于这个操作系统升级
很多人很困惑
说我们3在 windows7 以下能不能用
包括64位的 win7 以下能不能用
那首先我声明 TI 自己的官方声明是
我们 CCS3.3 是不支持 win7的
包括64位 win7
但它说的不支持不是指的不能用
它说的不支持是说
我们不能保证它能用
这个意思是这样
但实际我们也有客户
在他的 win7 以下去装 CCS3.3也能装成功
包括他的那个用比如说 xds100 的仿真器
包括510 560 的仿真器
在这底下也能用成
所以这个东西首先告诉大家
如果你用3.3
实际我们建议你最好是能换的话是换一换
因为 CCS6 一方面它对各种操作系统
它是 Java 嘛
Eclipse 它是从 Java 来的
所以它对各种操作系统的支持会好一些
你也不用纠结于3.3到底将来
这个能用那个不能用
但是有一点说明就是 CCS6 不支持2407
2406 所有的24的器件它都不支持
如果你有24的器件你还是留个 CCS3.3吧
这个没办法
我们新的 CCS6 不支持这些
当然话又说回来了
那个你 CCS3.3 支持不支持我们新的这些
37x 啊这些肯定是不支持的
CCS6 是可以支持我们
现在今天主要讲的这些28 37x 07x
我们新一代的 C2000的设备
其它的5必须要打补丁
那与其那样不如直接搞个6呢
打那个补丁麻烦
第二就是说
我们实际那就统一到一个平台上说
如果你有2407的项目
你留一个 CCS3.3
如果没有
那我们建议你能升6就都升到6吧
然后对于新器件的支持也好一些
而且我们 CCS6 有一个好处就是
我们所有 TI 的 MCU
包括我们的无线产品它都能支持
就包括 Sitara 包括我们的多核 DSP
所以你可以在 CCS6以下
把 TI 所有的处理器平趟
你不用再去来回就换 IDE 换处理器
因为以前很多人是这样的他的430
比如说他用 IAR 对吧或者用 Keil
用这些东西去做430
比如说他用那个 Keil
去编我们的 M4
我们有一个 M4
或者用 IAR 去编
那他又用 IAR 去编
然后 C2000 他又用 CCS
现在不用这么麻烦了
如果你能把它统一到 CCS6上面来说
我们的430 Hercules
我们的 Cortex M4
我们的这些无线什么的 CC这些系列
我们都能搞定
除了有一颗 CC 搞不定
就是CC 的以前的那一代25
CC25 几几
那个里头是一颗51核
我们 CCS 里头没有51的编译器
所以除了51核的我们都能搞定
所以换成 CCS6 还是值得的
换了以后你比如说你底下的
其它的 TI 平台你都没有问题了
那 CCS6 的事情我们就说到这
就是说我们 CCS6
CCS6 讲完就涉及到一个 license 的问题
经常大家会问 CCS6 license 是怎么办
有没有 license
实际是这样的
CCS6 对于我们 xds100 的仿真器
是无需要 license 的
就是说你安装的时候它有一个选项叫
xds100 free license
如果你安装的时候申请的是这个 license
你去用邮件注册一下
它就返回来一个注册码
然后这个就不要钱
那局限就是说它只能用在 xds100仿真器上
那 xds100 仿真器跟我们510 560有什么区别呢
如果你不用这个设备
就我们37x 07x
你用的是035包括以前的2808335这些
这些东西没有区别
xds100 仿真器
那个烧这些 flash 的速度是完全一致的
没有区别 完全没有区别
那什么是有区别的
有区别的就是说
我们新一代 device
因为它用了新的 flash 的工艺
所以你用 xds100 仿真器烧这个 flash 的时候
会慢一些
但烧 RAM 一点都不慢
所以你初期开发的时候
你就可以用 CCS xds100仿真器
说到这个 xds100仿真器
那大家就捎带说说
那就从 CCS 的话题转到我们仿真器的话题上
那我们 TI 是这样的
TI 首先 TI 自己不生产仿真器
所有市面上卖的仿真器没有一个是 TI 的
现在 最早的时候 TI 做过仿真器
但好多年都不做了
那 TI 网站上的仿真器
都是 Spectrum Digital 或者 Blackhawk
所以这个
那 Spectrum Digital 或者 Blackhawk
包括比如说在国内这个
瑞泰 和众达 对吧
这些以前卖仿真器的这些
它跟 TI 是什么关系
TI 只是把授权给它
那它自己去做一个仿真器
那是它的产品
它对这个品质负责
包括这些仿真器在那个
比如说 510 和 560
它在这个操作系统底下
它不是 USB 的吗
那个 USB 驱动都是他们自己写的
所以这就会有时候发生这个说
同样是510
比如说我 Spectrum Digital 或者 Blackhawk 510
就能支持最新的 CCS6
有可能某些厂商的510它就支持不了 CCS6
这个东西不是 TI 的原因
是它没有自己更新它在 CCS6 底下的支持的驱动
所以这个请大家去咨询自己买的仿真器的供应商
你问他这东西能不能支持 CCS6 对不对
然后如果不能的话
或者说可以升个级啊
或者它连升级都升不了就必须买新的
那是两码事了
所以说我首先说这个东西就是
xds100 跟510 560 的区别
那 xds100 本身有3个版本
xds100 有 v1 v2 v3
这个东西有什么区别啊
大家又疑惑了
首先这个 v1 是可以支持 CCS3.3的
3.3的最后的3.3什么38几几是可以支持 v1 的
v2 v3 在3.3上用不了
那 v1 是不支持6的
反过来说
所以那我们既然刚才已经讨论了半天
反正就是说建议大家把 CCS 升级到6
那好把你的 xds100 仿真器
最好来个 v2 v3 的对不对
然后这样就搞定了
而且 xds100 仿真器在 v2 v3 上面
实际跑的很好啊 为什么
因为 xds100 仿真器刚才说了
它的弱点就是稍微慢一点
慢一点是因为它的 USB 驱动
它用的是通用类
就是它不是自己写的 USB
它用的是一个通用类以后
TI 去通过这个
通过我们 CCS 里头
直接调用它操作的
它是一个透传的东西
所以它对新器件的支持就会好一些
就是不管 TI 出了什么新器件
只要你把 CCS 一更新
然后 v1 v2 v3 的仿真器实际它不需要更新
这是 v1 v2 v3 最好的一个点
第二个 v1 v2 v3 还有一个好处就是
v2 v3 啊就不讲 v1
它不能支持 CCS6就不说它了
那我们 xds100 仿真器便宜
这是最大的特点
这东西经常有客户说这个
比如说他使一个很小的器件28035 335
xds 一般仿真器你去淘宝上买
一两百人民币吧我不知道具体多少
反正挺便宜的
那你就算去 TI 你想去来个高大上的
到 TI 商店买一个 Black Hawk 的
或者说什么 Spectrum Digital xd100
也没多少钱 60多美元
这对于大家来说负担就小多了
你要不上个510 560 你也搞的很头疼
TI 也不想这样
但是怎么说历史原因
以前510 560
所以 TI 就出了一款仿真器
因为大家又会纠结说这个510 560
我就是用28377 对不对
那这个用 xds100 烧 flash
太慢了 真的是太慢了
我们试过560烧的速度
就一样是比如说1M 的512的 flash
两个速度差10倍
就是说你用那个510 560一下30s一分钟刷完
用 xds100 刷 flash 要刷好几分钟
可能喝杯茶回来也刷不了
这个不可接受
所以大家又纠结了
说这么好的东西速度不能快一点吗
所以这时候 TI 就出了一个叫 xds200 的仿真器
它是介于510 560和 xds100之间的
xds200也不是 TI 产的
也是由各种各样的厂商产的
那我们就以 Spectrum Digital 去为例
那 Spectrum Digital xds200是
两三百美元吧可能是
那比510 560比它自己 510 560还是便宜多了
但是它的速度是跟510 560是一样的
会比 xds100 烧写速度快10倍
所以这就是我刚才讲的
关于 IDE 和仿真器的这个
大家这方面没有什么疑问
我相信这个应该是
大家对于我们新的这个比如 CCS6
和我们用的这些仿真器有什么疑问吗
这个没有疑问是吧
没有疑问那我们今天的这部分
对 trace 我跟大家澄清一下
trace 只有当器件支持的时候
你这颗 CPU 支持的时候它才有 trace 的功能
很不幸我们 C2000 根本就没有 trace 这部分
所以你买560 trace 也没用
它 trace不了
我想问一下有4个 DSP
然后用那个 CCS6 烧的话
就是相当于4个 CPU 都要同时烧吗
我们说4核是一两个叫协处理器
它自己不需要程序
它只是那两个28 烧两套程序
就是以往就是双 DSP
然后每一个 DSP 有两个
对 那你就烧4遍
那它 CCS6 支持那种像编一个脚本的话
也可以就是烧写的那种
我们自己的没有
你 CCS6 搞不定
但是会有那个第三方做的量产平衡器
它是可以支持这个调用包括 API
你可以去自己调用
它有调用的接口
你可以自己写一个程序去调用干一些事情
包括它那上边都可以
比如说一烧多 一烧二 一烧三 一烧几都能实现
就像一个板子上一个菊花链上就是
它不用菊花链它就直接出来8个 JTAG 口
那我一个 JTAG 口的话就是挂两个 DSP 那种
你是要问一下它那菊花链能不能去支持调用
你可以具体问一下
因为我们没有量产平衡器
国内有
说到这就说那个量产平衡器
捎带提一句
TI 本身我们 CCS C2000我们没有做量产平衡器
那产量烧写怎么办
一个就是以前的叫什么
我们有个叫 C2Pro 对吧
第三方叫 code
它有一个串口的烧写工具
那你可以如果你留了串口你可以用串口烧写工具
它是免费的
你可以利用它那个东西去烧
但是这个东西缺点就是
它要跳一下 GPIO
要把 GPIO 跳到串口的不同模式
还有如果你非要用 JTAG 烧
那就是两个方案
一个是国外的
有一家叫什么 DP Electronics
它是产的一个叫 C2000 的烧写器
它就是那种一拖八
一个上面
而且它那个可以脱离电脑
把你的image直接落到它那个烧写器里头
这东西在 TI 的 store 上有卖的
大概是我忘了几百美元吧
也不算太贵 两三百美元
你可以用这个东西
那这个东西好处就是说
它做了一拖多而且小巧又便宜
那不好的地就是它的厂商在国外
你不管是硬件还是软件有什么问题的话
可能咨询起来不那么方便
那实际我们在我们国内还有一家供应商
然后那个它叫昂科
它自己也产 C2000编程器
它的好处就是它是国内厂商
你有什么事可以找他
但是它据说啊据我们其它客户说
它的量产烧写器可能稍微贵那么一点点
大家可以去咨询一下
所以这个就是两方面
一个事国内厂商一个是国外厂商
看你怎么衡量了你都试一试
而且实际有大部分客户他不需要这玩意
大部分客户实际就是不想用 CCS
说产线上的人不会用 CCS
你给我 我们实际 TI 有一个叫 uion flash 的工具
这东西不需要 CCS
它直接可以烧把 .out 拿出来
然后打开 flash
配置好以后弄个仿真器直接就烧
这个产线上也可以用
所以看大家怎么想了
确实现在这个 EtherCAT 东西 越来越流行尤其是在我们这边在中国 那我们首先我们 C2000 现在主要的这个 目标客户就是这边 电机包括比如伺服做一些工业控制 他们都会有 EtherCAT 需求 但是我们 TI 实际在 EtherCAT 这边 我们自己 C2000 目前是 没有办法直接去处理 EtherCAT slave 节点 那 master 就更别说了我们也搞不定 但是我们现在是有这么几个几种处理的方式 一种就是我们的 AM335x 它既可以做 EtherCAT slave 也可以搞定做 master 所以那你可以把 EtherCAT 这个 任务都交给 AM335x 然后我们和 AM335x之间 比如说通过高速的 SPI 或者是通过一些其它的这个总线去通讯 这是一个方案 另一个方案就是由外边的这种 EtherCAT slave 的控制器 我们去跟它去通讯 但是这个就带来一个问题就是说 那这个东西和用 AM335x 去实现有什么区别呢 大家可能会问啊 这不就重复了 既然用 AM335x 为什么要做这个 那首先 AM335x 它自己是一颗 Cortex A8 的处理器 那它要外扩 flash要外扩 DDR 去做这些事情 它一定不可能是像我们这种单芯片 或者怎么样去做 那还有就是说我们的连一个外接的控制器 不管是 ET1100还是其它的控制器 连这个东西的话 那最主要的一个区别就是 EtherCAT 协议栈跑在哪一边 如果我们接这种 ET1100 那我们 C2000上面是要跑一个 EtherCAT 协议栈的 如果用 AM335x EtherCAT 协议栈可以直接跑在 AM335x 的 A8 核上 那它跟你之间的通讯可以自己去定义 所以 C2000 上面不用跑 EtherCAT 协议栈 这就是最最最主要的区别 这个是我们现在已有的参考设计 我们在这个现在做一个 TI design 用我们的这个2837x 和 ET1100 用它俩去连 连完以后 这个 TI design 现在做到哪一步 就是现在我们提供了 我们和 ET1100 之间的硬件连接 我们和 ET1100连接是通过两种方式 应该是主要看 ET1100 因为它本身就有两种方式 一种是并行总线 另外一种是 SPI 我们也做了相应的这个 我们的 SPI 是直接那个 SPI 没有什么问题我们叫并行总线 我们是用因为我们2837x是有两条并行总线的 我们有一个32位总线 那我们可以用我们16位总线去连 ET1100 这是我们现在能给大家 就是我们 TI design 里面现在就有硬件连接 除了硬件连接还有什么 那我们除了硬件连接的原理图 我们还有一个底层的驱动 就是怎么去跟 ET1100 SPI 通讯 包括或者说并行总线通讯 把这一部分驱动的总线的驱动我们写好了 那 EtherCAT 协议栈 我们现在没有提供给大家 因为这东西不是 TI 可以提供的 因为你必须是 ETG 的会员 你才可以用 EtherCAT 的协议栈 所以我们现在就是说如果 现在有的东西就是硬件连接底层驱动 EtherCAT 协议栈需要你自己去 EtherCAT 成为 ETG 成员以后再去拿 然后自己做一个移植 将来我们计划是说我们会 给大家在移植方面做一些指导 就比如说因为我们肯定我们的产品线 他们首先会去移植测试这个协议栈 然后对于移植方面可以做指导 但是它还是不能直接把协议栈提供给大家 在我们 L335x 那边他们会出一颗单独的料号 这一颗它会把 EtherCAT 烧在里面 作为一个 SOC 的方式 提供给大家 但是它还是需要你去外扩一些东西 所以这个看大家怎么平衡和取舍 这个实际有一个没画 就是实际我们在规划下一代 C2000芯片的时候 我们是有计划做一颗芯片 然后把 ET1100 直接封在我们芯片里面 这样大家就不需要专门去搞一个外边的 不管是 SPI 还是并行总线去连接它 这样我们可以直接从我们内部的数据总线上 去访问 ET1100 大家有没有这个需求啊 就是在座的有哪些是用到过 EtherCAT 或者说想要用 EtherCAT 有吗 如果没有 那实际这方面可能大家就不太感兴趣 没关系 那我们后面就可以说快一点 然后大家有什么其它什么感兴趣的 可以跟我们一块讨论一下 在座的真的是没有用 EtherCAT 是吧 或者说有这个需求 后面有是吧 你那边用了是吧 那你现在用的什么方案呢 之前没有用过 现在主要是想直接上 EtherCAT 这个总线 那你现在是用哪一颗我们 C2000 的器件 现在用的 TI 那个57 AM57 570是吗 5728 Sitara 那条线 5728 你用 Sitara Sitara 那边就好办了 Sitara 那边不管是从还是主它都能搞定 只不过主的那个协议栈它是要第三方合作的 从的那个应该可以直接放出来 而且不要授权费这些都不要 这个就好办了 但对我们 C2000来说 有些客户他不喜欢用 他没有 processor 的开发经验的话 那他退而求其次 他就会选一颗 ET1100来实现我们控制 首先说 EtherCAT 不是 TI 的 EtherCAT 是 BECKHOFF 的 BECKHOFF 制定的这么一个标准 包括它这里边的授权都是 BECKHOFF 授权出来的 所以他们还成立了一个 ETG 就是说你所有关于 EtherCAT 的东西 只有成为 ETG 成员 才可以去拿到相应的协议栈 其它的一些资料 那怎么成为 ETG 的会员 因为我确实也不是 ETG 的成员 但是我也跟客户了解了一下 就是说你可以去申请 它各地有代表处你可以去申请 成为 ETG 的成员 可以列一个表格好像也不收费 然后只是注册一下 然后你就可以成为 ETG 的会员了 这 EtherCAT 除了大家说 就如果你们要都没使过的话 肯定会说 EtherCAT 到底是个什么东西 为什么说这些做这种 比如说实时控制工业控制人都喜欢使用这个东西 那 EtherCAT 就现场总线 实时现场总线实际最重要的一个参数就是实时 就是这是最重要的 而且也是它最关注的东西 然后 那 EtherCAT 可以做到什么 EtherCAT 可以做到它对这个 它的响应的就是指令的延迟 比如我从发到那边对方收到 我的底下的 slave 的节点 收到我这个数据 中间的这个延迟可以做到小于100us 就包括线路上的延迟和逻辑上控制器的延迟 可以做到小于100us 这就是它最大最大的特点 就是快 100 微妙级的这种数据通讯 二是它和现在的这个 它可以用现在有的这种 比如说标准的网口啊这种回线啊 它都可以沿用现在的东西 那一个是快另外一个是兼容性比较好 包括它这个主栈 就是说你找一台 PC有网口的 PC 你也可以实现这个主栈 所以兼容性和速度方面 EtherCAT 是存在一个最大的优势 所以这个在工业控制这边 当然还有其它的 其它的实际也有各有优缺点 但是在我们这边实际的情况就是 在中国这片土地实际情况就是大家 实际会看别人用什么我也用什么 或者哪个比较用的人多 大家实际会统一在一个标准下 就现在的趋势上来看 实际是 EtherCAT 用的人越来越多 包括有一些做这种数控系统的 他们有一个 IO 板包括这个 每一个 IO 节点一个小的控制单元 它全是还是 EtherCAT 联系的 这个是说 EtherCAT 整个结构 首先 EtherCAT 它是分 主节点和 master slave 这个节点的 我刚才说了做主的搞 IPC 就可以做 像其它的我们一些处理器 比如说 Cortex A8 这种处理器也可以做 但是它主节点的要求 实际可以完全兼容现在的 Ethernet 但是它这个从节点是特殊的结构 因为它上面这个 它的从节点的数据实际是 类似于这种菊花链形式的 它的数据是串行的 一个节点串串串它要 bypass 往后走的 所以它就从节点上都会有 大家可以看往后看 你看我们的有什么它从节点都长这样 上面最典型就两网口 所以它就菊花链的 它数据就一串串串过去的 这个就是我们刚才说的 我们 TI 参考设计的 ET1100 的板子 这个板子可以放在插在我们下面控制板上 插在我们现在那个控制板上 刚才说实际上我们这个 跑我们 C2000 可以直接跑在 EtherCAT 协议栈 然后实现 EtherCAT 的通讯 实际我们之前 上一节我们也讲过 我们有一个开发板叫 IDDK 就是 IDDK 上面 我们实际是有三个插槽 我不知道大家注意过没有 如果大家见过我们 IDDK 开发板 我看后面有没有图啊 IDDK 上我们实际是有3个插槽的 就是说我们 IDDK 上就是说一套电机控制的硬件 然后上面可以插3个处理器 这3个处理器插槽 一个是 C200088377D 它就是专门实现电机控制的 还有一个是我们Hercules 他可以插一个Hercules的器件 然后可以通过Hercules来实现功能性安全的功能 那第三个插槽实际插的就是我们 Sitara 的 AM335x 通过 AM335x 它能实现 EtherCAT 我们的那个同事就是 DO 的同事 他们实际做了一个完整的 demo 就是包括 EtherCAT 通讯 然后通过 EtherCAT 传指令到下面 然后我们的 C2000 控制电机做出各种指令 然后通过我们Hercules的器件 来去监测保证整个系统的稳定性安全 这是我们的 demo 就是通过 IDDK 去实现的 这就是我们刚才说的 它那个数据都是串进来串行串着走的 所以它整个网络长的是这样的 这就决定它那个从节点一定是特殊的 MAC 层 不是我们普通的 Ethernet MAC 层 这个是我们和那个 和 ET1100 之间的连接 这个是还是通过并行总线的方式去连接的 我们用的是 EMIF2 因为我们 C2000这个器件 就是2837x 这个器件 实际是双 EMIF 的 双 EMIF 就是我们可以有两条总线扩出来 1个16位的总线 像我们这个 EMIF2 另外还有一个32位的总线 32位的总线你可以去扩 比如说 FPGA 啊 无论其它的什么存储器件去扩 然后通过16位的总线可以扩什么 比如说扩这个 EMIF 扩这个 EtherCAT 那还可以扩什么 比如说扩一些其它的这个控制器 比如说外置的 ADC 这是我们基础设备设备的一个特点 双总线 目前我不知道其它家有没有 应该在 MCU 里头我们是 可能是唯一一家有双总线的 还有其它家有吗 谁家的不算处理器啊 像什么处理器当然不算了 我们就说在 MCU 里面 就 flash RAM 内置的这种微控制器里边 我们应该是这方面保持领先的 刚才说了 ET1100 还可以通过 SPI 通信 这些都没有关系 我们之前说了我们现在能够 给大家的参考设计就是通过我们这个控制板 那我们实际还做了一个参考设计 是基于我们的 launchpad 用这两个我们就可以很方便的去测试 EtherCAT 整个网络 那我们下面会这个 给大家说如果你要是想去评估一下 用现在给你的这个方案怎么评估 首先你需要我们这个硬件 就是说我们从栈这边你需要这个 叫 Launch pad 或者我们那个 Control Card 刚才展示的那两个 主栈这边你实际去需要做这个软件 这个是在 ETG 网站上可以下载到 然后把这个东西装在你的 PC 上 任何一台电脑都可以当 EtherCAT 的主栈 只要装了这个软件就可以了 然后把我们这个 EtherCAT 这个 我们做好的一个 slave image 烧进去 就是说我们给大家 提供了一个可以供大家评估的 slave image 而不是原码 因为说了刚才那个协议栈我们不能提供 但我们可以给你提供一个编译好的 来让你测试一下 然后通过我的 PC 去连我的 Launch pad 通过这根网线 然后就可以去在上面去做测试了 因为大家可能大部分也都不用这些 所以可能真的是越听越困 所以那我们就 我不知道大家对其它有什么感兴趣的 我们可以去跟大家讨论一下我们其它的 包括这个如果你们有感兴趣的也可以 就这个是它里边的一些测试程序 关于今天我们这部分 EtherCAT 这部分 大家有什么感兴趣的吗 或者说其它的跟 EtherCAT 无关的 因为我刚才看了一下 满场就只有最后一位朋友是事实用过这个 剩下大家都对这个无需求 你讲 EtherCAT 传输容量是 CAN 总线多少倍 这个我还是真不清楚 你可以我回头我看一下 你是说它的速率是吗 它肯定比 CAN 要快 对 要不然大家也不会用这个 直接用 CAN 就好了 实际也不光是容量的问题 实际你跟 CAN 去比 CAN 很难做到对某个节点做到响应想到哪指哪 因为 CAN 是无主的系统 它实际最大特点还是它延时响应 就什么人会用它以前那个 比如说做那种大型机床的人 它这个机床什么时候该怎么动 怎么往哪个路径上刀头要走到哪个路线 它完全可以通过这个东西 去把它的指令发到下面各种伺服 然后伺服去响应然后就能满足它的精度 我们以前传统的形式 实际是很难做到这种低延迟的 这个对延迟要求是很高的 而且它数据 它一个数据包是可以最少 一个节点可以只加1bit 的数据上去 它那个数据包特别灵活从1bit 到那个 刚才有个数据来着是多少 你可以加一个位进去 所以它那个 最少是8个 所以主要是延时 CAN 是没有办法控制延时的 其它还有大家对这方面还有什么感兴趣的 或者对其它我们 C2000 的器件有什么感兴趣的 没有的话我们这部分可能就这样了 因为有很多细节的东西大家都没有积极了 听着都晕了 是这样的那我们现在因为 大家可能对这一方面不太感兴趣的话 就是说 EtherCAT 这部分 那我们还回来说对我们的 C2000器件 包括我们其它 那我在座我想问一下大家 在座的比如说电源相关的有多少 能帮忙举一下手吗 那电机相关的呢 那剩下的朋友都是什么应用的 是这样我们讲一下我们 因为我们实际平时遇到最多的问题 就是我们 C2000的开发工具的问题 因为很多很多人问我工具的问题 就包括我们的 IDE CCS 包括我们的仿真器 那这些东西跟应用无关嘛 所以我想跟大家抽这个时间 正好我们 EtherCAT 可能对大家意义不大 那我们就聊一下软硬件的开发工具 比如说这个 首先我们软件这个 就讲一下我们软件啊就是说 TI 的 C2000是只能在 CCS 上开发的 这个东西没有别的办法 只有 CCS 那 CCS 我们也大家以前用过的知道 从3.3到后面的4 5 现在已经到6了 马上年底我们还会出 CCS 7 这个 CCS 日新月异 但是我们实际 有很多我们现在的用户还是停留在3上 而且现在由于这个操作系统升级 很多人很困惑 说我们3在 windows7 以下能不能用 包括64位的 win7 以下能不能用 那首先我声明 TI 自己的官方声明是 我们 CCS3.3 是不支持 win7的 包括64位 win7 但它说的不支持不是指的不能用 它说的不支持是说 我们不能保证它能用 这个意思是这样 但实际我们也有客户 在他的 win7 以下去装 CCS3.3也能装成功 包括他的那个用比如说 xds100 的仿真器 包括510 560 的仿真器 在这底下也能用成 所以这个东西首先告诉大家 如果你用3.3 实际我们建议你最好是能换的话是换一换 因为 CCS6 一方面它对各种操作系统 它是 Java 嘛 Eclipse 它是从 Java 来的 所以它对各种操作系统的支持会好一些 你也不用纠结于3.3到底将来 这个能用那个不能用 但是有一点说明就是 CCS6 不支持2407 2406 所有的24的器件它都不支持 如果你有24的器件你还是留个 CCS3.3吧 这个没办法 我们新的 CCS6 不支持这些 当然话又说回来了 那个你 CCS3.3 支持不支持我们新的这些 37x 啊这些肯定是不支持的 CCS6 是可以支持我们 现在今天主要讲的这些28 37x 07x 我们新一代的 C2000的设备 其它的5必须要打补丁 那与其那样不如直接搞个6呢 打那个补丁麻烦 第二就是说 我们实际那就统一到一个平台上说 如果你有2407的项目 你留一个 CCS3.3 如果没有 那我们建议你能升6就都升到6吧 然后对于新器件的支持也好一些 而且我们 CCS6 有一个好处就是 我们所有 TI 的 MCU 包括我们的无线产品它都能支持 就包括 Sitara 包括我们的多核 DSP 所以你可以在 CCS6以下 把 TI 所有的处理器平趟 你不用再去来回就换 IDE 换处理器 因为以前很多人是这样的他的430 比如说他用 IAR 对吧或者用 Keil 用这些东西去做430 比如说他用那个 Keil 去编我们的 M4 我们有一个 M4 或者用 IAR 去编 那他又用 IAR 去编 然后 C2000 他又用 CCS 现在不用这么麻烦了 如果你能把它统一到 CCS6上面来说 我们的430 Hercules 我们的 Cortex M4 我们的这些无线什么的 CC这些系列 我们都能搞定 除了有一颗 CC 搞不定 就是CC 的以前的那一代25 CC25 几几 那个里头是一颗51核 我们 CCS 里头没有51的编译器 所以除了51核的我们都能搞定 所以换成 CCS6 还是值得的 换了以后你比如说你底下的 其它的 TI 平台你都没有问题了 那 CCS6 的事情我们就说到这 就是说我们 CCS6 CCS6 讲完就涉及到一个 license 的问题 经常大家会问 CCS6 license 是怎么办 有没有 license 实际是这样的 CCS6 对于我们 xds100 的仿真器 是无需要 license 的 就是说你安装的时候它有一个选项叫 xds100 free license 如果你安装的时候申请的是这个 license 你去用邮件注册一下 它就返回来一个注册码 然后这个就不要钱 那局限就是说它只能用在 xds100仿真器上 那 xds100 仿真器跟我们510 560有什么区别呢 如果你不用这个设备 就我们37x 07x 你用的是035包括以前的2808335这些 这些东西没有区别 xds100 仿真器 那个烧这些 flash 的速度是完全一致的 没有区别 完全没有区别 那什么是有区别的 有区别的就是说 我们新一代 device 因为它用了新的 flash 的工艺 所以你用 xds100 仿真器烧这个 flash 的时候 会慢一些 但烧 RAM 一点都不慢 所以你初期开发的时候 你就可以用 CCS xds100仿真器 说到这个 xds100仿真器 那大家就捎带说说 那就从 CCS 的话题转到我们仿真器的话题上 那我们 TI 是这样的 TI 首先 TI 自己不生产仿真器 所有市面上卖的仿真器没有一个是 TI 的 现在 最早的时候 TI 做过仿真器 但好多年都不做了 那 TI 网站上的仿真器 都是 Spectrum Digital 或者 Blackhawk 所以这个 那 Spectrum Digital 或者 Blackhawk 包括比如说在国内这个 瑞泰 和众达 对吧 这些以前卖仿真器的这些 它跟 TI 是什么关系 TI 只是把授权给它 那它自己去做一个仿真器 那是它的产品 它对这个品质负责 包括这些仿真器在那个 比如说 510 和 560 它在这个操作系统底下 它不是 USB 的吗 那个 USB 驱动都是他们自己写的 所以这就会有时候发生这个说 同样是510 比如说我 Spectrum Digital 或者 Blackhawk 510 就能支持最新的 CCS6 有可能某些厂商的510它就支持不了 CCS6 这个东西不是 TI 的原因 是它没有自己更新它在 CCS6 底下的支持的驱动 所以这个请大家去咨询自己买的仿真器的供应商 你问他这东西能不能支持 CCS6 对不对 然后如果不能的话 或者说可以升个级啊 或者它连升级都升不了就必须买新的 那是两码事了 所以说我首先说这个东西就是 xds100 跟510 560 的区别 那 xds100 本身有3个版本 xds100 有 v1 v2 v3 这个东西有什么区别啊 大家又疑惑了 首先这个 v1 是可以支持 CCS3.3的 3.3的最后的3.3什么38几几是可以支持 v1 的 v2 v3 在3.3上用不了 那 v1 是不支持6的 反过来说 所以那我们既然刚才已经讨论了半天 反正就是说建议大家把 CCS 升级到6 那好把你的 xds100 仿真器 最好来个 v2 v3 的对不对 然后这样就搞定了 而且 xds100 仿真器在 v2 v3 上面 实际跑的很好啊 为什么 因为 xds100 仿真器刚才说了 它的弱点就是稍微慢一点 慢一点是因为它的 USB 驱动 它用的是通用类 就是它不是自己写的 USB 它用的是一个通用类以后 TI 去通过这个 通过我们 CCS 里头 直接调用它操作的 它是一个透传的东西 所以它对新器件的支持就会好一些 就是不管 TI 出了什么新器件 只要你把 CCS 一更新 然后 v1 v2 v3 的仿真器实际它不需要更新 这是 v1 v2 v3 最好的一个点 第二个 v1 v2 v3 还有一个好处就是 v2 v3 啊就不讲 v1 它不能支持 CCS6就不说它了 那我们 xds100 仿真器便宜 这是最大的特点 这东西经常有客户说这个 比如说他使一个很小的器件28035 335 xds 一般仿真器你去淘宝上买 一两百人民币吧我不知道具体多少 反正挺便宜的 那你就算去 TI 你想去来个高大上的 到 TI 商店买一个 Black Hawk 的 或者说什么 Spectrum Digital xd100 也没多少钱 60多美元 这对于大家来说负担就小多了 你要不上个510 560 你也搞的很头疼 TI 也不想这样 但是怎么说历史原因 以前510 560 所以 TI 就出了一款仿真器 因为大家又会纠结说这个510 560 我就是用28377 对不对 那这个用 xds100 烧 flash 太慢了 真的是太慢了 我们试过560烧的速度 就一样是比如说1M 的512的 flash 两个速度差10倍 就是说你用那个510 560一下30s一分钟刷完 用 xds100 刷 flash 要刷好几分钟 可能喝杯茶回来也刷不了 这个不可接受 所以大家又纠结了 说这么好的东西速度不能快一点吗 所以这时候 TI 就出了一个叫 xds200 的仿真器 它是介于510 560和 xds100之间的 xds200也不是 TI 产的 也是由各种各样的厂商产的 那我们就以 Spectrum Digital 去为例 那 Spectrum Digital xds200是 两三百美元吧可能是 那比510 560比它自己 510 560还是便宜多了 但是它的速度是跟510 560是一样的 会比 xds100 烧写速度快10倍 所以这就是我刚才讲的 关于 IDE 和仿真器的这个 大家这方面没有什么疑问 我相信这个应该是 大家对于我们新的这个比如 CCS6 和我们用的这些仿真器有什么疑问吗 这个没有疑问是吧 没有疑问那我们今天的这部分 对 trace 我跟大家澄清一下 trace 只有当器件支持的时候 你这颗 CPU 支持的时候它才有 trace 的功能 很不幸我们 C2000 根本就没有 trace 这部分 所以你买560 trace 也没用 它 trace不了 我想问一下有4个 DSP 然后用那个 CCS6 烧的话 就是相当于4个 CPU 都要同时烧吗 我们说4核是一两个叫协处理器 它自己不需要程序 它只是那两个28 烧两套程序 就是以往就是双 DSP 然后每一个 DSP 有两个 对 那你就烧4遍 那它 CCS6 支持那种像编一个脚本的话 也可以就是烧写的那种 我们自己的没有 你 CCS6 搞不定 但是会有那个第三方做的量产平衡器 它是可以支持这个调用包括 API 你可以去自己调用 它有调用的接口 你可以自己写一个程序去调用干一些事情 包括它那上边都可以 比如说一烧多 一烧二 一烧三 一烧几都能实现 就像一个板子上一个菊花链上就是 它不用菊花链它就直接出来8个 JTAG 口 那我一个 JTAG 口的话就是挂两个 DSP 那种 你是要问一下它那菊花链能不能去支持调用 你可以具体问一下 因为我们没有量产平衡器 国内有 说到这就说那个量产平衡器 捎带提一句 TI 本身我们 CCS C2000我们没有做量产平衡器 那产量烧写怎么办 一个就是以前的叫什么 我们有个叫 C2Pro 对吧 第三方叫 code 它有一个串口的烧写工具 那你可以如果你留了串口你可以用串口烧写工具 它是免费的 你可以利用它那个东西去烧 但是这个东西缺点就是 它要跳一下 GPIO 要把 GPIO 跳到串口的不同模式 还有如果你非要用 JTAG 烧 那就是两个方案 一个是国外的 有一家叫什么 DP Electronics 它是产的一个叫 C2000 的烧写器 它就是那种一拖八 一个上面 而且它那个可以脱离电脑 把你的image直接落到它那个烧写器里头 这东西在 TI 的 store 上有卖的 大概是我忘了几百美元吧 也不算太贵 两三百美元 你可以用这个东西 那这个东西好处就是说 它做了一拖多而且小巧又便宜 那不好的地就是它的厂商在国外 你不管是硬件还是软件有什么问题的话 可能咨询起来不那么方便 那实际我们在我们国内还有一家供应商 然后那个它叫昂科 它自己也产 C2000编程器 它的好处就是它是国内厂商 你有什么事可以找他 但是它据说啊据我们其它客户说 它的量产烧写器可能稍微贵那么一点点 大家可以去咨询一下 所以这个就是两方面 一个事国内厂商一个是国外厂商 看你怎么衡量了你都试一试 而且实际有大部分客户他不需要这玩意 大部分客户实际就是不想用 CCS 说产线上的人不会用 CCS 你给我 我们实际 TI 有一个叫 uion flash 的工具 这东西不需要 CCS 它直接可以烧把 .out 拿出来 然后打开 flash 配置好以后弄个仿真器直接就烧 这个产线上也可以用 所以看大家怎么想了
确实现在这个 EtherCAT 东西
越来越流行尤其是在我们这边在中国
那我们首先我们 C2000 现在主要的这个
目标客户就是这边
电机包括比如伺服做一些工业控制
他们都会有 EtherCAT 需求
但是我们 TI 实际在 EtherCAT 这边
我们自己 C2000 目前是
没有办法直接去处理 EtherCAT slave 节点
那 master 就更别说了我们也搞不定
但是我们现在是有这么几个几种处理的方式
一种就是我们的 AM335x
它既可以做 EtherCAT slave
也可以搞定做 master
所以那你可以把 EtherCAT 这个
任务都交给 AM335x
然后我们和 AM335x之间
比如说通过高速的 SPI
或者是通过一些其它的这个总线去通讯
这是一个方案
另一个方案就是由外边的这种
EtherCAT slave 的控制器
我们去跟它去通讯
但是这个就带来一个问题就是说
那这个东西和用 AM335x 去实现有什么区别呢
大家可能会问啊
这不就重复了
既然用 AM335x 为什么要做这个
那首先 AM335x 它自己是一颗
Cortex A8 的处理器
那它要外扩 flash要外扩 DDR
去做这些事情
它一定不可能是像我们这种单芯片
或者怎么样去做
那还有就是说我们的连一个外接的控制器
不管是 ET1100还是其它的控制器
连这个东西的话
那最主要的一个区别就是
EtherCAT 协议栈跑在哪一边
如果我们接这种 ET1100
那我们 C2000上面是要跑一个 EtherCAT 协议栈的
如果用 AM335x
EtherCAT 协议栈可以直接跑在 AM335x 的 A8 核上
那它跟你之间的通讯可以自己去定义
所以 C2000 上面不用跑 EtherCAT 协议栈
这就是最最最主要的区别
这个是我们现在已有的参考设计
我们在这个现在做一个 TI design
用我们的这个2837x 和 ET1100
用它俩去连
连完以后
这个 TI design 现在做到哪一步
就是现在我们提供了
我们和 ET1100 之间的硬件连接
我们和 ET1100连接是通过两种方式
应该是主要看 ET1100
因为它本身就有两种方式
一种是并行总线
另外一种是 SPI
我们也做了相应的这个
我们的 SPI 是直接那个
SPI 没有什么问题我们叫并行总线
我们是用因为我们2837x是有两条并行总线的
我们有一个32位总线
那我们可以用我们16位总线去连 ET1100
这是我们现在能给大家
就是我们 TI design 里面现在就有硬件连接
除了硬件连接还有什么
那我们除了硬件连接的原理图
我们还有一个底层的驱动
就是怎么去跟 ET1100 SPI 通讯
包括或者说并行总线通讯
把这一部分驱动的总线的驱动我们写好了
那 EtherCAT 协议栈
我们现在没有提供给大家
因为这东西不是 TI 可以提供的
因为你必须是 ETG 的会员
你才可以用 EtherCAT 的协议栈
所以我们现在就是说如果
现在有的东西就是硬件连接底层驱动
EtherCAT 协议栈需要你自己去 EtherCAT
成为 ETG 成员以后再去拿
然后自己做一个移植
将来我们计划是说我们会
给大家在移植方面做一些指导
就比如说因为我们肯定我们的产品线
他们首先会去移植测试这个协议栈
然后对于移植方面可以做指导
但是它还是不能直接把协议栈提供给大家
在我们 L335x 那边他们会出一颗单独的料号
这一颗它会把 EtherCAT 烧在里面
作为一个 SOC 的方式 提供给大家
但是它还是需要你去外扩一些东西
所以这个看大家怎么平衡和取舍
这个实际有一个没画
就是实际我们在规划下一代 C2000芯片的时候
我们是有计划做一颗芯片
然后把 ET1100 直接封在我们芯片里面
这样大家就不需要专门去搞一个外边的
不管是 SPI 还是并行总线去连接它
这样我们可以直接从我们内部的数据总线上
去访问 ET1100
大家有没有这个需求啊
就是在座的有哪些是用到过 EtherCAT
或者说想要用 EtherCAT 有吗
如果没有
那实际这方面可能大家就不太感兴趣 没关系
那我们后面就可以说快一点
然后大家有什么其它什么感兴趣的
可以跟我们一块讨论一下
在座的真的是没有用 EtherCAT 是吧
或者说有这个需求
后面有是吧 你那边用了是吧
那你现在用的什么方案呢
之前没有用过
现在主要是想直接上 EtherCAT 这个总线
那你现在是用哪一颗我们 C2000 的器件
现在用的 TI 那个57 AM57
570是吗
5728
Sitara 那条线
5728 你用 Sitara
Sitara 那边就好办了
Sitara 那边不管是从还是主它都能搞定
只不过主的那个协议栈它是要第三方合作的
从的那个应该可以直接放出来
而且不要授权费这些都不要
这个就好办了
但对我们 C2000来说
有些客户他不喜欢用
他没有 processor 的开发经验的话
那他退而求其次
他就会选一颗 ET1100来实现我们控制
首先说 EtherCAT 不是 TI 的
EtherCAT 是 BECKHOFF 的
BECKHOFF 制定的这么一个标准
包括它这里边的授权都是 BECKHOFF 授权出来的
所以他们还成立了一个 ETG
就是说你所有关于 EtherCAT 的东西
只有成为 ETG 成员
才可以去拿到相应的协议栈
其它的一些资料
那怎么成为 ETG 的会员
因为我确实也不是 ETG 的成员
但是我也跟客户了解了一下
就是说你可以去申请
它各地有代表处你可以去申请
成为 ETG 的成员
可以列一个表格好像也不收费
然后只是注册一下
然后你就可以成为 ETG 的会员了
这 EtherCAT 除了大家说
就如果你们要都没使过的话
肯定会说 EtherCAT 到底是个什么东西
为什么说这些做这种
比如说实时控制工业控制人都喜欢使用这个东西
那 EtherCAT 就现场总线
实时现场总线实际最重要的一个参数就是实时
就是这是最重要的
而且也是它最关注的东西
然后
那 EtherCAT 可以做到什么
EtherCAT 可以做到它对这个
它的响应的就是指令的延迟
比如我从发到那边对方收到
我的底下的 slave 的节点
收到我这个数据
中间的这个延迟可以做到小于100us
就包括线路上的延迟和逻辑上控制器的延迟
可以做到小于100us
这就是它最大最大的特点 就是快
100 微妙级的这种数据通讯
二是它和现在的这个
它可以用现在有的这种
比如说标准的网口啊这种回线啊
它都可以沿用现在的东西
那一个是快另外一个是兼容性比较好
包括它这个主栈
就是说你找一台 PC有网口的 PC
你也可以实现这个主栈
所以兼容性和速度方面
EtherCAT 是存在一个最大的优势
所以这个在工业控制这边
当然还有其它的
其它的实际也有各有优缺点
但是在我们这边实际的情况就是
在中国这片土地实际情况就是大家
实际会看别人用什么我也用什么
或者哪个比较用的人多
大家实际会统一在一个标准下
就现在的趋势上来看
实际是 EtherCAT 用的人越来越多
包括有一些做这种数控系统的
他们有一个 IO 板包括这个
每一个 IO 节点一个小的控制单元
它全是还是 EtherCAT 联系的
这个是说 EtherCAT 整个结构
首先 EtherCAT 它是分
主节点和 master slave 这个节点的
我刚才说了做主的搞 IPC 就可以做
像其它的我们一些处理器
比如说 Cortex A8 这种处理器也可以做
但是它主节点的要求
实际可以完全兼容现在的 Ethernet
但是它这个从节点是特殊的结构
因为它上面这个
它的从节点的数据实际是
类似于这种菊花链形式的
它的数据是串行的
一个节点串串串它要 bypass 往后走的
所以它就从节点上都会有
大家可以看往后看
你看我们的有什么它从节点都长这样
上面最典型就两网口
所以它就菊花链的
它数据就一串串串过去的
这个就是我们刚才说的
我们 TI 参考设计的 ET1100 的板子
这个板子可以放在插在我们下面控制板上
插在我们现在那个控制板上
刚才说实际上我们这个
跑我们 C2000 可以直接跑在
EtherCAT 协议栈
然后实现 EtherCAT 的通讯
实际我们之前
上一节我们也讲过
我们有一个开发板叫 IDDK
就是 IDDK 上面
我们实际是有三个插槽
我不知道大家注意过没有
如果大家见过我们 IDDK 开发板
我看后面有没有图啊
IDDK 上我们实际是有3个插槽的
就是说我们
IDDK 上就是说一套电机控制的硬件
然后上面可以插3个处理器
这3个处理器插槽
一个是 C200088377D
它就是专门实现电机控制的
还有一个是我们Hercules
他可以插一个Hercules的器件
然后可以通过Hercules来实现功能性安全的功能
那第三个插槽实际插的就是我们
Sitara 的 AM335x
通过 AM335x 它能实现 EtherCAT
我们的那个同事就是 DO 的同事
他们实际做了一个完整的 demo
就是包括 EtherCAT 通讯
然后通过 EtherCAT 传指令到下面
然后我们的 C2000 控制电机做出各种指令
然后通过我们Hercules的器件
来去监测保证整个系统的稳定性安全
这是我们的 demo
就是通过 IDDK 去实现的
这就是我们刚才说的
它那个数据都是串进来串行串着走的
所以它整个网络长的是这样的
这就决定它那个从节点一定是特殊的 MAC 层
不是我们普通的 Ethernet MAC 层
这个是我们和那个
和 ET1100 之间的连接
这个是还是通过并行总线的方式去连接的
我们用的是 EMIF2
因为我们 C2000这个器件
就是2837x 这个器件
实际是双 EMIF 的
双 EMIF 就是我们可以有两条总线扩出来
1个16位的总线
像我们这个 EMIF2
另外还有一个32位的总线
32位的总线你可以去扩
比如说 FPGA 啊
无论其它的什么存储器件去扩
然后通过16位的总线可以扩什么
比如说扩这个 EMIF
扩这个 EtherCAT
那还可以扩什么
比如说扩一些其它的这个控制器
比如说外置的 ADC
这是我们基础设备设备的一个特点
双总线
目前我不知道其它家有没有
应该在 MCU 里头我们是
可能是唯一一家有双总线的
还有其它家有吗
谁家的不算处理器啊
像什么处理器当然不算了
我们就说在 MCU 里面
就 flash RAM 内置的这种微控制器里边
我们应该是这方面保持领先的
刚才说了 ET1100
还可以通过 SPI 通信
这些都没有关系
我们之前说了我们现在能够
给大家的参考设计就是通过我们这个控制板
那我们实际还做了一个参考设计
是基于我们的 launchpad
用这两个我们就可以很方便的去测试
EtherCAT 整个网络
那我们下面会这个
给大家说如果你要是想去评估一下
用现在给你的这个方案怎么评估
首先你需要我们这个硬件
就是说我们从栈这边你需要这个
叫 Launch pad 或者我们那个 Control Card
刚才展示的那两个
主栈这边你实际去需要做这个软件
这个是在 ETG 网站上可以下载到
然后把这个东西装在你的 PC 上
任何一台电脑都可以当 EtherCAT 的主栈
只要装了这个软件就可以了
然后把我们这个 EtherCAT 这个
我们做好的一个 slave image 烧进去
就是说我们给大家
提供了一个可以供大家评估的 slave image
而不是原码
因为说了刚才那个协议栈我们不能提供
但我们可以给你提供一个编译好的
来让你测试一下
然后通过我的 PC 去连我的 Launch pad
通过这根网线
然后就可以去在上面去做测试了
因为大家可能大部分也都不用这些
所以可能真的是越听越困
所以那我们就
我不知道大家对其它有什么感兴趣的
我们可以去跟大家讨论一下我们其它的
包括这个如果你们有感兴趣的也可以
就这个是它里边的一些测试程序
关于今天我们这部分 EtherCAT 这部分
大家有什么感兴趣的吗
或者说其它的跟 EtherCAT 无关的
因为我刚才看了一下
满场就只有最后一位朋友是事实用过这个
剩下大家都对这个无需求
你讲
EtherCAT 传输容量是 CAN 总线多少倍
这个我还是真不清楚
你可以我回头我看一下
你是说它的速率是吗
它肯定比 CAN 要快
对 要不然大家也不会用这个
直接用 CAN 就好了
实际也不光是容量的问题
实际你跟 CAN 去比
CAN 很难做到对某个节点做到响应想到哪指哪
因为 CAN 是无主的系统
它实际最大特点还是它延时响应
就什么人会用它以前那个
比如说做那种大型机床的人
它这个机床什么时候该怎么动
怎么往哪个路径上刀头要走到哪个路线
它完全可以通过这个东西
去把它的指令发到下面各种伺服
然后伺服去响应然后就能满足它的精度
我们以前传统的形式
实际是很难做到这种低延迟的
这个对延迟要求是很高的
而且它数据
它一个数据包是可以最少
一个节点可以只加1bit 的数据上去
它那个数据包特别灵活从1bit 到那个
刚才有个数据来着是多少
你可以加一个位进去
所以它那个
最少是8个
所以主要是延时
CAN 是没有办法控制延时的
其它还有大家对这方面还有什么感兴趣的
或者对其它我们 C2000 的器件有什么感兴趣的
没有的话我们这部分可能就这样了
因为有很多细节的东西大家都没有积极了
听着都晕了
是这样的那我们现在因为
大家可能对这一方面不太感兴趣的话
就是说 EtherCAT 这部分
那我们还回来说对我们的 C2000器件
包括我们其它
那我在座我想问一下大家
在座的比如说电源相关的有多少
能帮忙举一下手吗
那电机相关的呢
那剩下的朋友都是什么应用的
是这样我们讲一下我们
因为我们实际平时遇到最多的问题
就是我们 C2000的开发工具的问题
因为很多很多人问我工具的问题
就包括我们的 IDE CCS
包括我们的仿真器
那这些东西跟应用无关嘛
所以我想跟大家抽这个时间
正好我们 EtherCAT 可能对大家意义不大
那我们就聊一下软硬件的开发工具
比如说这个
首先我们软件这个
就讲一下我们软件啊就是说
TI 的 C2000是只能在 CCS 上开发的
这个东西没有别的办法
只有 CCS
那 CCS 我们也大家以前用过的知道
从3.3到后面的4 5 现在已经到6了
马上年底我们还会出 CCS 7
这个 CCS 日新月异
但是我们实际
有很多我们现在的用户还是停留在3上
而且现在由于这个操作系统升级
很多人很困惑
说我们3在 windows7 以下能不能用
包括64位的 win7 以下能不能用
那首先我声明 TI 自己的官方声明是
我们 CCS3.3 是不支持 win7的
包括64位 win7
但它说的不支持不是指的不能用
它说的不支持是说
我们不能保证它能用
这个意思是这样
但实际我们也有客户
在他的 win7 以下去装 CCS3.3也能装成功
包括他的那个用比如说 xds100 的仿真器
包括510 560 的仿真器
在这底下也能用成
所以这个东西首先告诉大家
如果你用3.3
实际我们建议你最好是能换的话是换一换
因为 CCS6 一方面它对各种操作系统
它是 Java 嘛
Eclipse 它是从 Java 来的
所以它对各种操作系统的支持会好一些
你也不用纠结于3.3到底将来
这个能用那个不能用
但是有一点说明就是 CCS6 不支持2407
2406 所有的24的器件它都不支持
如果你有24的器件你还是留个 CCS3.3吧
这个没办法
我们新的 CCS6 不支持这些
当然话又说回来了
那个你 CCS3.3 支持不支持我们新的这些
37x 啊这些肯定是不支持的
CCS6 是可以支持我们
现在今天主要讲的这些28 37x 07x
我们新一代的 C2000的设备
其它的5必须要打补丁
那与其那样不如直接搞个6呢
打那个补丁麻烦
第二就是说
我们实际那就统一到一个平台上说
如果你有2407的项目
你留一个 CCS3.3
如果没有
那我们建议你能升6就都升到6吧
然后对于新器件的支持也好一些
而且我们 CCS6 有一个好处就是
我们所有 TI 的 MCU
包括我们的无线产品它都能支持
就包括 Sitara 包括我们的多核 DSP
所以你可以在 CCS6以下
把 TI 所有的处理器平趟
你不用再去来回就换 IDE 换处理器
因为以前很多人是这样的他的430
比如说他用 IAR 对吧或者用 Keil
用这些东西去做430
比如说他用那个 Keil
去编我们的 M4
我们有一个 M4
或者用 IAR 去编
那他又用 IAR 去编
然后 C2000 他又用 CCS
现在不用这么麻烦了
如果你能把它统一到 CCS6上面来说
我们的430 Hercules
我们的 Cortex M4
我们的这些无线什么的 CC这些系列
我们都能搞定
除了有一颗 CC 搞不定
就是CC 的以前的那一代25
CC25 几几
那个里头是一颗51核
我们 CCS 里头没有51的编译器
所以除了51核的我们都能搞定
所以换成 CCS6 还是值得的
换了以后你比如说你底下的
其它的 TI 平台你都没有问题了
那 CCS6 的事情我们就说到这
就是说我们 CCS6
CCS6 讲完就涉及到一个 license 的问题
经常大家会问 CCS6 license 是怎么办
有没有 license
实际是这样的
CCS6 对于我们 xds100 的仿真器
是无需要 license 的
就是说你安装的时候它有一个选项叫
xds100 free license
如果你安装的时候申请的是这个 license
你去用邮件注册一下
它就返回来一个注册码
然后这个就不要钱
那局限就是说它只能用在 xds100仿真器上
那 xds100 仿真器跟我们510 560有什么区别呢
如果你不用这个设备
就我们37x 07x
你用的是035包括以前的2808335这些
这些东西没有区别
xds100 仿真器
那个烧这些 flash 的速度是完全一致的
没有区别 完全没有区别
那什么是有区别的
有区别的就是说
我们新一代 device
因为它用了新的 flash 的工艺
所以你用 xds100 仿真器烧这个 flash 的时候
会慢一些
但烧 RAM 一点都不慢
所以你初期开发的时候
你就可以用 CCS xds100仿真器
说到这个 xds100仿真器
那大家就捎带说说
那就从 CCS 的话题转到我们仿真器的话题上
那我们 TI 是这样的
TI 首先 TI 自己不生产仿真器
所有市面上卖的仿真器没有一个是 TI 的
现在 最早的时候 TI 做过仿真器
但好多年都不做了
那 TI 网站上的仿真器
都是 Spectrum Digital 或者 Blackhawk
所以这个
那 Spectrum Digital 或者 Blackhawk
包括比如说在国内这个
瑞泰 和众达 对吧
这些以前卖仿真器的这些
它跟 TI 是什么关系
TI 只是把授权给它
那它自己去做一个仿真器
那是它的产品
它对这个品质负责
包括这些仿真器在那个
比如说 510 和 560
它在这个操作系统底下
它不是 USB 的吗
那个 USB 驱动都是他们自己写的
所以这就会有时候发生这个说
同样是510
比如说我 Spectrum Digital 或者 Blackhawk 510
就能支持最新的 CCS6
有可能某些厂商的510它就支持不了 CCS6
这个东西不是 TI 的原因
是它没有自己更新它在 CCS6 底下的支持的驱动
所以这个请大家去咨询自己买的仿真器的供应商
你问他这东西能不能支持 CCS6 对不对
然后如果不能的话
或者说可以升个级啊
或者它连升级都升不了就必须买新的
那是两码事了
所以说我首先说这个东西就是
xds100 跟510 560 的区别
那 xds100 本身有3个版本
xds100 有 v1 v2 v3
这个东西有什么区别啊
大家又疑惑了
首先这个 v1 是可以支持 CCS3.3的
3.3的最后的3.3什么38几几是可以支持 v1 的
v2 v3 在3.3上用不了
那 v1 是不支持6的
反过来说
所以那我们既然刚才已经讨论了半天
反正就是说建议大家把 CCS 升级到6
那好把你的 xds100 仿真器
最好来个 v2 v3 的对不对
然后这样就搞定了
而且 xds100 仿真器在 v2 v3 上面
实际跑的很好啊 为什么
因为 xds100 仿真器刚才说了
它的弱点就是稍微慢一点
慢一点是因为它的 USB 驱动
它用的是通用类
就是它不是自己写的 USB
它用的是一个通用类以后
TI 去通过这个
通过我们 CCS 里头
直接调用它操作的
它是一个透传的东西
所以它对新器件的支持就会好一些
就是不管 TI 出了什么新器件
只要你把 CCS 一更新
然后 v1 v2 v3 的仿真器实际它不需要更新
这是 v1 v2 v3 最好的一个点
第二个 v1 v2 v3 还有一个好处就是
v2 v3 啊就不讲 v1
它不能支持 CCS6就不说它了
那我们 xds100 仿真器便宜
这是最大的特点
这东西经常有客户说这个
比如说他使一个很小的器件28035 335
xds 一般仿真器你去淘宝上买
一两百人民币吧我不知道具体多少
反正挺便宜的
那你就算去 TI 你想去来个高大上的
到 TI 商店买一个 Black Hawk 的
或者说什么 Spectrum Digital xd100
也没多少钱 60多美元
这对于大家来说负担就小多了
你要不上个510 560 你也搞的很头疼
TI 也不想这样
但是怎么说历史原因
以前510 560
所以 TI 就出了一款仿真器
因为大家又会纠结说这个510 560
我就是用28377 对不对
那这个用 xds100 烧 flash
太慢了 真的是太慢了
我们试过560烧的速度
就一样是比如说1M 的512的 flash
两个速度差10倍
就是说你用那个510 560一下30s一分钟刷完
用 xds100 刷 flash 要刷好几分钟
可能喝杯茶回来也刷不了
这个不可接受
所以大家又纠结了
说这么好的东西速度不能快一点吗
所以这时候 TI 就出了一个叫 xds200 的仿真器
它是介于510 560和 xds100之间的
xds200也不是 TI 产的
也是由各种各样的厂商产的
那我们就以 Spectrum Digital 去为例
那 Spectrum Digital xds200是
两三百美元吧可能是
那比510 560比它自己 510 560还是便宜多了
但是它的速度是跟510 560是一样的
会比 xds100 烧写速度快10倍
所以这就是我刚才讲的
关于 IDE 和仿真器的这个
大家这方面没有什么疑问
我相信这个应该是
大家对于我们新的这个比如 CCS6
和我们用的这些仿真器有什么疑问吗
这个没有疑问是吧
没有疑问那我们今天的这部分
对 trace 我跟大家澄清一下
trace 只有当器件支持的时候
你这颗 CPU 支持的时候它才有 trace 的功能
很不幸我们 C2000 根本就没有 trace 这部分
所以你买560 trace 也没用
它 trace不了
我想问一下有4个 DSP
然后用那个 CCS6 烧的话
就是相当于4个 CPU 都要同时烧吗
我们说4核是一两个叫协处理器
它自己不需要程序
它只是那两个28 烧两套程序
就是以往就是双 DSP
然后每一个 DSP 有两个
对 那你就烧4遍
那它 CCS6 支持那种像编一个脚本的话
也可以就是烧写的那种
我们自己的没有
你 CCS6 搞不定
但是会有那个第三方做的量产平衡器
它是可以支持这个调用包括 API
你可以去自己调用
它有调用的接口
你可以自己写一个程序去调用干一些事情
包括它那上边都可以
比如说一烧多 一烧二 一烧三 一烧几都能实现
就像一个板子上一个菊花链上就是
它不用菊花链它就直接出来8个 JTAG 口
那我一个 JTAG 口的话就是挂两个 DSP 那种
你是要问一下它那菊花链能不能去支持调用
你可以具体问一下
因为我们没有量产平衡器
国内有
说到这就说那个量产平衡器
捎带提一句
TI 本身我们 CCS C2000我们没有做量产平衡器
那产量烧写怎么办
一个就是以前的叫什么
我们有个叫 C2Pro 对吧
第三方叫 code
它有一个串口的烧写工具
那你可以如果你留了串口你可以用串口烧写工具
它是免费的
你可以利用它那个东西去烧
但是这个东西缺点就是
它要跳一下 GPIO
要把 GPIO 跳到串口的不同模式
还有如果你非要用 JTAG 烧
那就是两个方案
一个是国外的
有一家叫什么 DP Electronics
它是产的一个叫 C2000 的烧写器
它就是那种一拖八
一个上面
而且它那个可以脱离电脑
把你的image直接落到它那个烧写器里头
这东西在 TI 的 store 上有卖的
大概是我忘了几百美元吧
也不算太贵 两三百美元
你可以用这个东西
那这个东西好处就是说
它做了一拖多而且小巧又便宜
那不好的地就是它的厂商在国外
你不管是硬件还是软件有什么问题的话
可能咨询起来不那么方便
那实际我们在我们国内还有一家供应商
然后那个它叫昂科
它自己也产 C2000编程器
它的好处就是它是国内厂商
你有什么事可以找他
但是它据说啊据我们其它客户说
它的量产烧写器可能稍微贵那么一点点
大家可以去咨询一下
所以这个就是两方面
一个事国内厂商一个是国外厂商
看你怎么衡量了你都试一试
而且实际有大部分客户他不需要这玩意
大部分客户实际就是不想用 CCS
说产线上的人不会用 CCS
你给我 我们实际 TI 有一个叫 uion flash 的工具
这东西不需要 CCS
它直接可以烧把 .out 拿出来
然后打开 flash
配置好以后弄个仿真器直接就烧
这个产线上也可以用
所以看大家怎么想了
视频报错
手机看
扫码用手机观看
收藏本课程
-
未学习 DesignDRIVE中EtherCAT通信支持_2016 TI 嵌入式产品研讨会实录
00:40:25
播放中
视频简介
DesignDRIVE中EtherCAT通信支持_2016 TI 嵌入式产品研讨会实录
所属课程:DesignDRIVE中EtherCAT通信支持_2016 TI 嵌入式产品研讨会实录
发布时间:2016.08.30
视频集数:1
本节视频时长:00:40:25
DesignDRIVE中EtherCAT通信支持
//=$v1;?>
//=$v['id']?>//=$v['down_category']?>//=$v['link']?>//=$v['is_dl']?>//=$v['link']?>//=$v['name']?>//=$v['name']?>
//=$v['id']?>//=$v['down_category']?>//=$v['path']?>//=$v['is_dl']?>//=$v['path']?>//=$v['name']?>//=$v['name']?>
////=count($lesson['bbsinfo'])?>
//=$elink?>//=$elink?>//=$tags[0]?>//=$tags[0]?>//=$elink?>//= $elink?>//=$tags[1]?>//=$tags[1]?>
//=$lesson['bbs'];?>
//=count($lesson['bbsinfo'])?>