I2C 读写命令示例
此操作示例通过 I2C 读写命令实现对 I2C 外围设备的读写操作。

a. 在控制台使用 i2c_read 命令对 I2C 外围设备进行读操作:
~ $ i2c_read <i2c_num> <device_addr> <reg_addr> <end_reg_addr> <reg_width> <data_width> <reg_step>
例如读挂载在 I2C 控制器 2 上的 sil9024 设备的 0x8 寄存器:
~ $ i2c_read 2 0x72 0x8 0x8 0x1 0x1

说明:

i2c_num: I2C 控制器序号(对应《 Hi3516A 专业型 HD IP Camera Soc 用户指南》中的 I2C 控制器 0、 1、 2)
device_addr:外围设备地址( Hi3516A 只支持 7bit 设备地址)
reg_addr:读外围设备寄存器操作的开始地址
end_reg_addr:读外围设备寄存器操作的结束地址
reg_width:外围设备的寄存器位宽( Hi3516A 支持 8/16bit)
data_width:外围设备的数据位宽( Hi3516A 支持 8/16bit)
reg_step:连续读外围设备寄存器操作时递增幅值,默认为 1,即连续读寄存器,读取单个寄存器时不使用该参数

b. 在控制台使用 i2c_write 命令对 I2C 外围设备进行写操作:
~ $ i2c_write <i2c_num> <device_addr> <reg_addr> <value> <reg_width> <data_width>
例如向挂载在 I2C 控制器 2 上的 sil9024 设备的 0x8 寄存器写入数据 0xa5:
~ $ i2c_write 2 0x72 0x8 0xa5 0x1 0x1

说明:

i2c_num: I2C 控制器编号(对应《 Hi3516A 专业型 HD IP Camera Soc 用户指南》中的 I2C 控制器 0、 1、 2)
device_addr:外围设备地址( Hi3516A 的 I2C 控制器只支持 7bit 设备地址)
reg_addr:写外围设备寄存器操作的地址
value:写外围设备寄存器操作的数据
reg_width:外围设备的寄存器位宽( Hi3516A 的 I2C 控制器支持 8/16bit)
data_width:外围设备的数据位宽( Hi3516A 的 I2C 控制器支持 8/16bit)

SPI 读写命令示例
此操作示例通过 SPI 读写命令实现对 SPI 外围设备的读写操作。
在控制台使用 spi_read 命令对 SPI 外围设备进行读操作:
~ $ ssp_read <spi_num> <csn> <dev_addr> <reg_addr> [num_reg] [dev_width] [reg_width] [data_width]
其中[num_reg] 可以省略,缺省值是 1(表示读 1 个寄存器)。[dev_width] [reg_width] [data_width]可以省略,缺省值都是1(表示1Byte)。
例如读挂载在 SPI 控制器 0 片选 0 上设备地址为 0x2 的设备的 0x0 寄存器:

~ $ ssp_read 0x0 0x0 0x2 0x0 0x10 0x1 0x1 0x1

说明:

spi_num: SPI 控制器号(对应《 Hi3516A 专业型 HD IP Camera Soc 用户指南》中的 SPI 控制器0、 1)
csn:片选号( Hi3516A 的 SPI 控制器 0 有 1 个片选、控制器 1 有 3 个片选)
dev_addr:外围设备地址
reg_addr:外围设备寄存器开始地址
num_reg:读外围设备寄存器个数
dev_width:外围设备地址位宽(支持 8 位)
reg_width:外围设备寄存器地址位宽(支持 8 位)
data_width:外围设备的数据位宽(支持 8 位)

在控制台使用 spi_write 命令对 SPI 外围设备进行写操作:
~ $ ssp_write <spi_num> <csn> <dev_addr> <reg_addr> <data> [dev_width] [reg_width] [data_width]
其中[dev_width] [reg_width] [data_width]可以省略,缺省值都是 1(表示 1Byte)。
例如向挂载在 SPI 控制器 0 片选 0 上设备地址为 0x2 的设备的 0x0 寄存器写入数据 0x65:

~ $ ssp_write 0x0 0x0 0x2 0x0 0x65 0x1 0x1 0x1

说明:

spi_num: SPI 控制器序号(对应《 Hi3516A 专业型 HD IP Camera Soc 用户指南》中的 SPI 控制器 0、 1)
csn:片选号( Hi3516A 的 SPI 控制器 0 有 1 个片选、控制器 1 有 3 个片选)
dev_addr:外围设备地址
reg_addr:外围设备寄存器地址
data:写外围设备寄存器的数据
dev_width:外围设备地址位宽(支持 8 位)
reg_width:外围设备寄存器地址位宽(支持 8 位)
data_width:外围设备的数据位宽(支持 8 位)

此 SPI 读写命令仅支持 sensor 的读写操作。

参看:外围设备驱动 操作指南

Hi3516A开发--I2C/SPI读写命令相关推荐

  1. Hi3516A开发--i2c tools安装和使用

    一.首先下载安装包: i2c-tools-3.0.1 linux上调试i2c的工具 源码 二.解压安装 1.解压tar -zxvf i2c-tools-3.0.1.tar.gz 2.修改Makefil ...

  2. MPU6050开发 -- 进阶之I2C/SPI通信协议

    如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78611309 上一篇基本概念讲了一通,大体上对MPU6050有了一个了解.对 ...

  3. 开发调试工具:USB转IIC/I2C/SPI/UART适配器模块可编程开发板

    开发调试工具:USB转IIC/I2C/SPI/UART适配器模块可编程开发板 发个方便测试I2C.SPI.1Wire接口的工具模块 总的思路是通过USB或者UART接口发送一些协议字符串,由模块转换成 ...

  4. PCM开发板模块实验指导--SPI读写PSRAM64实验

    模块推荐:https://item.taobao.com/item.htm?ft=t&id=671629736762         32---SPI读写PSRAM64实验实验:        ...

  5. S5PV210开发 -- I2C 你知道多少?(一)

    如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78738305 网上的资料很多,但是大多讲解的不太全面.如果只是单纯的讲一下I ...

  6. S5PV210开发 -- I2C 你知道多少?(二)

    如需转载请注明出处:https://blog.csdn.net/qq_29350001/article/details/78782558 上一篇主要是介绍了下芯片手册 I2C 部分,都应该看些什么,以 ...

  7. Hi3516A开发-- 板卡串口烧写

    uboot使用loady命令进行串口传输 新改版的板卡,网络无法使用,uboot可以起来,但是内核和文件系统镜像,没法烧写. 在无网络的情况下,SecureCRT使用loady命令进行串口传输,烧写内 ...

  8. 第24章 SPI—读写串行FLASH—零死角玩转STM32-F429系列

    第24章     SPI-读写串行FLASH 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/ ...

  9. SPI—读写串行FLASH(时序中的无关项)

    SPI-读写串行FLASH 全套200集视频教程和1000页PDF教程请到秉火论坛下载:www.firebbs.cn 野火视频教程优酷观看网址:http://i.youku.com/firege 本章 ...

最新文章

  1. FFmpeg中RTSP客户端拉流测试代码
  2. 在docker中haproxy的安装以及mysql的负载均衡配置
  3. 最长公共子序列Java代码实现
  4. busybox 安装mysql_安装busybox
  5. 贡献一个连jquery都觉的大的时候可以用的 js库
  6. JAVA 重写重载/多态/抽象类/封装/接口/包
  7. 【带着canvas去流浪(14)】Three.js中凹浮雕模型的生成方式
  8. 前端切换视图_前端开发的10个软件工具,用过3个就是大神!
  9. 专业音频术语中英文对照
  10. JavaWeb学习——struts1框架篇
  11. 2019年9月中国编程语言排行榜
  12. 英文日期和时间表示方法
  13. Ubuntu 16.04 快捷键截图
  14. 比热容相关的热量计算机应用,关于比热容的计算.ppt
  15. Unity知识点整理
  16. 1919: kirito's 星爆气流斩(多重背包转换为01背包+二进制优化)
  17. win10 蓝屏问题及解决
  18. dd命令测试磁盘读写速度
  19. Python笔记_81_结算页面_订单模型_优惠券
  20. 响应式扩展_响应式和无限扩展的JS动画

热门文章

  1. 纯CSS3画出小黄人并实现动画效果
  2. J2ME_System.getProperty
  3. FASTICA独立成分分析matlab代码实现
  4. 配置本地和共享yum源,定制属于自己的yum仓库
  5. 请解释和、|和||的区别?
  6. MPI编程的常用接口速查
  7. 1.在Linux下如何使用软盘、光盘以及DOS等非Linux分区
  8. 【Python】while里面是负数时条件还为真吗?
  9. [云炬创业基础笔记]第七章创业资源测试1
  10. USTC English Club Note20171020(3)