<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://e2echina.ti.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>C2000™︎ 微控制器论坛 - 最近的话题</title><link>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum</link><description /><dc:language>zh-CN</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Sun, 20 Sep 2026 02:21:43 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum" /><item><title>TMS320F280049: 关于280049的bootloader功能的问题</title><link>https://e2echina.ti.com/thread/1094095?ContentTypeID=0</link><pubDate>Fri, 11 Sep 2026 08:07:55 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:49966092-fcff-4584-a929-e996cdd9d6da</guid><dc:creator>chen xinyu</dc:creator><slash:comments>8</slash:comments><comments>https://e2echina.ti.com/thread/1094095?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094095/tms320f280049-280049-bootloader/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; TMS320F280049&lt;/p&gt;&lt;p&gt;我当前程序分为boot程序与APP程序；&lt;/p&gt;
&lt;p&gt;要实现OTA升级的功能，从boot程序跳转到APP程序是正常的；但是在APP程序跳转到boot中程序出现了一些问题：&lt;br /&gt;&lt;br /&gt;具体描述如下：&lt;br /&gt;我在APP程序中执行&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; DINT;&lt;br /&gt;&amp;nbsp; &amp;nbsp; IER = 0x0000;&lt;br /&gt;&amp;nbsp; &amp;nbsp; IFR = 0x0000;&lt;br /&gt;&amp;nbsp; &amp;nbsp; InitPieCtrl();&lt;br /&gt;&amp;nbsp; &amp;nbsp; SysCtl_disablePeripheral(SYSCTL_PERIPH_CLK_CLA1);&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; SysCtl_resetDevice();&lt;br /&gt;来进入软件复位，在不连接仿真器的情况下，程序执行完这段后就停止运行或者跑飞（我的判断依据是APP程序是LED灯慢闪，boot程序是LED灯快闪），连接仿真器后程序运行到这个语句后就出现：&lt;br /&gt;&lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/28501.image.png" alt="image.png" width="663" height="128" data-temp-id="image.png-36977" /&gt;&lt;br /&gt;我BOOT的map文件开头：ENTRY POINT SYMBOL: &amp;quot;code_start&amp;quot; &amp;nbsp;address: 00080000&lt;br /&gt;在开头就关闭了看门狗&lt;br /&gt;&lt;br /&gt;我应该怎么做，让280049正确的进行复位，正确的执行boot程序&lt;br /&gt;&lt;br /&gt;不要只给发一个例程，帮我分析一下原因和解决办法，辛苦&lt;/p&gt;</description></item><item><title>RE: TMS320F280049: 关于280049的bootloader功能的问题</title><link>https://e2echina.ti.com/thread/3943039?ContentTypeID=1</link><pubDate>Sun, 20 Sep 2026 02:21:43 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:0ef5bfb0-6426-438b-9470-3dbd1eda72e0</guid><dc:creator>chen xinyu</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3943039?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094095/tms320f280049-280049-bootloader/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;需要我提供一下APP程序与boot程序的cmd文件吗，&lt;br /&gt;我之前按照ai的引导，在&amp;nbsp; &amp;nbsp; SysCtl_resetDevice()；执行之前：&lt;br /&gt;执行了程序&lt;br /&gt;&amp;nbsp;EALLOW;&lt;br /&gt;&amp;nbsp;*(volatile uint16_t *)0x0D00 = 0x5AFF;&lt;br /&gt;&amp;nbsp;*(volatile uint16_t *)0x0D01 = 0xFFFF;&lt;br /&gt;&amp;nbsp;EDIS;&lt;br /&gt;这个会影响不连接仿真器的情况吗&lt;br /&gt;&lt;img style="max-height:240px;max-width:320px;" src="https://e2echina.ti.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/56/pastedimage1789870856965v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;当前0xD00地址的数据如上图;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TMS320F280049: 关于280049的bootloader功能的问题</title><link>https://e2echina.ti.com/thread/3943038?ContentTypeID=1</link><pubDate>Sun, 20 Sep 2026 01:27:32 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:4b923c2a-be76-49f2-9a63-7a5d243398cb</guid><dc:creator>chen xinyu</dc:creator><slash:comments>1</slash:comments><comments>https://e2echina.ti.com/thread/3943038?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094095/tms320f280049-280049-bootloader/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;您好，&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;谢谢你的回复，当前在不连接仿真器的情况下还是有问题，map文件中：&amp;ldquo;ENTRY POINT SYMBOL: &amp;quot;code_start&amp;quot;&amp;nbsp; address: 00080000&amp;rdquo;&lt;br /&gt;&lt;br /&gt;检测了复位电路也是没问题的，DSP上电之后可以先加载BOOT程序，然后从boot跳转到app程序，在APP程序中执行复位语句后还是卡住，我确认&lt;span&gt;&amp;nbsp;GPIO24 和 GPIO32 都为高电平，使用示波器量是没问题的；&lt;br /&gt;&lt;br /&gt;我原本猜测可能是跳入boot程序后跳入非法中断了，然后将程序从SysCtl_resetDevice();改为&amp;nbsp;asm(&amp;quot; LB&amp;nbsp; #0x080000 &amp;quot;);程序是可以跳到BOOT程序的，并且运行没问题；不过此处我需要使用复位形式；&lt;br /&gt;&lt;br /&gt;当前现象是DSP在执行完SysCtl_resetDevice();后程序停止运行，如果此刻带电直接连接仿真器后程序立刻运行boot程序，然后在CCS中连接仿真器观察寄存器CpuSysRegs.RESC，结果如下：&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span&gt;我应该如何实现不连接仿真器，程序正常复位到boot程序中？&lt;br /&gt;&lt;br /&gt;辛苦帮忙看一下&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/1094397?ContentTypeID=0</link><pubDate>Mon, 14 Sep 2026 05:56:44 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:018f8f81-8c9b-4eb3-a246-8ddfd4dc6c1a</guid><dc:creator>liu Gaosong</dc:creator><slash:comments>8</slash:comments><comments>https://e2echina.ti.com/thread/1094397?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; F29H859TU-Q1&lt;/p&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;问题一：F29H85x，Busoff中断里只判断Mcan_IR寄存器，Busoff状态发生变化都会进中断，一次Busoff会进2次中断且都会报告给上层（即使第二次中断，Busoff的状态以及恢复，即MCan_PSR_BO为0），这不符合规范；但是Busff轮询处理的时候，会先判断MCan_PSR_BO寄存器，确认MCan_PSR_BO为1后再报告上层；中断静态代码是缺少MCan_PSR_BO状态判断的。&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/28130.image.png" alt="image.png" data-temp-id="image.png-88945" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;问题二：F29H85x，Mcal Can配置Tx邮箱类型为BASIC_CAN，CanHwObjectCount不为1，压测发送报文周期时，发现存在漏帧，是因为报文请求发送时，读取空闲object的索引，跟最终发送时使用的索引不一致，导致发出的报文不对；把CanHwObjectCount改为1，问题解决了，但是为什么CanHwObjectCount大于1时，有漏帧的问题。&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/6763.image.png" alt="image.png" data-temp-id="image.png-95965" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/7838.image.png" alt="image.png" data-temp-id="image.png-71261" /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/2543.image.png" alt="image.png" data-temp-id="image.png-56149" /&gt;&lt;/p&gt;</description></item><item><title>RE: F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/3943035?ContentTypeID=1</link><pubDate>Sun, 20 Sep 2026 01:10:56 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:ed93d7a8-1ac8-4ad7-bc32-0339bd89cd9a</guid><dc:creator>liu Gaosong</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3943035?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;问题1：是否是等Mcal下个版本才能迭代。&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>TMS320F2800157: Debug 时，eeprom读取错误，上电直接运行，eeprom读取正常</title><link>https://e2echina.ti.com/thread/1095446?ContentTypeID=0</link><pubDate>Sat, 19 Sep 2026 08:37:14 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:01ce5380-6316-4d61-9c96-f5a08e96be4b</guid><dc:creator>yundong zou</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/1095446?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1095446/tms320f2800157-debug-eeprom-eeprom/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; TMS320F2800157&lt;/p&gt;&lt;p&gt;ccs12 Debug 时，eeprom读取错误，直接上电直接运行，eeprom读取正常&lt;/p&gt;</description></item><item><title>RE: F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/3942393?ContentTypeID=1</link><pubDate>Fri, 18 Sep 2026 14:14:23 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:bee535c5-008f-4782-97bc-fd8923298e3c</guid><dc:creator>Prajakta Potadar</dc:creator><slash:comments>1</slash:comments><comments>https://e2echina.ti.com/thread/3942393?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div lang="zh-x-mtfrom-en"&gt;
 &lt;p&gt;问题1：你的观察和修正都正确。我们应该检查这两项。&lt;code data-application="com.atlassian.bitbucket-server" data-language="c"&gt;canBusOffRecoveryStatus and&amp;nbsp;MCAN_PSR_BO before triggering the notification in order to ensure only one bus off notification is triggered for every bus off event.&lt;/code&gt;
  &lt;br /&gt;
  问题 2：我们正在努力重现该问题，分析完成后会通知您。&lt;/p&gt;
 &lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TMS320F28035: TMS320F28035PNT  芯片ADC非线性问题</title><link>https://e2echina.ti.com/thread/3942388?ContentTypeID=1</link><pubDate>Fri, 18 Sep 2026 08:12:55 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:f038139a-66a4-49de-96ed-09ea495dbc64</guid><dc:creator>Alice</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3942388?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1095273/tms320f28035-tms320f28035pnt-adc/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;您好， 已经收到了您的案例，调查需要些时间，感谢您的耐心等待。&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>TMS320F28035: TMS320F28035PNT  芯片ADC非线性问题</title><link>https://e2echina.ti.com/thread/1095273?ContentTypeID=0</link><pubDate>Fri, 18 Sep 2026 07:02:19 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:e6c4335f-a3d3-470e-b5b0-f8d643e34f63</guid><dc:creator>Dora CAI</dc:creator><slash:comments>1</slash:comments><comments>https://e2echina.ti.com/thread/1095273?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1095273/tms320f28035-tms320f28035pnt-adc/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; TMS320F28035&lt;/p&gt;&lt;p&gt;你好， TMS320F28035PNT&amp;nbsp; 使用片上ADC测试，发现ADC存在线性误差，不同芯片之间一致性差异较大 。相同问题在TMS320F28377SPZPT&amp;nbsp; &amp;nbsp; 上面也有出现。想看看怎么调整可以解决问题，谢谢！&lt;a href="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/TMS320F28035PNT--_AF824772_-ADC_5E97BF7E2760EE959898_.pdf" target="_blank" rel="noopener"&gt;TMS320F28035PNT 芯片 ADC非线性问题.pdf&lt;/a&gt;&amp;nbsp;&lt;/p&gt;</description></item><item><title>RE: TMS320F280049: 关于280049的bootloader功能的问题</title><link>https://e2echina.ti.com/thread/3941556?ContentTypeID=1</link><pubDate>Thu, 17 Sep 2026 07:18:25 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:a9f72c9d-abc8-4a33-bc5e-2b273244d19a</guid><dc:creator>Arpit Varahmihir</dc:creator><slash:comments>1</slash:comments><comments>https://e2echina.ti.com/thread/3941556?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094095/tms320f280049-280049-bootloader/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div lang="zh-x-mtfrom-en"&gt;
 &lt;p&gt;你好，
  &lt;br /&gt;
  &lt;br /&gt;&lt;/p&gt;
 &lt;div&gt;
  &lt;div&gt;
   &lt;div&gt;
    - 请参阅 TRM &lt;a href="https://www.ti.com/lit/ug/sprui33h/sprui33h.pdf?ts=1789568848745&amp;amp;ref_url=https%253A%252F%252Fwww.ti.com%252Fproduct%252FTMS320F280049"&gt;TMS320F28004x 实时微控制器技术参考手册（修订版 H）&lt;/a&gt;第 4.4.1 节，了解仿真启动流程。请务必按照这些步骤操作。
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;img src="https://e2e.ti.com/resized-image/__size/640x480/__key/communityserver-components-multipleuploadfilemanager/7cc42a98_2D00_85c5_2D00_41ed_2D00_866e_2D00_634dd4bce887-674267-complete/pastedimage1789571154441v2.png" alt=" " /&gt;
    &lt;br /&gt;
    &lt;p&gt;&lt;span&gt;原因是F28004x在仿真模式下的启动模式（仿真启动）尚未配置，因此启动过程无法顺利完成。&lt;/span&gt;当芯片再次上电或接收到复位信号时，需要执行启动程序，选择程序入口地址或使用外设加载器（引导加载程序）才能运行应用程序。复位后，芯片从地址0x3FFFC0运行复位向量，跳转到启动ROM以开始执行InitBoot函数。芯片将判断当前仿真器是否连接，并进入不同的启动过程。图4.3和图4.2分别显示了芯片在离线模式和仿真调试模式下的启动过程。&lt;/p&gt;
    &lt;p&gt;（1）如果芯片未连接到仿真器，系统将进入离线模式启动过程。默认情况下，F28004x 通过 GPIO24 和 GPIO32 的启动模式选择引脚 (BMPS) 电平来选择不同的启动模式，如表 1 所示。与 F2803x 等老款芯片不同，F28004x 还支持用户自定义 BMPS 和启动模式，可通过重写 DCSM OTP 中的 Z1-OTP-BOOTPIN-CONFIG 和 Z1-OTP-BOOTDEF 值来实现自定义启动功能，最多支持 3 个 BMPS 引脚和 8 种启动模式。&lt;/p&gt;
    &lt;p&gt;具体流程：如果 Z1-OTP-BOOTPIN-CONFIG.Key=0x5A，则进入自定义启动模式。&lt;/p&gt;
    &lt;p&gt;芯片根据 Z1-OTP-BOOTPIN-CONFIG.BMPSx 中设置的 BMPS 引脚和电平状态来确定要执行的启动模式（相应的启动模式由 Z1-OTP-BOOTDEF.BOOTDEFx 设置）。否则，芯片将根据 GPIO24 和 GPIO32 的电平状态选择默认启动模式。&lt;/p&gt;
    &lt;p&gt;&lt;/p&gt;
    &lt;p&gt;(2) 如果芯片未连接到仿真器，则会进入启动模式进行仿真调试，该模式通过读取 EMU-BOOTPIN-CONFIG 和 EMU_BOOTDEF 的值来执行特定的启动模式。值得注意的是，上述 OTP 中的自定义模式配置修改是一次性的，无法再次擦除。因此，系统提供了 EMU-BOOTPIN-CONFIG 和 EMU_BOOTDEF 用于模拟自定义启动过程，作为实际修改 DCSM OTP 之前的参考。&lt;/p&gt;
    &lt;p&gt;具体流程：如果 EMU-BOOTPIN-CONFIG.Key=0x5A，则选择自定义启动模式。芯片会根据 EMU-BOOTPIN-CONFIG.BMPSx 设置的 BMPS 引脚及其电平状态来确定启动模式。需要注意的是，如果 EMU-BOOTPIN-CONFIG.Key=0xA5，则表示芯片在连接仿真器的情况下可以进入离线启动模式，即根据 Z1-OTP-BOOTPIN-CONFIG 和 Z1-OTP-BOOTDEF 对应的值进行启动；此模式与 F2803x 在连接仿真器时将 EMU_BMODE 配置为 GetMode() 的原则一致。如果 EMU-BOOTPIN-CONFIG.Key 的值配置不正确，芯片将进入等待启动模式，陷入循环等待状态，无法完成启动过程。&lt;/p&gt;
    &lt;br /&gt;
    &lt;img style="max-height:240px;max-width:320px;" src="https://e2e.ti.com/resized-image/__size/640x480/__key/communityserver-components-multipleuploadfilemanager/7cc42a98_2D00_85c5_2D00_41ed_2D00_866e_2D00_634dd4bce887-674267-complete/pastedimage1789571170694v3.png" alt=" " /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;strong&gt;表 1 默认启动模式&lt;/strong&gt;
    &lt;br /&gt;
    &lt;a href="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/pastedimage1789628895441v4.png"&gt;&lt;img src="https://e2echina.ti.com/cfs-filesystemfile/__key/communityserver-components-secureimagefileviewer/communityserver-discussions-components-files-56/pastedimage1789628895441v4.png_2D00_640x480.png?_=639252263126048480" style="max-height: 480px;max-width: 640px;" /&gt;&lt;/a&gt;
    &lt;br /&gt;
    &lt;p&gt;如果芯片成功完成启动模式，它将通过外设加载程序，或者直接跳转到与启动模式对应的程序入口地址，以开始运行应用程序，即 main() 函数。例如，如果从 Flash 启动，它将跳转到地址 0x80000（在这种情况下，您需要在 CMD 文件中配置“codestart”部分，以链接到相应的 Flash 空间地址）。&lt;/p&gt;
    &lt;p&gt;&lt;/p&gt;
    &lt;p&gt;基于以上对F28004x芯片启动过程的介绍，我们回过头来分析连接仿真器进行调试时的复位问题。以C2000ware提供的LED程序为例：(C:\ti\c2000\C2000Ware_DigitalPower_SDK_1_02_00_00\c2000ware\device_support\f28004x\examples\led) 编写程序。根据表2中提供的Boot ROM寄存器地址，可以在内存浏览器窗口中查看EMU_BOOTPIN_CONFIG的Key值（高8位）。结果如图3所示：由于EMU_BOOTPIN_CONFIG.Key = 0xEE，芯片将进入等待启动模式。如果在复位后立即运行，反汇编窗口显示程序卡在 0x3FB02A，处于 ESTOP0 循环等待状态，该状态位于等待启动运行地址范围 (0x3FAD74 – 0x3FB0CD) 内，如图 4 所示。&lt;/p&gt;
   &lt;/div&gt;
  &lt;/div&gt;
 &lt;/div&gt;
 &lt;div&gt;
  &lt;div&gt;
   &lt;div&gt;&lt;/div&gt;
   &lt;div&gt;&lt;/div&gt;
  &lt;/div&gt;
  &lt;p&gt;&lt;strong&gt;表 2. 启动 ROM 寄存器地址&lt;/strong&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;a href="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/pastedimage1789628934808v5.png"&gt;&lt;img src="https://e2echina.ti.com/cfs-filesystemfile/__key/communityserver-components-secureimagefileviewer/communityserver-discussions-components-files-56/pastedimage1789628934808v5.png_2D00_640x480.png?_=639252263126348670" style="max-height: 480px;max-width: 640px;" /&gt;&lt;/a&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;a href="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/pastedimage1789628946583v6.png"&gt;&lt;img src="https://e2echina.ti.com/cfs-filesystemfile/__key/communityserver-components-secureimagefileviewer/communityserver-discussions-components-files-56/pastedimage1789628946583v6.png_2D00_640x480.png?_=639252263126448510" style="max-height: 480px;max-width: 640px;" /&gt;&lt;/a&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;strong&gt;图 3 显示了 EMU_BOOTPIN_CONFIG 的值&lt;/strong&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;a href="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/pastedimage1789628999817v7.png"&gt;&lt;img src="https://e2echina.ti.com/cfs-filesystemfile/__key/communityserver-components-secureimagefileviewer/communityserver-discussions-components-files-56/pastedimage1789628999817v7.png_2D00_640x480.png?_=639252263126519020" style="max-height: 480px;max-width: 640px;" /&gt;&lt;/a&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;strong&gt;图 4 程序运行后的停止位置&lt;/strong&gt;
   &lt;br /&gt;
   &lt;br /&gt;
   &lt;br /&gt;&lt;/p&gt;
  &lt;p&gt;因此，如果要在复位后立即恢复运行，解决方法是在仿真状态下正确配置启动模式。以启动到闪存为例（参见 F28004x TRM 手册 4.3.3.1），有两种方法：&lt;/p&gt;
  &lt;p&gt;1) 在 EMU_BOOTPIN_CONFIG 地址处写入 0x5AFFFFFF，并在对应于 EMU_BOOTDEF_LOW 地址的低 8 位处写入 0x03 (BOOTDEF.BOOTDEF0=0x03)&lt;/p&gt;
  &lt;p&gt;2) 如果芯片在单个引脚时可以正常工作，例如 GPIO24 和 GPIO32 都为高电平（默认从闪存启动），则写入 0xA5FFFFFF 0xD00 EMU_BOOTPIN_CONFIG 地址。&lt;/p&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  请务必同时检查以下内容：
  &lt;br /&gt;
  &lt;br /&gt;
  &lt;div&gt;
   &lt;span&gt;1)&lt;/span&gt;&lt;span&gt;&lt;strong&gt;检查 XRSn 电路&lt;/strong&gt;。&lt;/span&gt;&lt;span&gt;看门狗复位会将 XRSn 拉低 512 个 OSCCLK 周期。根据数据手册，这需要：&lt;/span&gt;
  &lt;/div&gt;
  &lt;br /&gt;
  &lt;div&gt;
   &lt;span&gt;-&lt;/span&gt;&lt;span&gt;从 XRSn 到 VDDIO 的 2.2–10 kΩ 上拉电阻；&lt;/span&gt;
  &lt;/div&gt;
  &lt;div&gt;
   &lt;span&gt;-&lt;/span&gt;&lt;span&gt;如果使用电容器，则VSS的电容器容量应为100 nF或更小；&lt;/span&gt;
  &lt;/div&gt;
  &lt;div&gt;
   &lt;span&gt;-&lt;/span&gt;&lt;span&gt;仅当外部设备驱动 XRSn 时才允许开漏驱动。
    &lt;br /&gt;
    &lt;br /&gt;&lt;/span&gt;
  &lt;/div&gt;
  &lt;div&gt;
   &lt;span&gt;2) 请注意，&lt;strong&gt;看门狗复位会清除此设备上的所有 RAM。&lt;/strong&gt;&lt;/span&gt;
  &lt;/div&gt;
  &lt;span&gt;
   &lt;br /&gt;
  &lt;/span&gt;
  &lt;br /&gt;
  问候
  &lt;br /&gt;
  阿尔皮特
 &lt;/div&gt;
 &lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>TMS320F280039C: 无法使用ccs内置的syscfg生成mcu control center功能</title><link>https://e2echina.ti.com/thread/1094583?ContentTypeID=0</link><pubDate>Tue, 15 Sep 2026 03:16:16 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:aee7f9b2-5d29-42f7-932e-2e9212ee7631</guid><dc:creator>ronghe feng</dc:creator><slash:comments>2</slash:comments><comments>https://e2echina.ti.com/thread/1094583?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094583/tms320f280039c-ccs-syscfg-mcu-control-center/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; TMS320F280039C&lt;/p&gt;&lt;p&gt;在我已有的ccs+sysccfg工程中添加mcu control center中的log功能编译时出现如下错误：&lt;br /&gt;Generating Code (Electrosurgical_knife.syscfg)...&lt;br /&gt;undefined&lt;br /&gt;TypeError: sysctlModExports.bitfieldInstanceNames[exportInfo.bitfieldInstance] is not a function&lt;br /&gt;&amp;nbsp; &amp;nbsp; at templateFunc (D:\software\ti\ccs2100\C2000Ware_26_01_00_00\utilities\transfer\.meta\gui\index.gui.xdt:137:92)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at func (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\src\pinmux\services\codeGeneration\templateRunner.ts:29:39)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at t.allowPathVisibility (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\src\pinmux\services\pathsVisibility.ts:11:10)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at t.runTemplate (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\src\pinmux\services\codeGeneration\templateRunner.ts:29:32)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at t.CodeGenerator.generate (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\src\pinmux\services\codeGeneration\codeGenerator.ts:142:21)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at iteratee (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\src\pinmux\services\codeGeneration\codeGenerator.ts:147:26)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at tA (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\node_modules\lodash\lodash.js:653:23)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at Function.map (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\node_modules\lodash\lodash.js:9621:57)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at t.CodeGenerator.generateAll (D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\src\pinmux\services\codeGeneration\codeGenerator.ts:146:12)&lt;br /&gt;&amp;nbsp; &amp;nbsp; at D:\software\ti\ccs2100\ccs\utils\sysconfig_1.28.0\dist\src\cli\cli_core.ts:133:38&lt;br /&gt;[2]gmake: Target &amp;#39;all&amp;#39; not remade because of errors.&lt;br /&gt;&lt;br /&gt;但是在导入使用D:\software\ti\ccs2100\C2000Ware_26_01_00_00\driverlib\f28003x\examples\transfer\CCS\transfer_ex1_customlog_export_sci.projectspec这个demo工程是可以正常生成和编译的，不过也有一个问题，这个demo我修改了sci输出IO就编译出错，如上述工程一样的错误，即便clean工程也无法编译。&lt;br /&gt;&lt;br /&gt;什么问题呢？&lt;br /&gt;&amp;nbsp;SDK:C2000Ware_26_01_00_00&lt;br /&gt;SYSCFG:1.28.0&lt;/p&gt;</description></item><item><title>RE: TMS320F280039C: 无法使用ccs内置的syscfg生成mcu control center功能</title><link>https://e2echina.ti.com/thread/3941503?ContentTypeID=1</link><pubDate>Thu, 17 Sep 2026 02:19:01 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:55096093-9fe4-4347-92e4-07287cdfcbcf</guid><dc:creator>ronghe feng</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3941503?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094583/tms320f280039c-ccs-syscfg-mcu-control-center/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;你好，&lt;br /&gt;使用的是CCS21安装时自带的编译器，版本是ti-cgt-c2000_25.11.1.LTS&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/3941408?ContentTypeID=1</link><pubDate>Thu, 17 Sep 2026 01:30:26 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:b000c9ee-d9bf-4090-b7d7-f8052b5ae3c1</guid><dc:creator>liu Gaosong</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3941408?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;您好，&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &lt;span style="background-color:#ff6600;"&gt;1.您是否收到两次总线关闭中断，一次是总线关闭后，一次是恢复后？还是两次都是总线关闭后的中断？&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;答：中断函数Can_ProcessLine0ISR()进入2次，Busoff产生和恢复都会进入，Can_CheckBusOffPriv()也进了2次，这看一下代码也就知道了，手册也说了Mcan_IR的BO寄存器置位1是busoff状态发生改变都会置位，&lt;span&gt;Can_ProcessLine0ISR()中断函数里面只判断了Mcan_IR寄存器，所以会进2次，Can_CheckBusOffPriv()也会进2次。&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;img style="max-height:240px;max-width:320px;" src="https://e2echina.ti.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/56/pastedimage1789607631497v1.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;img style="max-height:240px;max-width:320px;" src="https://e2echina.ti.com/resized-image/__size/640x480/__key/communityserver-discussions-components-files/56/pastedimage1789607810681v3.png" alt=" " /&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style="background-color:#ff6600;"&gt;&amp;nbsp; 2.当您配置了 CanHwObjectCount &amp;gt; 1 的 BASIC CAN 硬件对象时，请您描述一下您的负载测试条件，以便我们能够重现该问题：&lt;/span&gt;&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;span style="background-color:#ff6600;"&gt;您是否缺少发送帧或接收帧？丢失了多少条消息？&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="background-color:#ff6600;"&gt;您的 TxProcessing 和 RxProcessing 类型是什么？&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="background-color:#ff6600;"&gt;信息发送和接收的周期是什么？&lt;/span&gt;&lt;/li&gt;
&lt;li&gt;&lt;span style="background-color:#ff6600;"&gt;Tx FIFO 配置的深度是多少（即 CanHwObjectCount）？您是否还有其他专用的发送消息缓冲区？&lt;/span&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp;答：总线负载率在50%-60%之间，可以复现。&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 1、can总线上Tx报文漏发一帧&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 2、TxProcessing和Rxprocessing配置的都是interrupt&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 3、Tx报文的周期，10ms周期2帧报文，25ms周期2帧报文，50ms周期1帧报文，100ms周期2帧报文，200ms周期3帧报文，漏帧报文的周期是200ms&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 4、&lt;span&gt;CanHwObjectCount为10，还有一个TxObject是另一路CAN。&lt;/span&gt;&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>TMS320F2800137: Phase Current Sawtooth Wave</title><link>https://e2echina.ti.com/thread/1094811?ContentTypeID=0</link><pubDate>Wed, 16 Sep 2026 10:22:53 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:e08a644b-ce8c-421a-8d7c-ed85b4514b6b</guid><dc:creator>zhou qicheng</dc:creator><slash:comments>1</slash:comments><comments>https://e2echina.ti.com/thread/1094811?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094811/tms320f2800137-phase-current-sawtooth-wave/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; TMS320F2800137&lt;/p&gt;&lt;p&gt;&lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/mmexport1789552029873.png" alt="mmexport1789552029873.png" width="346" height="173" data-temp-id="mmexport1789552029873.png-208614" /&gt; &lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/IMG_5F00_20260916_5F00_131317.jpg" alt="IMG_20260916_131317.jpg" width="417" height="313" data-temp-id="IMG_20260916_131317.jpg-206115" /&gt;&lt;/p&gt;
&lt;p&gt;C:\Users\chao.zhou\TI_FUZAI\universal_motorcontrol_lab_f280013x&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; I&amp;#39;m using the official example, and the current bandwidth seems to be 200 by default. The board is a new design by the company. Right now, I found that the phase current has serious ripple, causing the sampled amplitude to be asymmetrical. How can I tell if it&amp;#39;s caused by software or hardware? I tried using voltage open-loop as well, and it&amp;#39;s still the same.&lt;/p&gt;</description></item><item><title>RE: TMS320F2800137: Phase Current Sawtooth Wave</title><link>https://e2echina.ti.com/thread/3941264?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2026 23:32:26 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:f5586e0c-f0cf-44fc-8c25-695b560efec8</guid><dc:creator>Alice</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3941264?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094811/tms320f2800137-phase-current-sawtooth-wave/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;您好，&lt;br /&gt; 已经收到了您的案例，调查需要些时间，感谢您的耐心等待。&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/3940554?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2026 14:15:42 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:9790661d-b82f-4858-b21a-c35bbc705e19</guid><dc:creator>Joseph Casuga</dc:creator><slash:comments>1</slash:comments><comments>https://e2echina.ti.com/thread/3940554?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div lang="zh-x-mtfrom-en"&gt;
 &lt;p&gt;你好，&lt;/p&gt;
 &lt;p&gt;以下转述MCAL专家提出的问题：&lt;/p&gt;
 &lt;p&gt;请您提供以下信息，以便我们进一步分析问题？&lt;/p&gt;
 &lt;ol&gt;
  &lt;li&gt;您是否收到两次总线关闭中断，一次是总线关闭后，一次是恢复后？还是两次都是总线关闭后的中断？&lt;/li&gt;
  &lt;li&gt;当您配置了 CanHwObjectCount &amp;gt; 1 的 BASIC CAN 硬件对象时，请您描述一下您的负载测试条件，以便我们能够重现该问题：
   &lt;ol&gt;
    &lt;li&gt;您是否缺少发送帧或接收帧？丢失了多少条消息？&lt;/li&gt;
    &lt;li&gt;您的 TxProcessing 和 RxProcessing 类型是什么？&lt;/li&gt;
    &lt;li&gt;信息发送和接收的周期是什么？&lt;/li&gt;
    &lt;li&gt;Tx FIFO 配置的深度是多少（即 CanHwObjectCount）？您是否还有其他专用的发送消息缓冲区？&lt;/li&gt;
   &lt;/ol&gt;&lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;问候，&lt;/p&gt;
 &lt;p&gt;约瑟夫&lt;/p&gt;
 &lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/3940552?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2026 12:30:09 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:23a464b6-2ca3-4d42-a561-def79df4ff3c</guid><dc:creator>Joseph Casuga</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3940552?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div lang="zh-x-mtfrom-en"&gt;
 &lt;p&gt;您好，我已经联系了专家，并将此问题分配给相关人员处理。&lt;/p&gt;
 &lt;p&gt;问候，&lt;/p&gt;
 &lt;p&gt;约瑟夫&lt;/p&gt;
 &lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TMS320F280049: 关于280049的bootloader功能的问题</title><link>https://e2echina.ti.com/thread/3940540?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2026 08:59:49 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:3f333d1b-c66f-4e55-98f9-777392bee097</guid><dc:creator>chen xinyu</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3940540?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094095/tms320f280049-280049-bootloader/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;您好，请问可以帮忙解决一下这个问题嘛，麻烦了&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TMS320F28374S: TMS320F28374S: periodic STA/STL RAM diagnostics — CERRTHRES / FMEDA Diagnostic Used in Application, and STA_MARCH_COPY false-fail risk</title><link>https://e2echina.ti.com/thread/3940502?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2026 01:31:12 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:8f2a21dc-7fdc-4815-807c-99d9198222be</guid><dc:creator>Rich Chen</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3940502?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1092239/tms320f28374s-tms320f28374s-periodic-sta-stl-ram-diagnostics-cerrthres-fmeda-diagnostic-used-in-application-and-sta_march_copy-false-fail-risk/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Alice,&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;This is TI field FAE.&lt;/p&gt;
&lt;p&gt;Is there any update or finding on customer questions since it has been two weeks?&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;I see the status show waiting for customer.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Any further information or input you need from customer side? I can help to get inputs.&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;BR, Rich&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>TMS320F28374S: TMS320F28374S: periodic STA/STL RAM diagnostics — CERRTHRES / FMEDA Diagnostic Used in Application, and STA_MARCH_COPY false-fail risk</title><link>https://e2echina.ti.com/thread/1092239?ContentTypeID=0</link><pubDate>Wed, 02 Sep 2026 03:03:18 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:14e51a24-298d-4d14-bcba-db8deeace287</guid><dc:creator>jason Su</dc:creator><slash:comments>2</slash:comments><comments>https://e2echina.ti.com/thread/1092239?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1092239/tms320f28374s-tms320f28374s-periodic-sta-stl-ram-diagnostics-cerrthres-fmeda-diagnostic-used-in-application-and-sta_march_copy-false-fail-risk/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;Device: TMS320F28374S&lt;br /&gt;Software: C2000 SafeTI Diagnostic Library / Self-Test Application (STA) v1.00.02.00&lt;br /&gt;Use case: industrial, IEC 61508&lt;br /&gt;Periodic calls (runtime / PEST):&lt;br /&gt; STA_RAM_DETECT -&amp;gt; STL_RAM_detectError()&lt;br /&gt; STA_MARCH_COPY -&amp;gt; STL_March_testRAMCopy() + STL_March_checkErrorStatus()&lt;/p&gt;
&lt;p&gt;We recently received several field reports of periodic RAM diagnostic FAIL.&lt;br /&gt;Below is how we call STA/STL at runtime; we have a few questions on usage,&lt;br /&gt;pass/fail severity, FMEDA, and possible March false FAIL.&lt;/p&gt;
&lt;p&gt;Periodic entry (application)&lt;/p&gt;
&lt;p&gt;[embed:dc8ab71f-3b98-42d9-b0f6-e21e02a0f8e2:fb74206e-476e-472d-95e8-1b3141780e0f:type=c_cpp&amp;text=%2F%2A%20first%20%2A%2F%0D%0Asta_tests_testdevice_handle%28STA_RAM_DETECT%29%3B%0D%0A%2F%2A%20immediately%20after%20%2A%2F%0D%0Asta_tests_testdevice_handle%28STA_MARCH_COPY%29%3B]&lt;/p&gt;
&lt;p&gt;A. STA_RAM_DETECT (Dummy Read / ECC-Parity observation)&lt;/p&gt;
&lt;p&gt;Each STA_RAM_DETECT call dummy-reads one SRAM block (32-bit reads), then&lt;br /&gt;rotates through the on-chip SRAM map.&lt;/p&gt;
&lt;p&gt;Per SPRS881K Table 7-6:&lt;br /&gt; ECC blocks: M0, D0, D1 -&amp;gt; SPRUI78C SRAM1 (6.3.9)&lt;br /&gt; Parity blocks: LSx, GSx, MSGRAM -&amp;gt; SPRUI78C SRAM2 (6.3.10)&lt;br /&gt;The Dummy Read itself is the method in SPRUI78C 6.3.3 (SRAM7).&lt;/p&gt;
&lt;p&gt;Sectors in rotation (STA init):&lt;br /&gt; M0, M1, D0, D1, LS0-LS5, GS0-GS11, CLA-to-CPU MSGRAM, CPU-to-CLA MSGRAM&lt;br /&gt;Skipped after increment (same as March):&lt;br /&gt; - M1 (stack)&lt;br /&gt; - GS3 (STA variables / March copy buffer)&lt;br /&gt; - CLA-to-CPU MSGRAM (CPU has no write access)&lt;/p&gt;
&lt;p&gt;From sta_user.c (STA_User_initRAMErrDetectTest) + sta_tests.c:&lt;/p&gt;
&lt;p&gt;[embed:dc8ab71f-3b98-42d9-b0f6-e21e02a0f8e2:713093f0-5d64-427f-af88-4774050c4638:type=c_cpp&amp;text=STA_User_ramErrDetectObj.corrErrorThreshold%20%3D%201U%3B%0D%0ASTA_User_ramErrDetectObj.corrErrorIntVector%20%3D%20STA_Util_corrErrorISR_RAM%3B%0D%0ASTA_User_ramErrDetectObj.uncNMIVector%20%20%20%20%20%20%20%3D%20STA_Util_uncorrErrorNMIISR_RAM%3B%0D%0ASTA_User_ramErrDetectObj.startAddress%20%3D%0D%0A%20%20%20%20STA_RAMTest_StartAddr%5BSTA_User_ramErrDetect_Count%5D%3B%0D%0ASTA_User_ramErrDetectObj.endAddress%20%20%20%3D%0D%0A%20%20%20%20STA_RAMTest_EndAddr%5BSTA_User_ramErrDetect_Count%5D%3B%0D%0A%2F%2A%20then%20advance%20STA_User_ramErrDetect_Count%3B%20skip%20indices%20for%20M1%20%2F%20GS3%20%2F%0D%0A%20%20%20CLA-to-CPU%20MSGRAM%20%2A%2F%0D%0A%0D%0AMemCfg_setTestMode%28memSection%2C%20MEMCFG_TEST_FUNCTIONAL%29%3B%0D%0A%0D%0AtestStatus%20%3D%20STL_RAM_detectError%28STA_User_ramErrDetectHandle%29%3B%0D%0Aif%20%28STL_RAM_DETECT_PASS%20%3D%3D%20testStatus%29%0D%0A%7B%0D%0A%20%20%20%20%2F%2A%20PASS%20%2A%2F%0D%0A%7D%0D%0Aelse%0D%0A%7B%0D%0A%20%20%20%20%2F%2A%20FAIL%20-%3E%20enter%20safe%20state%20%2A%2F%0D%0A%7D]&lt;/p&gt;
&lt;p&gt;From stl_ram.c STL_RAM_detectError() (Diag Lib v1.00.02.00), as we read it:&lt;/p&gt;
&lt;p&gt;[embed:dc8ab71f-3b98-42d9-b0f6-e21e02a0f8e2:70294488-2ebb-4813-b87e-ca1001b03586:type=c_cpp&amp;text=%2F%2A%20clear%20status%20%2F%20interrupt%20flags%20%28also%20clears%20single-bit%20error%20count%29%20%2A%2F%0D%0AHWREG%28...CERRCLR%29%20%20%3D%200xFFFFFFFFU%3B%0D%0AHWREG%28...CEINTCLR%29%20%3D%20...%3B%0D%0AHWREG%28...UCERRCLR%29%20%3D%200xFFFFFFFFU%3B%0D%0A%0D%0AMemCfg_setCorrErrorThreshold%28ramErrDetectHandle-%3EcorrErrorThreshold%29%3B%0D%0A%0D%0A%2F%2A%20dummy-read%2032%20bits%20at%20a%20time%20from%20startAddress%20to%20endAddress%20%2A%2F%0D%0Afor%20%28address%20%3D%20start%3B%20address%20%3C%3D%20end%3B%20address%20%2B%3D%202U%29%0D%0A%20%20%20%20dummyRead%20%3D%20HWREG%28address%29%3B%0D%0A%0D%0AramErrDetectHandle-%3EcorrErrorCount%20%3D%20MemCfg_getCorrErrorCount%28%29%3B%0D%0A%2F%2A%20corrErrorCount%20is%20stored%20but%20not%20used%20for%20pass%2Ffail%20%2A%2F%0D%0A%0D%0Aif%20%28%28%28MemCfg_getUncorrErrorStatus%28%29%20%26%20MEMCFG_UCERR_CPUREAD%29%20%21%3D%200U%29%20%7C%7C%0D%0A%20%20%20%20%28%28MemCfg_getCorrErrorStatus%28%29%20%20%20%26%20MEMCFG_CERR_CPUREAD%29%20%20%21%3D%200U%29%29%0D%0A%20%20%20%20testStatus%20%3D%20STL_RAM_DETECT_FAIL%3B%0D%0Aelse%0D%0A%20%20%20%20testStatus%20%3D%20STL_RAM_DETECT_PASS%3B]&lt;/p&gt;
&lt;p&gt;So (please confirm): a hardware-corrected 1-bit ECC data error still sets&lt;br /&gt;CERRFLG / CPUREAD and returns FAIL; we do not use CERRCNT as the criterion.&lt;/p&gt;
&lt;p&gt;We understand from the documents (please confirm):&lt;br /&gt; - SPRUHX5H 3.11.1.7: a 1-bit error in one 16-bit ECC data word is corrected&lt;br /&gt; and written back; address ECC, ECC double-bit, and all parity errors&lt;br /&gt; are uncorrectable (UCERR / NMI). Parity memories have no correctable path.&lt;br /&gt; - After correction, CERRFLG is still set and CERRCNT increments.&lt;br /&gt; - SPRUHX5H 3.11.1.7.2: CERRTHRES controls when the correctable-error&lt;br /&gt; interrupt is generated (if enabled), not whether a flag is set.&lt;br /&gt; - SPRUHX5H 3.6.6: &amp;quot;A typical threshold setting to avoid triggering on&lt;br /&gt; transient errors which are corrected, but identify persistent faults is 10.&amp;quot;&lt;/p&gt;
&lt;p&gt;B. STA_MARCH_COPY (non-destructive March13N) &amp;mdash; our implementation&lt;/p&gt;
&lt;p&gt;This follows Diag Lib UG v1.00.02.00 Section 5.15 and SPRACB9:&lt;br /&gt; STL_March_testRAMCopy() copies the window, writes/reads the March patterns,&lt;br /&gt; then restores the original contents.&lt;br /&gt; STL_March_checkErrorStatus() then reads CERRFLG / UCERRFLG.&lt;/p&gt;
&lt;p&gt;1) Periodic call order&lt;br /&gt; STA_RAM_DETECT (first)&lt;br /&gt; STA_MARCH_COPY (immediately after)&lt;/p&gt;
&lt;p&gt;2) Sectors / window&lt;br /&gt; Each call tests one window only:&lt;br /&gt; length = 63 -&amp;gt; 64 x 32-bit = 128 x 16-bit&lt;br /&gt; Address advances inside the current sector (AddrCnt); when the sector&lt;br /&gt; end is reached, move to the next sector.&lt;/p&gt;
&lt;p&gt;Tested:&lt;br /&gt; M0, D0, D1,&lt;br /&gt; LS0-LS5,&lt;br /&gt; GS0-GS2, GS4-GS11,&lt;br /&gt; CPU-to-CLA MSGRAM&lt;/p&gt;
&lt;p&gt;Skipped:&lt;br /&gt; M1 (stack)&lt;br /&gt; GS3 (STA variables / copy buffer STA_User_ramTestGS3Data)&lt;br /&gt; CLA-to-CPU MSGRAM (CPU cannot write)&lt;/p&gt;
&lt;p&gt;3) Patterns on the same window (fixed order inside one call)&lt;br /&gt; 1. STL_MARCH_PATTERN_ONE -&amp;gt; STL_March_checkErrorStatus()&lt;br /&gt; 2. STL_MARCH_PATTERN_TWO -&amp;gt; check (CERR/UCERR cleared between patterns)&lt;br /&gt; 3. STL_MARCH_PATTERN_THREE -&amp;gt; check&lt;br /&gt; 4. STL_MARCH_PATTERN_FOUR -&amp;gt; check&lt;br /&gt; Any non-PASS check is ORed into FAIL.&lt;/p&gt;
&lt;p&gt;4) Source &amp;mdash; init (sta_user.c STA_User_initMarch), simplified:&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;uint32_t addrInterval =&lt;br /&gt; sizeof(STA_User_ramTestGS3Data) / sizeof(uint16_t); /* 128 x 16-bit */&lt;/p&gt;
&lt;p&gt;STA_User_marchErrorObj.address =&lt;br /&gt; STA_RAMTest_Addr[STA_User_RamMarchCopy_Count]&lt;br /&gt; + STA_User_RamMarchCopy_AddrCnt * addrInterval;&lt;br /&gt;STA_User_marchErrorObj.ramSection =&lt;br /&gt; STA_RAMTest_Sect[STA_User_RamMarchCopy_Count];&lt;br /&gt;STA_User_marchErrorObj.xorMask = 0x00000000U;&lt;br /&gt;STA_User_marchErrorObj.testMode = MEMCFG_TEST_FUNCTIONAL;&lt;br /&gt;/* then advance AddrCnt / sector count; skip M1, GS3, CLA-to-CPU MSGRAM */&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;5) Source &amp;mdash; body (sta_tests.c case STA_MARCH_COPY), simplified:&lt;/p&gt;
&lt;p&gt;[embed:dc8ab71f-3b98-42d9-b0f6-e21e02a0f8e2:02436f95-037a-4d61-a0eb-21cdc6ca7c79:type=c_cpp&amp;text=MemCfg_clearUncorrErrorStatus%28MEMCFG_CERR_CPUREAD%20%7C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20MEMCFG_CERR_DMAREAD%20%7C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20MEMCFG_CERR_CLA1READ%29%3B%0D%0AMemCfg_clearCorrErrorStatus%28MEMCFG_CERR_CPUREAD%20%7C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20MEMCFG_CERR_DMAREAD%20%7C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20MEMCFG_CERR_CLA1READ%29%3B%0D%0A%0D%0ASTA_User_initMarch%28%29%3B%0D%0ASetup_March_Interrupt%28%29%3B%0D%0A%0D%0A%2F%2A%20pattern%20ONE%20%28TWO%20%2F%20THREE%20%2F%20FOUR%20are%20the%20same%3B%20clear%20CERR%2FUCERR%20between%29%20%2A%2F%0D%0ASTL_March_testRAMCopy%28STL_MARCH_PATTERN_ONE%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20STA_User_marchErrorObj.address%2C%0D%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%2063U%2C%20%28uint32_t%29STA_User_ramTestGS3Data%29%3B%0D%0AreturnVal%20%7C%3D%20STL_March_checkErrorStatus%28%29%3B%0D%0A%2F%2A%20then%20PATTERN_TWO%20%2F%20THREE%20%2F%20FOUR%20the%20same%20way%20%2A%2F]&lt;/p&gt;
&lt;p&gt;STA_Tests_testDevice() runs from Flash (not from the RAM under test).&lt;br /&gt;The copy buffer is in GS3, which is excluded from the DUT.&lt;br /&gt;We do not halt CLA or DMA around this March window during PEST.&lt;/p&gt;
&lt;p&gt;Questions&lt;/p&gt;
&lt;p&gt;Q1. Intended use&lt;br /&gt; For periodic (PEST) RAM diagnostics on F28374S, is the combination below&lt;br /&gt; the intended STA/STL usage? (SPRUI78C 6.3.3 / 6.3.9 / 6.3.10 / 6.3.12;&lt;br /&gt; Diag Lib UG 5.15)&lt;br /&gt; STA_RAM_DETECT -&amp;gt; SRAM1 / SRAM2 observation, and/or SRAM7 data scrubbing&lt;br /&gt; STA_MARCH_COPY -&amp;gt; SRAM3 software test of SRAM (non-destructive March13N)&lt;br /&gt; Is anything missing or incorrectly applied in the code above?&lt;/p&gt;
&lt;p&gt;Q2. Correctable vs uncorrectable in STL_RAM_detectError()&lt;br /&gt; The API returns FAIL for both correctable and uncorrectable flags.&lt;br /&gt; For ECC memories (M0 / D0 / D1), may the application tolerate a bounded&lt;br /&gt; number of correctable errors (hardware already corrected and wrote back)&lt;br /&gt; and only enter the safe state on uncorrectable errors, or after the&lt;br /&gt; correctable count reaches a threshold?&lt;br /&gt; We understand this does not apply to parity memories (LSx / GSx / MSGRAM),&lt;br /&gt; where every error is uncorrectable.&lt;/p&gt;
&lt;p&gt;Q3. Role of corrErrorThreshold = 1&lt;br /&gt; Does corrErrorThreshold / CERRTHRES only control the correctable-error&lt;br /&gt; interrupt (SPRUHX5H 3.11.1.7.2), and not the return value of&lt;br /&gt; STL_RAM_detectError()?&lt;br /&gt; In other words: changing 1 -&amp;gt; 10 would change interrupt timing only,&lt;br /&gt; and the API would still FAIL on the first CERRFLG?&lt;/p&gt;
&lt;p&gt;Q4. FMEDA / threshold = 10&lt;br /&gt; If we react only when CERRCNT &amp;gt;= 10 on ECC memories:&lt;br /&gt; a) Is that the intended use of the typical value in SPRUHX5H 3.6.6?&lt;br /&gt; b) Does TI recommend 10 for industrial / IEC 61508, or another value?&lt;br /&gt; c) Versus treating every CERRFLG as FAIL, do the FMEDA&lt;br /&gt; &amp;quot;Diagnostic Used in Application&amp;quot; settings need to change?&lt;br /&gt; Our current FMEDA &amp;quot;Diagnostic Used in Application&amp;quot; settings for RAM System:&lt;br /&gt; SRAM1 SRAM ECC = 1&lt;br /&gt; SRAM2 SRAM Parity = 1&lt;br /&gt; SRAM3 Software Test of SRAM = 0&lt;br /&gt; SRAM7 Data scrubbing = 0&lt;br /&gt; If we change the application reaction for correctable ECC to a&lt;br /&gt; count-based threshold, do these Diagnostic Used in Application&lt;br /&gt; values need to change (especially SRAM1 / SRAM7)?&lt;/p&gt;
&lt;p&gt;Q5. STA_MARCH_COPY false-fail risk&lt;br /&gt; Given the sector list, pattern order, and source above:&lt;br /&gt; - STA wrapper in Flash&lt;br /&gt; - M1 / GS3 / CLA-to-CPU MSGRAM skipped&lt;br /&gt; - copy buffer in GS3&lt;br /&gt; - CLA / DMA not halted during the March window&lt;br /&gt; Can STL_March_testRAMCopy() still produce a false FAIL by writing /&lt;br /&gt; restoring diagnostic state, or if CLA / DMA / an ISR accesses the same&lt;br /&gt; window during the test?&lt;br /&gt; Which additional regions or concurrent-access constraints does TI&lt;br /&gt; require for PEST use of STL_March_testRAMCopy()?&lt;/p&gt;
&lt;p&gt;We appreciate your guidance on the intended use, FMEDA Diagnostic Used in&lt;br /&gt;Application settings, and whether our March implementation can false-fail.&lt;br /&gt;We would rather keep the diagnostics as specified than invent a looser&lt;br /&gt;pass/fail rule.&lt;/p&gt;</description></item><item><title>RE: F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/3940501?ContentTypeID=1</link><pubDate>Wed, 16 Sep 2026 01:28:02 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:5d69ac27-0840-4a5d-b94c-500c79ddd6c4</guid><dc:creator>liu Gaosong</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3940501?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;你好，希望尽快确认以上2个问题，例如问题1，要是带上Autosar的话，肯定不会按照这个临时方案处理的。&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: TMS320F28027F: 28027F  的TZ1 问题</title><link>https://e2echina.ti.com/thread/3940122?ContentTypeID=1</link><pubDate>Tue, 15 Sep 2026 20:15:26 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:786ad5df-5c9c-46ed-aad4-b1414f7b3301</guid><dc:creator>Allison Nguyen</dc:creator><slash:comments>0</slash:comments><comments>https://e2echina.ti.com/thread/3940122?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094387/tms320f28027f-28027f-tz1/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div lang="zh-x-mtfrom-en"&gt;
 &lt;p&gt;您好，有几个背景问题：&lt;/p&gt;
 &lt;ol&gt;
  &lt;li&gt;这段代码是新写的，您遇到这个问题了吗？还是您发现这段旧代码/现有代码出现了新问题（代码是否有任何更改）？&lt;/li&gt;
  &lt;li&gt;您能否分享一下您的配置？&lt;/li&gt;
  &lt;li&gt;您是否对比过 instaspin 和您的 PWM 配置，以检查这些差异可能会如何影响其性能？&lt;/li&gt;
  &lt;li&gt;跳闸问题（存在跳闸条件但 PWM 未跳闸）发生的频率是多少？&lt;/li&gt;
 &lt;/ol&gt;
 &lt;p&gt;此致，&lt;/p&gt;
 &lt;p&gt;艾莉森&lt;/p&gt;
 &lt;div style="clear:both;"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>TMS320F28027F: 28027F  的TZ1 问题</title><link>https://e2echina.ti.com/thread/1094387?ContentTypeID=0</link><pubDate>Mon, 14 Sep 2026 02:20:49 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:ca8f1ddb-3892-4d16-8a17-da242e854cc5</guid><dc:creator>Lance Zhang</dc:creator><slash:comments>2</slash:comments><comments>https://e2echina.ti.com/thread/1094387?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094387/tms320f28027f-28027f-tz1/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; TMS320F28027F&lt;/p&gt;&lt;p&gt;&lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/0724.DS1Z_5F00_QuickPrint1.png" alt="DS1Z_QuickPrint1.png" data-temp-id="DS1Z_QuickPrint1.png-55186" /&gt;&lt;/p&gt;
&lt;p&gt;我的配置几乎与instaSPIN 的配置一样 但是在实际应用过程中发现&amp;nbsp; TZ的保护偶尔会失效&amp;nbsp; 如图 通道2（青色）为 TZ1 信号（与DSP引脚直通的地方），通道4（深蓝色）为当前电流，通道1（黄色）与通道3（玫红色）为 PWM1 的上下桥出，测试位置为IGBT的GE端。TZ的低电平超过20us ，但是未触发&amp;nbsp; 我不知道是什么原因。这种现象比较偶然。&lt;/p&gt;
&lt;p&gt;&amp;nbsp; GPIO_setPullUp(obj-&amp;gt;gpioHandle,GPIO_Number_12,GPIO_PullUp_Enable);&lt;br /&gt;&amp;nbsp; GPIO_setQualificationPeriod(obj-&amp;gt;gpioHandle,GPIO_Number_12,5);&lt;br /&gt;&amp;nbsp; GPIO_setQualification(obj-&amp;gt;gpioHandle,GPIO_Number_12,GPIO_Qual_ASync);&amp;nbsp;&lt;br /&gt;&amp;nbsp; GPIO_setMode(obj-&amp;gt;gpioHandle, GPIO_Number_12, GPIO_12_Mode_TZ1_NOT);&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp; for (cnt = 0; cnt &amp;lt; 3; cnt++)&lt;br /&gt;&amp;nbsp; {&lt;br /&gt;// &amp;nbsp; &amp;nbsp;PWM_enableTripZoneSrc(obj-&amp;gt;pwmHandle[cnt], PWM_TripZoneSrc_CycleByCycle_TZ6_NOT);&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; PWM_enableTripZoneSrc(obj-&amp;gt;pwmHandle[cnt], PWM_TripZoneSrc_OneShot_TZ1_NOT);&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; // What do we want the OST/CBC events to do?&lt;br /&gt;&amp;nbsp; &amp;nbsp; // TZA events can force EPWMxA&lt;br /&gt;&amp;nbsp; &amp;nbsp; // TZB events can force EPWMxB&lt;/p&gt;
&lt;p&gt;&amp;nbsp; &amp;nbsp; PWM_setTripZoneState_TZA(obj-&amp;gt;pwmHandle[cnt], PWM_TripZoneState_EPWM_Low);&lt;br /&gt;&amp;nbsp; &amp;nbsp; PWM_setTripZoneState_TZB(obj-&amp;gt;pwmHandle[cnt], PWM_TripZoneState_EPWM_Low);&lt;br /&gt;&amp;nbsp; }&lt;/p&gt;</description></item><item><title>RE: F29H859TU-Q1: F29 Can发送和Busoff中断处理问题</title><link>https://e2echina.ti.com/thread/3939988?ContentTypeID=1</link><pubDate>Tue, 15 Sep 2026 19:09:59 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:ef216e3a-51ae-461f-8e23-76db3848157f</guid><dc:creator>Joseph Casuga</dc:creator><slash:comments>1</slash:comments><comments>https://e2echina.ti.com/thread/3939988?ContentTypeID=1</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094397/f29h859tu-q1-f29-can-busoff/rss?ContentTypeId=0</wfw:commentRss><description>&lt;div lang="zh-x-mtfrom-en"&gt;
 &lt;p&gt;你好，&lt;/p&gt;
 [quote userid="675191" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000-microcontrollers---internal/f/c2000-microcontrollers---internal-forum/1682154/f29h859tu-q1-f29-can-transmission-and-busoff-interruption-handling-issues"]问题 1：在 F29H85x 中，Busoff 中断仅检查 Mcan_IR 寄存器。Busoff 状态的任何变化都会触发中断，导致每个 Busoff 中断产生两个中断，这两个中断都会向上层报告（即使在第二个中断期间，Busoff 状态也会恢复，即 MCan_PSR_BO 为 0）。这不符合规范。然而，在总线关闭轮询期间，首先会检查 MCan_PSR_BO 寄存器，只有在确认 MCan_PSR_BO 为 1 后，才会将报告发送到上层。静态中断代码缺少 MCan_PSR_BO 状态检查。
 &lt;p&gt;中断路径中可能存在断点。MCAN 硬件会在总线关闭事件（PSR_BO 变为 1）和恢复事件（PSR_BO 变为 0）时都设置 IR 总线关闭标志，因此，如果 ISR 中没有 PSR_BO 检查，这两个事件都会被上报到上层。轮询路径通过在报告前检查 PSR_BO 是否等于 1 来正确处理这种情况——中断路径也应该这样做。我会将此问题转发给我们的 MCAL 专家，以便他们进行确认。同时，作为一种临时解决方案，您可以在应用程序级总线关闭回调中添加 PSR_BO == 1 检查，以过滤掉错误的恢复通知。&lt;/p&gt;
 [quote userid="675191" url="~/support/microcontrollers/c2000-microcontrollers-group/c2000-microcontrollers---internal/f/c2000-microcontrollers---internal-forum/1682154/f29h859tu-q1-f29-can-transmission-and-busoff-interruption-handling-issues"]问题 2：对于 F29H85x，当将 Mcal Can 邮箱类型配置为 BASIC_CAN 且 CanHwObjectCount 不为 1 时，在消息发送周期的负载测试期间，发现存在丢帧现象。这是因为请求发送消息时读取的空闲对象索引与最终发送时使用的索引不一致，导致消息错误。将 CanHwObjectCount 改为 1 解决了这个问题，但是为什么当 CanHwObjectCount 大于 1 时仍然会出现丢帧问题？
 &lt;p&gt;在选择空闲的 TX 缓冲区和实际写入之间可能存在竞争条件。当 CanHwObjectCount &amp;gt; 1 时，驱动程序会在索引 X 处找到一个空闲缓冲区，但当 Can_WriteRamPriv() 执行时，来自另一个任务的并发发送请求可能已经占用了该缓冲区。因此，最终写入时使用的索引与最初选择的索引不匹配，导致消息错误或丢失。建议使用 CanHwObjectCount = 1，这样就只有一个缓冲区，索引也确定，从而避免竞争条件。我也会将此问题转发给 MCAL 团队，以便他们进行调查。&lt;/p&gt;
 &lt;p&gt;问候，&lt;/p&gt;
 &lt;p&gt;约瑟夫&lt;/p&gt;
 &lt;p&gt;&lt;/p&gt;
 &lt;div style="clear:both;"&gt;&lt;/div&gt;
[/quote][/quote]&lt;/div&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>TMS320F280049C: ADC采样误差</title><link>https://e2echina.ti.com/thread/1094415?ContentTypeID=0</link><pubDate>Mon, 14 Sep 2026 10:37:23 GMT</pubDate><guid isPermaLink="false">91561404-af28-475a-b96b-cb6cbaadd097:1bb6c361-337a-44c6-b5e0-6670382dc8c1</guid><dc:creator>John Pan</dc:creator><slash:comments>2</slash:comments><comments>https://e2echina.ti.com/thread/1094415?ContentTypeID=0</comments><wfw:commentRss>https://e2echina.ti.com/support/microcontrollers/c2000/f/c2000-microcontrollers-forum/1094415/tms320f280049c-adc/rss?ContentTypeId=0</wfw:commentRss><description>&lt;p&gt;&lt;b&gt;Part Number:&lt;/b&gt; TMS320F280049C&lt;/p&gt;&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;如下图，在C2管脚上输入1.7V电压，ADC读数最大值为2224，最小值为2103，相差100多&lt;/p&gt;
&lt;p&gt;这个误差属于正常？还是过大了？&amp;nbsp; &amp;nbsp;是不是ADC有什么配置可以让误差缩小？&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://e2echina.ti.com/cfs-file/__key/communityserver-discussions-components-files/56/7444.image.png" alt="image.png" data-temp-id="image.png-322700" /&gt;&lt;/p&gt;</description></item></channel></rss>