【经验】地平线X3M开发板SPI调试和使用方法
SPI作为一种比较通用的接口协议,在linux的世界里属于典型的字符设备驱动,linux内核已经对它有了比较完善的支持,是按照总线-设备-驱动的方式来实现的。本文将介绍地平线X3M开发板SPI调试和使用方法。
下面是详细的操作步骤:
1. spi驱动代码位于linux内核里面,如下所示目录:
(1) drivers/spi/spidev.c # 生成字符设备节点,可供用户空间操作
(2) drivers/spi/spi.c # spi框架层代码
(3) drivers/spi/spi-hobot.c # spi驱动层代码
2. 在使用前需要对内核进行配置,将上述驱动源码添加到linux内核中。
CONFIG_SPI_SPIDEV=y # spidev.c配置选项
CONFIG_SPI_SLAVE=y # CONFIG_SPI_SPIDEV依赖的配置选项
CONFIG_SPI_HOBOT=y # spi-hobot.c驱动层配置选项
3. 在下述文件中添加相应的设备节点,并对内核进行编译。 文件路径为:arch/arm64/boot/dts/hobot/hobot-xj3.dtsi
spi0: spi@0xA5004000 {
compatible = "hobot,hobot-spi";
reg = <0 0xA5004000 0 0x1000>;
clocks = <&spi0_mclk>;
clock-names = "spi_mclk";
interrupt-parent = <&gic>;
interrupts = <0 33 4>;
resets = <&rst 0x50 4>;
reset-names = "spi0";
pinctrl-names = "default";
pinctrl-0 = <&spi0_func>;
status = "disabled";
#address-cells = <1>;
#size-cells = <0>;
};
文件路径:arch/arm64/boot/dts/hobot/hobot-x3-sdb.dts
/* 配置为master */
&spi0 {
status = "okay";
spidev@0x00 {
compatible = "rohm,dh2228fv";
spi-max-frequency = <20000000>;
reg = <0>;
};
};
4. 上述操作会将spi0配置为master模式,在开发板串口终端下执行ls /dev会找到spidev0.0的设备节点,表示spi0的驱动已经安装完成。
5. 使用连接器把spi的MOSI 和 MISO 两个管脚连接起来。
6. spidev_tc 命令是测试spi的工具集命令,可以用来做回环测试:打开/dev/spidev0.0,设置12MHz速率,读写同时进行,每次读写1000个字节,测试50轮。打印信息如下:
# ./spidev_tc -D /dev/spidev0.0 -s 12000000 -m 3 -e 1000 -t 50
spi mode: 0x0
bits per word: 8
max speed: 12000000 Hz (12000 KHz)
userspace spi read and write test, len=1000 times=50
test: OK, times=0
test: OK, times=1
...
test: OK, times=49
- |
- +1 赞 0
- 收藏
- 评论 0
本文由孟高祥提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
地平线旭日X3系列智能芯片开发经验资料汇总
旭日X3 是地平线针对 AIoT 场景,推出的新一代低功耗、高性能的智能芯片;集成了地平线最先进的伯努利2.0 架构引擎( BPU® )。包含 X3M 和 X3E 两颗芯片,X3M 主要面向 8M 智能前视市场和边缘计算,提供 5TOPS 算力;X3E 主要面向 5M 智能前视市场,提供 3TOPS 算力。
设计经验 发布时间 : 2024-08-16
【经验】地平线ISP工具Control tool的使用方法介绍
Control tool是isp-tuning时tuning ISP参数的图形界面工具,对于刚接触地平线的开发者来说,会比较陌生,下面详细介绍Control tool的使用方法。
设计经验 发布时间 : 2022-09-10
【经验】地平线X3M SDB开发板烧录ubuntu镜像实操和注意事项
地平线X3M SDB开发板,地平线论坛已经支持yocto linux和ubuntu两种SDK包,本文实操烧录ubuntu镜像以及说明注意事项。
设计经验 发布时间 : 2022-06-24
地瓜创客孵化营 | 让每一块 RDK X5,都成为你手中的机器人!
地瓜机器人开发者日就要来啦!面向智能计算与机器人解决方案的通用型开发板新品RDK X5,接口丰富,极具性价比,具有10T算力,与强大的图像处理能力,助力开发者轻松实现多种智能应用。加入“地瓜创客孵化营”你将和一群“地瓜创客”一起找到将你的开发板转变为智能机器人的最佳路径。
原厂动态 发布时间 : 2024-09-13
地平线(Horizon Robotics)新一代AIoT智能芯片选型表
描述- 旭日®3 是地平线针对 AIoT 场景,推出的新一代低功耗、高性能的智能芯片;集成了地平线最先进的伯努利2.0 架构引擎( BPU® ),可提供 5TOPS 的算力。新的 BPU 架构极大提升了对先进 CNN 网络架构的支持效果,并极大降低了运算对 DDR 带宽的占用率。辅以地平线天工开物® 软件开发平台,大幅简化算法开发与部署过程,降低产品的落地成本。
型号- X3M,X3E
【应用】地平线推出基于AI SoC X3M的扫地机方案,提供配套TROS操作系统和AI算法
地平线推出基于Sunrise®旭日芯片的扫地机方案,提供芯片+操作系统+算法的完整解决方案,实现更智能、更稳定、更主动的智能扫地机应用。
应用方案 发布时间 : 2022-07-05
【应用】地平线AI SoC芯片X3M助力智能停车场系统设计,可实现车牌识别、车流量检测等功能,算力可达5Tops
现在,随着智能芯片、算法的技术发展,方便快捷、稳定可靠的非接触式智能停车设备已走进大大小小的城市,成为当今停车场设备的主流。地平线推出的X3M系列AI SoC芯片,可应用于停车场的智能识别设备,用来检测施工车辆的车牌、类别,并可实现计算车流量的功能。
应用方案 发布时间 : 2023-02-26
【经验】SoC X3M烧录自定义14G userdata镜像并打包进disk.img的镜像过程解析
地平线SoC X3M自定义镜像,比如userdata,其中固件和算法模型以及图像等资料有14G多,此时生成的userdata镜像就有14G多,与其他镜像包一起打包进disk.img后接近15G,我们是否还可以用地平线hbupdate_win64_v1.3(AIOT)工具烧录呢,本文记录烧录并解析注意点。
设计经验 发布时间 : 2023-09-10
【经验】地平线X3M开发板添加dummy_codec虚拟声卡驱动的方法
一个完整的声卡信息由cpu_dai,codec_dai,platform,dai_link组成。本文将详细介绍地平线X3M开发板添加dummy_codec虚拟声卡驱动的方法。
设计经验 发布时间 : 2022-06-15
【应用】地平线AI SOC芯片X3M系列助力边缘计算盒子应用,算力可达5Tops
本文将介绍地平线X3M系列AI SOC芯片,可应用于边缘计算盒子,实现视觉部分的算法。镜头模组将采集到的信息传送给X3M芯片,芯片通过算法,实现视觉部分的识别,如人脸识别,手势识别,火焰识别的动作,然后将信息通过接口进行传输。
应用方案 发布时间 : 2022-08-28
【经验】地平线SoC X3M分区修改镜像制作烧录过程实操
地平线SoC X3M SDB核心板的EMMC为16G容量,默认总共有12个分区,其中app,userdata分区没有烧录镜像,我们可以在app,userdata分区中烧录自己的固件,也可以新增自己的分区并制作镜像烧录到新增加的分区中,本文记录在默认的app,userdata分区中烧录自己制作的2个镜像过程。
设计经验 发布时间 : 2023-09-09
电子商城
现货市场
服务
可加工PCB层数:1-30层;板材类型:FR4板/铝基板/铜基板/刚扰结合板/FPC板/高精密板/Rogers高频板;成品尺寸:5*5mm~53*84cm;板厚:0.1~5.0mm。
最小起订量: 1 提交需求>
可加工PCB板层数:0-60层,板材类型:高频板/高速板/高频混压板/盲埋孔板/HDI板/无卤素板/厚铜板/刚柔结合板;最大加工尺寸:622*1200MM;板厚:0.05-8.0MM;铜厚:0.33-30OZ;
最小起订量: 1 提交需求>
登录 | 立即注册
提交评论