<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[SPI 读取在定时器中调用异常]]></title><description><![CDATA[<p dir="auto">我这边环境是 YTM32B1MC0 SDK 1_4_0</p>
<p dir="auto">然后我这边使用SPI读值的时候发问题：<br />
SPI_DRV_MasterTransferBlocking    Task任务中调用的时候读值正常；但是放到lpTMR0_IRQHandler的时候，直接导致程序崩溃；<br />
SPI_DRV_MasterTransferPolling    放到lpTMR0_IRQHandler的时候读值，但是陀螺值偶尔变成346.34765625，没法用；</p>
<p dir="auto">想问下我在定时器SPI采集数据，有什么更好的方式吗；目前暂时还是 SPI_DRV_MasterTransferBlocking   然后在 Task任务采集，不过由于新算法耗时较长，所以要把采集放到定时器保证采集的稳定；</p>
]]></description><link>https://forum.ytmicro.com/topic/2170/spi-读取在定时器中调用异常</link><generator>RSS for Node</generator><lastBuildDate>Mon, 10 Aug 2026 05:55:30 GMT</lastBuildDate><atom:link href="https://forum.ytmicro.com/topic/2170.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 10 Aug 2026 03:17:48 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to SPI 读取在定时器中调用异常 on Mon, 10 Aug 2026 03:48:00 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="https://forum.ytmicro.com/uid/23">Diga</a> 也就是建议我新写个优先级高点任务来专门采集是吗，因为算法执行耗时3ms，采集要求频率1KHz, 所以前面才说切定时器执行采集。</p>
]]></description><link>https://forum.ytmicro.com/post/9382</link><guid isPermaLink="true">https://forum.ytmicro.com/post/9382</guid><dc:creator><![CDATA[yu_10086]]></dc:creator><pubDate>Mon, 10 Aug 2026 03:48:00 GMT</pubDate></item><item><title><![CDATA[Reply to SPI 读取在定时器中调用异常 on Mon, 10 Aug 2026 03:24:35 GMT]]></title><description><![CDATA[<p dir="auto">不要在中断里调用 SPI 传输。Blocking 方式是阻塞式的，会等 SPI 中断来传输，或者 Systick 中断提醒超时，如果你放在中断里调用，且优先级一致，那么会发生 MCU 无法响应 SPI 中断与 Systick 中断，自然卡死。<br />
正确的做法是在 timer 中断里刷新某一个状态，主循环根据这个状态去调用传输函数。中断里不要占用太长时间</p>
]]></description><link>https://forum.ytmicro.com/post/9381</link><guid isPermaLink="true">https://forum.ytmicro.com/post/9381</guid><dc:creator><![CDATA[Diga]]></dc:creator><pubDate>Mon, 10 Aug 2026 03:24:35 GMT</pubDate></item></channel></rss>