0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

AS32系列MCU调试教程 SPI调试的常见问题解析

安芯 来源:jf_29981791 作者:jf_29981791 2025-06-27 18:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

简介

AS32X601内置的I2C模块提供了支持全双工的同步串行通信。该接口可配置为主机或从机模式,配置为主机模式时,它可为外部从器件提供通信时钟(SCK),6个SPI每个都支持8个从机。

SPI 协议是由摩托罗拉公司提出的通讯协议(Serial Peripheral Interface),即串行外围设备接口,是一种高速全双工的通信总线。它被广泛地使用在 ADC、 LCD 等设备与 MCU 中,要求通讯速率较高的场合。

1.信号线:SPI具有SCK,MOSI,MISO ,CS线

2.寻址方式:SPI是通过CS片选信号来选择从机

3.通信速率:SPI速率较快(可达fPCLK/2),一般用于高速设备之间通信。AN32X601上SPI速率最快可达45MHz。

硬件设计

SPI通信使用 3 条总线及片选线,3条总线分别为SCK、MOSI、 MISO,片选线为CS0。

SPI时序

CS0、SCK、MOSI信号都由主机控制产生,而 MISO的信号由 从机产生,主机通过该信号线读取从机的数据。MOSI 与 MISO的信号 只在 NSS为低电平 的时候才有效,在 SCK的 每个时钟周期,MOSI 和 MISO 传输一位数据。

① 处 NSS信号由高变低,是SPI通信的起始信号。NSS是 每个从机各自独占的信号线,当从机在自己的 NSS线检测到起始信号后,就知道自己被主机选中,开始准备与主机通信。⑥ 处 NSS信号由低变高,是SPI通信的停止信号,表示本次通信结束,从机的选中状态被取消。

软件编程

配置SPIx需要的GPIO为复用功能。

通过配置ISPI_INITSTRUCT初始化I2Cx,包括时钟分频,主机或从机模式,相位模式等等。

按需求配置中断,并配置IRQ_HANDLER;

调用收发接口,并处理数据

SPI常见问题解析

Q1主从通信时,先开从机,然后再给主机上电,通信正常,但是同时上电,即便是给主机加了延时都通信异常。

A:首先应排查硬件上的问题,如芯片间的去耦电容是否正常,电源是否稳定,如果确定了硬件没有问题,就使用硬件片选试试,非常稳定,主从同时上电即使主机不加延时也不会引起通信异常。

Q2:使用的DMA收发,单独测试一切正常,但是只要跟其他DMA同时使用就死机

A: 尝试增大堆栈,MCU死机很大一部分原因是堆栈溢出(DMA是要用到堆栈的)

SPI稳定性优化

1,通信速率:主机的通信速率尽量不要超过从机SPI的最大速率

2,CRC校验:如果工作环境较为恶劣,有较大的噪声干扰,推荐开启CRC校验

3,硬件片选:虽然从理论上讲,只有主机和从机片选开不开无所谓,但是经过向多名开发者验证和我的多次测试,开启硬件片选可以大大提升SPI通信稳定性。

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18604

    浏览量

    386553
  • 调试
    +关注

    关注

    7

    文章

    623

    浏览量

    35376
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1866

    浏览量

    99729
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    FreeRTOS 在 AS32系列RISC-V 架构MCU电机驱动中的应用实践与优化

    一、AS32系列 RISC-V MCU与 FreeRTOS 融合的电机驱动架构解析 1.1 硬件层: AS32
    的头像 发表于 11-13 23:33 513次阅读

    ‌STMicroelectronics AEK-MCU-SPC5LNK 编程调试器技术解析

    STMicroelectronics AEK-MCU-SPC5LNK加密狗开发用作SPC58汽车微控制器的调试器/编程器加密狗。AEK-MCU-SPC5LNK结合了无源USB转JTAG调试
    的头像 发表于 10-21 11:51 254次阅读
    ‌STMicroelectronics AEK-<b class='flag-5'>MCU</b>-SPC5LNK 编程<b class='flag-5'>调试</b>器技术<b class='flag-5'>解析</b>

    ‌MPLAB® PICkit™ Basic调试器技术解析与应用指南

    PICkit Basic调试器支持Microchip的许多MCU产品(并非部分传统产品)。该调试器具有标称功能集,面向不需要高级功能的开发人员。
    的头像 发表于 09-29 13:44 497次阅读
    ‌MPLAB® PICkit™ Basic<b class='flag-5'>调试</b>器技术<b class='flag-5'>解析</b>与应用指南

    如何实现Infineon TRAVEO T2G系列MCU的安全调试

    。Infineon TRAVEO T2G系列MCU在满足高性能需求的同时,集成了完整的硬件安全特性,包括生命周期管理、安全启动(Secure Boot)、硬件加密引擎以及调试端口访问控制(安全
    的头像 发表于 09-05 09:37 2729次阅读
    如何实现Infineon TRAVEO T2G<b class='flag-5'>系列</b><b class='flag-5'>MCU</b>的安全<b class='flag-5'>调试</b>

    如何实现NXP S32K3系列MCU安全调试

    。NXP推出的S32K3系列MCU配备了多层次的生命周期管理和硬件安全引擎(Hardware Security Engine, HSE),以确保在产品开发与部署中的信息安全。
    的头像 发表于 08-18 11:07 2543次阅读
    如何实现NXP S32K3<b class='flag-5'>系列</b><b class='flag-5'>MCU</b>安全<b class='flag-5'>调试</b>

    AS32X601系列MCU硬件最小系统设计与调试方案探析

    推出的AS32X601 系列 MCU 为例,深入探讨硬件最小系统设计要点以及硬件调试方案,旨在为相关领域的研究人员和技术人员提供有价值的参考。
    的头像 发表于 07-22 13:46 402次阅读

    调试工具:Eclipse调试工具栏与窗口的深入分析

    科技有限公司自研AS32 系列 MCU 芯片的调试应用为研究背景,通过详细阐述 Eclipse 调试环境的搭建、工具栏各功能模块的原理与应用
    的头像 发表于 07-07 11:32 617次阅读
    <b class='flag-5'>调试</b>工具:Eclipse<b class='flag-5'>调试</b>工具栏与窗口的深入分析

    使用BLE(CYW20829)作为SPI slave和MCU(TC387)作为SPI master,调试SPI通信时遇到的问题求解

    我们这边使用BLE(CYW20829)作为SPI slave和MCU(TC387)作为SPI master,调试SPI通信时,遇到两个问题:
    发表于 07-01 08:28

    适用TI ADS1299器件的ADS129x设备SPI通信问题调试步骤教程

    适用TI ADS1299器件的ADS129x设备SPI通信问题调试步骤教程
    的头像 发表于 06-18 16:19 1781次阅读
    适用TI ADS1299器件的ADS129x设备<b class='flag-5'>SPI</b>通信问题<b class='flag-5'>调试</b>步骤教程

    硬件调试:JLink 驱动配置与调试技巧

    摘要: 本文深入探讨了 JLink 调试器在嵌入式系统硬件调试中的应用,详细阐述了 JLink 驱动配置的方法以及硬件调试技巧。本文以国科安芯的AS32
    的头像 发表于 06-12 23:20 1258次阅读
    硬件<b class='flag-5'>调试</b>:JLink 驱动配置与<b class='flag-5'>调试</b>技巧

    如何解决Air780EPM开发中的调试难题?深度解析高效调试方法

    在Air780EPM项目开发中,调试效率往往直接影响进度。面对代码报错、逻辑漏洞等常见痛点,开发者亟需一套系统化的方法论。本文将揭秘实战中验证的调试技巧,助您快速定位问题并优化代码流程。
    的头像 发表于 05-17 10:46 543次阅读
    如何解决Air780EPM开发中的<b class='flag-5'>调试</b>难题?深度<b class='flag-5'>解析</b>高效<b class='flag-5'>调试</b>方法

    RISC-V JTAG:开启MCU 芯片调试之旅

    在当今电子科技飞速发展的时代, MCU 芯片成为众多企业追求技术突破与创新的关键领域。而芯片的调试过程则是确保其性能与可靠性的重要环节。本文以国科安芯自研 AS32A601为例,旨在详细记录
    的头像 发表于 05-07 17:57 2335次阅读
    RISC-V JTAG:开启<b class='flag-5'>MCU</b> 芯片<b class='flag-5'>调试</b>之旅

    【斯丹麦德电子】常见问题解答:干簧继电器在测试与测量中的应用

    电子发烧友网站提供《【斯丹麦德电子】常见问题解答:干簧继电器在测试与测量中的应用.pdf》资料免费下载
    发表于 01-20 10:44 0次下载

    mac的常见问题解决方法

    Mac常见问题解决方法 1. 系统启动缓慢 问题描述: 启动Mac时,系统启动缓慢,甚至出现卡顿现象。 解决方法: 检查启动项目: 打开系统偏好设置中的“用户与群组”,点击“登录项”,移除不必要
    的头像 发表于 12-19 15:02 1840次阅读

    C2000常见问题解

    电子发烧友网站提供《C2000常见问题解答.pdf》资料免费下载
    发表于 12-06 16:04 0次下载
    C2000<b class='flag-5'>常见问题解</b>答