RK3288平台 SPI接口调试步骤
RK3288平台 SPI接口调试步骤
代码路径
drivers/spi/spi.c spi驱动框架
drivers/spi/spi‐rockchip.c rk spi各接口实现
drivers/spi/spidev.c 创建spi设备节点,用户态使用。
drivers/spi/spi‐rockchip‐test.c spi测试驱动,需要自己手动添加到Makefile编译
Documentation/spi/spidev_test.c 用户态spi测试工具
1、内核配置
修改默认内核配置文件: arch/arm/rockchip_gzpeite_defconfig
在 kernel 目录下,执行 make menuconfig
进入内核配置界面:
选择SPI相关选项:
Device Drivers ‐‐‐>
[*] SPI support ‐‐‐>
<*> Rockchip SPI controller driver
(本平台需要)修改相关配置并保存,同时要手动将新的配置文件复制到 config目录
cp -rf .config arch/arm/rockchip_gzpeite_defconfig
2、DTS节点配置:
dts文件目录:源码/kernel/arch/arm/boot/dts/rk3288-gzpeite.dts
&spi2 { // 引用spi 控制器节点status = "okay";max-freq = <48000000>; // spi内部工作时钟dma‐names = "tx","rx"; // 使能DMA模式,一般通讯字节少于32字节的不建议用spi_test {status = "okay"; // 使能设备节点compatible = "rockchip,spidev"; // 与驱动对应的名字 驱动文件 spidev.creg = <0>; // 片选0或者1spi-max-frequency = <5000000>; // spi clk输出的时钟频率,不超过50Mspi‐cpha; // 如果有配,cpha为1spi‐cpol; // 如果有配,cpol为1,clk脚保持高电平spi‐cs‐high; // 如果有配,每传完一个数据,cs都会被拉高,再拉低};
};
3、编译内核,并加载到设备端。
驱动设备加载注册成功后,通过adb查看设备列表,会出现类似这个名字的设备:/dev/spidev2.0
spidev2.0 意思为:spi2 cs0
4、SPI端口测试
利用linux自带测试文件 源码/kernel/Documentation/spi/spidev_test.c
1、在/kernel/Documentation/spi 目录下添加 Android.mk 文件
touch Android.mk
2、编辑Android.mk
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_SRC_FILES += spidev_test.c
LOCAL_MODULE := spidev_test
include $(BUILD_EXECUTABLE)
编译选项说明:
BUILD_STATIC_LIBRARY:编译为静态库。
BUILD_SHARED_LIBRARY :编译为动态库
BUILD_EXECUTABLE:编译为Native C可执行程序
3、修改目录下Makefile文件
# List of programs to build
hostprogs-y := spidev_test spidev_fdx# Tell kbuild to always build the programs
always := $(hostprogs-y)HOSTCFLAGS_spidev_test.o += -I$(objtree)/usr/include
HOSTCFLAGS_spidev_fdx.o += -I$(objtree)/usr/include
4、编译spidev_test.c 为可执行文件
在本目录执行
mm -B
执行mm命令前,须在 源码/ 目录下执行 source build/envsetup.sh ,加载android编译命令: mm help 等
source build/envsetup.sh
5、将编译生成的 spidev_test 文件通过adb发送到设备端
push D:\spidev_test /system/bin
6、短路 SPI端口 RX TX 引脚,执行下面的测试指令。详细格式见 spidev_test -h 命令
spidev_test -D /dev/spidev2.0
测试结果:
RK3288平台 SPI接口调试步骤相关推荐
- Nvidia Xavier Nx平台SPI接口调试记录
1. 前言 现有的硬件使用CS0和CS1在一个SPI上连接一个FRAM和一个TPM模块,在Jetson Nano上运行ok. Xavier NX模块的问题是硬件控制芯片选择信号(CS0)的不同行为. ...
- (30)SPI接口调试丢数据解决(FPGA不积跬步101)
1)遇到问题 FPGA与微处理器进行数据交互用到了SPI接口总线,SPI总线已经很成熟了,网上也有好多开源代码.但是,项目开发调试中也遇到SPI通信丢帧验证问题. 2)解决方法 a.设计思路为:SPI ...
- rv1126平台spi屏调试
我们使用的rv1126平台,屏ic ST7789,硬件使用6bit,由于不是8bit的,所以显示的颜色没有那么丰富 1.硬件原理图 2.dts配置 &rgb {status = "o ...
- 6531E平台HTTPS接口调试
平台SSL协议 一.协议部分 SSL_AsyncRegCallback注册回调 http_SecurityRecvDataCllback加密成功回调 http_SecuritySendDataCllb ...
- 全志平台SPI接口LCD屏驱动(GC9300,GC9306,ST7789,HX8357C)
1 引言 LCD分辨率240x320适合:GC9300,GC9306,ST7789 LCD分辨率480x320适合:HX8357C 2 下载地址 有需要参考的朋友可以在博主的博文链接地址中进行下载: ...
- RK3288平台下调屏参基本步骤
RK3288平台下调屏参基本步骤 注:因为涉及到lvds屏,mipi屏等众多类型不一的屏参调试,所以本文只记录基本调屏的一般步骤,不拿具体型号屏作说明. 调屏时一般板子的主控芯片为RK3288. 一. ...
- (第三方平台)开发相关,解除80端口占用,微信公众号分享jssdk实现,微信开放平台登录接口接入,2022微信分享接入本地调试,微信分享定制
一.开发相关 1.平台地址 微信开放平台 QQ互联平台SDK 2.文章收集 来自CSDN兄台的QQ登录使用的教程 微信网站应用开发的详细流程和引导 VueJs单页应用实现微信网页授权及微信分享功能 [ ...
- 基于RK3288 平台 Simple card声卡添加及调试
基于RK3288 平台 Simple card声卡添加及调试 Simple card即简单通用的machine driver, 如果simple-card框架足够满足需求,建议优先使用simp ...
- 基于STM32F103ZET6主控平台实现(SPI接口)OLED液晶屏驱动
一个热爱代码的工程师,唯有凭借双手不断敲打,才可以快速提升实力! 本文谨以记录,日后相忘时再作复习,代码没有贵贱,既来之则安之. OLED液晶屏产品图和效果图 由上图我们知道:OLED液晶屏分别有GN ...
最新文章
- 7-30 字符串的冒泡排序 (C语言)
- c#调用excel报错 (异常来自 HRESULT:0x80010105 (RPC_E_SERVERFAULT))问题的解决
- p,br,hn,b,i,u,s,sup,sub标签
- Java 常用类库 之 Arrays 数组操作类
- jvm的生命周期:启动、执行、退出
- 3D动作绑定_全息3D叶修养成记?升级打怪玩转荣耀,HE叶修体验
- 控件把鼠标放上去出现一个小窗口_控件跟着鼠标走,VBA让你的操作随心所欲
- echarts java动态数据_[ASP.net教程]ECharts Java 动态加载数据,echartsjava
- 获取Android Studio的Sha1
- python编程入门必备知识-Python快速编程入门,打牢基础必须知道的11个知识点
- java Swing实现考试系统
- 查询各科成绩前三名的记录
- 魔百和CM311-1a YST线刷精简固件(可救砖)
- DB---数据模型的三要素
- Nature Microbiology | 可感染阿斯加德古菌的六种深海沉积物中的病毒基因组
- dcos master挂掉后 slave上面的container会咋样
- HZNUOJ 2977 宝可梦决战 种族并查集
- telephony 总篇
- [转]详细解释数据挖掘中的 10 大算法
- [生命科学] 生物基础实验之三引物检测突变体
热门文章
- 我对前端开发的粗浅认知
- 学习率设置的学问(如何设置学习率)
- from batchgenerators.transforms import ComposeImportError: cannot import name ‘Compose‘ from ‘batch
- 2020杭电计算机考研复试面试
- 基于Matlab使用 IMU、磁力计和高度计估计方向和高度(附源码)
- IEEE Transactions on Image Processing文献跟踪11月
- c语言编程实现dsa算法,椭圆曲线加密算法的C语言实现.doc
- cad画不规则实体_cad画不规则曲线的方法步骤图
- 扫黑除恶进行中,公众号文章不知道怎样排版?看这里。
- 驰骋BPM工作流后台常用接口与前台常用方法