首页 > 其他分享 >STM32F030C8T6 SPI 通讯问题排查分析

STM32F030C8T6 SPI 通讯问题排查分析

时间:2023-08-05 13:44:21浏览次数:36  
标签:分频 GP21 通讯 排查 TDC 时序 SPI STM32F030C8T6

配置及问题列举

1. STM32F030C8T6:48M系统时钟配置;
2. SPI1:驱动LCD,半工主机通讯,极性为高、边沿为2,时钟分频系数16分频;
3. SPI2:驱动TDC-GP21,全工主机通讯,极性为低、边沿为2,时钟分频系数4分频;

1. LCD驱动为上升沿,改为{极性为低、边沿为1},初始化却无效;
2. TDC-GP21驱动为下降沿,读取ID函数,从机回复ID为0(0xB7操作码,后跟七位ID序列);
3. LCD驱动半工通讯,发送字节数据失败,屏幕初始化不成功;

SPI2 驱动 TDC-GP21问题

硬件检查

- 首先检查SCK、MOSI、MISO、CSN硬件连接正常;

SPI逻辑分析仪抓取波形

- 波形时序不对,波形散乱错离;

原因及问题解决

Q: TDC-GP21器件 不支持高SPI时序;
A: SPI增加分频系数,SPI时钟降至3M,TDC-GP21器件时序恢复正常;

SPI1 驱动 LCD问题

硬件检查

- 首先检查SCK、MOSI、MISO、CSN硬件连接正常;

SPI逻辑分析仪抓取波形

- 波形时序不对,字节SCK时钟少位,漏位;
- 字节流传输中每个字节间跨度在14us左右,十分影响速率;

问题解决

Q: SPI单工通讯异常,时序错误,HAL_SPI_Transmit(&hspi1, &TxData,1,HAL_MAX_DELAY);字节间跨度过大;
A: SPI更改为全双工通讯,时序恢复正常;
A: SPI更改为HAL_SPI_TransmitReceive(&hspi1, &TxData, &Rxdata,1,0);函数传输,速率提升;

未解决问题

- TDC-GP21未使能前MISO为高阻态,CSN拉低后MISO被TDC-GP21强制拉低,无法与从机建立通讯;
- (续上)返回ID也是因为从机拒绝访问影响(有解答请联系)。

标签:分频,GP21,通讯,排查,TDC,时序,SPI,STM32F030C8T6
From: https://www.cnblogs.com/Purple-Moon/p/17607849.html

相关文章

  • msm8909_wk2124_SPI转串口485
    项目使用的是高通的msm8909平台,采用广和通SC806开发板,开发环境采用Ubuntu18.04。SC806默认有两路串口,对项目来说不够使用,需要进行转接,所以采用了wk2124将一路SPI转换为4路串口,然后再加485芯片,转换为4路485接口。接下来详细看看整个配置过程。概述说明:本文档会将为开提供的官方文......
  • JDK中「SPI」原理分析
    基于【JDK1.8】一、SPI简介1、概念SPI即service-provider-interface的简写;JDK内置的服务提供加载机制,可以为服务接口加载实现类,解耦是其核心思想,也是很多框架和组件的常用手段;2、入门案例2.1定义接口就是普通的接口,在SPI的机制中称为【service】,即服务;publicinterface......
  • JDK中「SPI」原理分析
    目录一、SPI简介1、概念2、入门案例2.1定义接口2.2两个实现类2.3配置文件2.4测试代码二、原理分析1、ServiceLoader结构2、iterator迭代方法3、hasNextService方法4、nextService方法三、SPI实践1、Driver驱动接口2、Slf4j日志接口四、参考源码基于【JDK1.8】一、SPI简介......
  • MySQL内存使用排查
    MySQL使用内存上升90%!在运维过程中50%的几率,会碰到这样的问题。算是比较普遍的现象。MySQL内存使用率过高,有诸多原因。普遍原因是使用不当,还有MySQL本身缺陷导致的。到底是哪方面的问题,那就需要一个一个进行排查。下面介绍排查思路:1.参数配置需要确认,内存是否设置合理MySQL内......
  • 记一次windows病毒联合排查全过程
    8月2日通过态势感知平台,发现大量内部DNS服务器有恶意请求,且告警描述为:试图解析僵尸网络C&C服务器xmr-eu2.nanopool.org的地址,通过截图可以看到,用户每5分钟会定期向目的地址发送3次请求。针对此域名,我们通过查询微步在线情报,查询该域名为恶意公共矿池我们前期已经通过日志接入,将......
  • 一次JVM内存溢出的排查经过
    文章目录一、背景二、解决办法三、总结一、背景高峰将至,系统访问量进入高峰期。随之系统出现了异常:java.lang.OutOfMemoryError:unabletocreatenewnativethread。在解决这个问题中,尝试了各种方法,最后竟然是因为它…二、解决办法1、关于这个问题,一开始猜想是因消息队列(acti......
  • 国标GB28181安防视频平台EasyGBS大批量通道接入后,创建角色接口未响应的排查
    国标GB28181协议视频平台EasyGBS是基于国标GB28181协议的视频云服务平台,支持多路设备同时接入,并对多平台、多终端分发出RTSP、RTMP、FLV、HLS、WebRTC等格式的视频流。平台可提供视频监控直播、云端录像、云存储、检索回放、智能告警、语音对讲、平台级联等功能,在视频能力上,GB2818......
  • TSINGSEE青犀视频安防监控EasyCVR视频汇聚平台电子地图定位偏移的排查与解决
    安防监控EasyCVR视频汇聚综合管理平台具有强大的数据接入、处理及分发能力,平台可提供视频监控直播、云端录像、云存储、录像检索与回看、告警上报与查询、平台级联、云台控制、语音对讲、电子地图、轨迹跟踪、H.265自动转码等视频能力。在视频监控管理平台TSINGSEE青犀视频EasyCVR......
  • 排查问题中想当然,简单问题复杂化
    用户要求A点访问H点服务器,测试发现ping和telnet端口均不通根据tracert跟踪路由发现只能到E点交换机已知H点服务器在开发测试网络,E点到H点经过F点防火墙和开发核心交换机于是在F点防火墙配置到A点的静态路由和检查防火墙策略均OK但是tracert跟踪路由仍然只能到E点交换机及访问H点服......
  • Java应用内存溢出排查
    Java应用内存溢出&CPU占满排查1.获取异常进程IDtop-m2.保存堆快照jmap-dump:format=b,file=/data/logdir/dump.hprof[PID]3.观察GC状况#采样10次(2秒/次)后结束,5行1组输出jstat-gcutil-t-h5[PID]2s104.获取进程内线程详情,观察异常线程IDtop-......