英飞凌TC397 MCU的SPI-DMA配置要点详解
创作时间:
作者:
@小白创作中心
英飞凌TC397 MCU的SPI-DMA配置要点详解
引用
CSDN
1.
https://blog.csdn.net/Wendywoody/article/details/142742610
本文将详细介绍英飞凌TC397 MCU的SPI-DMA配置要点,包括DMA的工作原理、传输过程、通道优先级以及SPI模块的配置方法。对于从事嵌入式系统开发的技术人员来说,本文具有较高的参考价值。
DMA(Direct Memory Access)作为独立控制器,可以理解为CPU外包,主要承担数据搬运操作。该数据搬运无需CPU干预,使得数据可在不占用CPU资源下完成数据传输任务,任务完成后通过中断的方式通知CPU,以便CPU进行必要的同步处理。
DMA传输过程可以是从内存到内存,从外设到内存,或是内存到外设三种方式。
软件针对每个channel提前配置相应的transaction control set,简称TCS,DMA通道请求与仲裁中心将会根据来自ICU的中断请求优先级来决定哪个DMA请求将会被优先处理。对于英飞凌DMA而言,DMA通道号就是其优先级,通道号越大优先级越高。
Move engine则是用来真正执行搬运动作的单元,在搬运过程中会根据提前配置好的TCS来决定是否响应中断请求或何时响应,如有中断产生,则会传递到IR模块进行处理。
QSPI TX/RX中断优先级与DMA通道号映射
QSPI TX/RX中断服务程序类别映射
- ISR CATEGORY: category_0
- mapping: DMA
SPI异步传输涉及的中断
如果通过DMA实现SPI的异步传输,涉及到7个中断,其中两个DMA中断,5个CPU中断。(参考Aurix TC3xx系列MCU SPI模块配置方法(二)_英飞凌单片机spi dma-CSDN博客)
各中断源计算参考
- SPI:
- DMA:
SPI任务优先级设置
SPI任务优先级设置参考SPI093:0,其中0表示最低优先级,3表示最高优先级。
SPI通用级别配置
- level0: 驱动程序仅处理所有可用SPI总线QSPIX上简单同步传输
- level1: 驱动程序仅处理所有可用SPI总线QSPIX上简单异步传输
- level2: 驱动的增强行为,将处理同步和异步传输
初始化处理步骤
- 调用
Spi_Init函数进行初始化 - 在使用SPI的外设驱动初始化函数中,调用
Spi_SetAsyncMode(SPI_ASYNC_MODE_INTERRUPT);
数据发送和接收配置
通过Spi_SetupEB函数设置发送和接收数据,然后通过Spi_AsyncTransmit函数发送Sequence。
热门推荐
餐间和餐前,哪个时候吃零食有利控血糖?
眼睛内长了个小疙瘩到底是怎么回事
揭秘穆斯林女性头巾背后的故事:信仰、文化还是束缚?
生物与环境的关系是什么
手机CPU的重要性(揭秘手机CPU的功能和作用)
如何提升专注力:科学方法与实用技巧
恒大追缴员工佣金提成与高管工资,债务危机持续发酵
交通领域的人工智能:用智能解决方案革新交通
Win11用户必备:轻松将右键菜单改回Win10的几种方法
MATCC:通过市场趋势与跨时间相关性提升股票预测准确性与稳健性
大模型推理能力增强方法总结
胡景海:论思想政治教育与人的创造力培养
脚踝水肿怎么办?5大治疗方法助你快速恢复健康
中高考后该怎么选择 来看看技能大赛项目
你见过不用油不用电的水泵吗?详解水锤泵
超4000次!机构“猛攻”这个板块
从炎黄部落,到14亿的人口大国,中国的历代人口是如何变化的?
风控负责人违规兼职!为隐瞒事实,私募管理人向协会提供虚假材料,被处罚
强直性脊柱炎治疗全攻略:药物、物理、手术三大方案解析!
八字命理中年柱正印坐正财的含义与影响是什么
脂质体通过独特的结构特性和功能优势在改善吸收效率方面发挥作用
公积金贷款买房的条件有哪些
经济学有哪些分支?分别研究什么?
杭州最佳观潮期!重要提示请收好
胃疼什么原因导致的
西游记中三打白骨精时,孙悟空为何会被唐僧赶走?
农村房屋买卖需要的什么手续
中国古琴九大流派详解
未婚证明开具流程与所在地区办理指南
保修期内产品故障处理指南:从笔记本到手机的权益保障