- 收藏
- 点赞
- 分享
- 举报
海思标准SPI读取异常
各位大佬好,下面是我在使用海思芯片的SPI通信时候出现的问题,希望有知道怎么解决的大佬指点一下,非常感谢。
我是接了一个snesor到海思芯片上,使用的是海思标准的SPI接口。
默认的SDK编译,不进行任何改动。默认上电会有/dev/spidev0.0的设备节点,以及其他的几个spi的设备节点
我使用的是SPI0
不加载SDK编译出来的mpp/out/ko下的驱动
直接手动执行bspmm,进行SPI0的四个管脚复用
使用ssp_read读取寄存器,得到的值都是0xff
使用ssp_read 0 0 0x41 0x00 0x0f,读取SPI0.0的dev_addr是0x41的寄存器,从0x00开始读,读0xf个寄存器
我不太理解这个dev_addr是多少,按理说SPI设备是没有从机设备地址的,但是海思的外围驱动指南里面是这样说的
我这里写的是i2c的从机地址,不知道是不是这个原因导致的。
然后我尝试修改spidev.c的源码(这个就是内核默认加载生成spi设备节点的驱动)
修改SPI的几种模式,四种模式都进行了尝试,也都是一样的效果(我的sensor读取时序要求是0模式)
并且我也尝试了加载mpp/out/ko里面的otspi.ko和ot_sensor_spi.ko两个驱动
sys_cfg.ko驱动源码里面,默认使用的i2c_3,这个与spi0共用管脚,我修改了这一部分,注释掉了i2c_3,打开了SPI0的配置
sensor有配置片选信号线高有效和低有效的管脚,我也进行了控制,并且sensor的复位脚等都进行了配置。
但是依旧使用ssp_read读取数据是0xff(如果片选和高有效或者低有效以及复位没有控制,读取到的都是0x00)
请问有知道是什么原因导致的大佬吗?
这是标准SPI的接口,我不知道还有哪些是没有配置的了。
Markdown 语法
- 加粗**内容**
- 斜体*内容*
- 删除线~~内容~~
- 引用> 引用内容
- 代码`代码`
- 代码块```编程语言↵代码```
- 链接[链接标题](url)
- 无序列表- 内容
- 有序列表1. 内容
- 缩进内容
- 图片
-
2025-10-30 09:35:02
-
2017-09-18 14:25:54
-
2024-08-14 10:32:16
-
2024-10-26 19:57:50
-
2015-05-23 18:19:26
-
2019-07-25 09:35:19
-
2018-06-22 10:43:03
-
2016-02-18 17:59:23
-
2016-11-25 17:52:58
-
2015-03-16 09:27:42
-
2020-02-19 17:36:55
-
2017-01-04 21:05:31
-
2021-09-01 09:56:26
-
2020-10-29 11:15:50
-
2014-03-11 08:14:35
-
2019-11-12 09:31:51
-
2018-06-14 18:56:45
-
2018-10-16 21:42:09
-
2017-02-08 16:35:26
-
5hisi3516cv610 + gc4336p 夜晚很模糊
-
5AIISP(功能演示,SC4336P为BGGR,强制转RGGB,会导致颜色异常)
-
5rv1106使用luckfox的SDK,设备树和驱动都写好了,结果设备文件没有生成
-
5海思3516cv610中如何进行SD卡升级,根据官方文档操作,烧录进板子时,走的默认uboot,没有执行uboot升级。
-
5G610Q-IPC-38E 夜晚很暗 有什么办法解决吗 已经补光了
-
10转换模型时,SoC版本里没显示hi3516cv610芯片
-
5hisi3516cv610 使用 yolov8n 模型训练 要如何提高 这里识别的是人
-
10有人在海思平台接过SC035HGS吗
-
5关于hi3519dv500,以SD卡虚拟 U 盘操作
-
5ss928 sample_venc代码移植到openEuler24.03上执行报错 [sample_comm_vi_start_dev]-1068: vi set dev attr failed wi
举报类型
- 内容涉黄/赌/毒
- 内容侵权/抄袭
- 政治相关
- 涉嫌广告
- 侮辱谩骂
- 其他
详细说明

微信扫码分享
QQ好友
