logo资料库

T31_开发指南_20200508.pdf

第1页 / 共123页
第2页 / 共123页
第3页 / 共123页
第4页 / 共123页
第5页 / 共123页
第6页 / 共123页
第7页 / 共123页
第8页 / 共123页
资料共123页,剩余部分请下载后查看
1 开发资源介绍
1.1 SDK介绍
1.2 SDK层次结构
1.3 SDK LIB
2 开发环境搭建
2.1 为什么需要搭建开发环境
2.2 安装 Linux 服务器
2.3 交叉工具链
2.3.1 如何安装Toolchain
2.3.2 交叉工具包
3 T31必读
3.1 Uboot编译
3.2 Kernel编译
3.3 T31需要加载的驱动
3.4 T31与其他T系列芯片使用区别及注意事项
4 文件系统的制作
4.1 根文件系统介绍
4.2 利用Busybox制作根文件系统
4.2.1 获取Busybox
4.2.2 配置和编译Busybox
4.3 制作根文件系统
4.3.1 文件系统的选择
4.3.2 Squashfs文件系统
4.3.3 jffs2文件系统
4.4 Demo rootfs简单说明
4.5 应用程序编译
4.5.1 编译注意
4.5.2 运行应用程序
5 系统启动与烧录
5.1 系统启动
5.1.1 Uboot启动
5.1.1.1 SD卡启动
5.1.1.2 Nor/Nand启动
5.2 系统烧录
5.2.1 TFTP传输与烧录
5.2.2 SD卡传输与烧录
5.3 串口连接
5.4 Uboot配置
5.4.1 Uboot命令学习
5.4.2 Uboot环境变量
5.4.3 更改mtd分区大小
5.4.4 更改rmem内存大小
6 系统资源使用与调试
6.1 ISP_Sensor
6.1.1 ISP驱动
6.1.2 Sensor驱动
6.1.3 Avpu视频编码驱动
6.1.4 Sensor探测识别驱动
6.1.5 图像效果文件
6.1.6 Sample的使用
6.2 Audio
6.2.1 内核配置
6.2.2 Audio驱动
6.3 GPIO
6.3.1 头文件及API
6.3.2 sysfs GPIO
6.3.2.1 内核选项
6.3.2.2 sysfs GPIO的申请与释放
6.3.2.3 设置输入/输出方式
6.3.2.4 设置有效电平
6.3.2.5 输入/输出
6.4 Watchdog
6.5 Exfat
6.6 ADC
6.7 Motor
6.7.1 驱动介绍
6.7.2 接口介绍
6.7.3 驱动适配
6.8 PWM
6.9 SPI
6.9.1 内核配置
6.9.2 添加一个SPI Flash
6.10 I2C
6.11 SLCD
6.12 Wifi
6.12.1 Wifi内核配置
6.12.1.1 MT7601
6.12.1.2 RTL8188/RTL8723BU
6.12.1.3 AP6212/AP6212A
6.12.1.4 AP6181
6.12.1.5 RTL8189FS/RTL8189ES
6.12.2 Wifi驱动编译
6.12.3 Wifi启动操作流程
6.12.4 提高SDIO wifi工作时钟
6.12.5 针对BCM wifi的额外说明
6.13 USB
6.13.1 USB工作模式配置
6.13.1.1 Device Only模式
6.13.1.2 Host Only模式
6.13.1.3 Both模式
6.13.1.4 模式的选择
6.13.2 USB接口配置
6.13.2.1 U盘配置
6.13.2.2 USB 转串口
6.13.2.3 USB 硬盘的配置
6.13.2.4 USB以太网卡
6.13.2.5 USB RNDIS配置
6.14 4G
6.14.1 PPP
6.14.2 GobNet
6.14.3 WWAN
7 ISVP-SDK功能介绍
7.1 ISVP-SDK
7.1.1 ISVP-SDK简介
7.1.1.1 应用库
7.1.1.2 开源代码
7.2 IMP_System 系统控制模块
7.2.1 相关概念
7.2.1.1 Device
7.2.1.2 Group
7.2.1.3 Output
7.2.1.4 Cell
7.2.1.5 Channel
7.2.2 模块绑定(Bing)
7.2.2.1 典型双路码流
7.2.2.2 Bind成树状结构
7.2.3 IMP_System相关API介绍
7.2.3.1 系统初始化函数
7.2.3.2 退出系统函数
7.2.3.3 Bind绑定
7.2.3.4 解除Bind绑定
7.3 IMP_FrameSource视频源模块
7.3.1 模块介绍
7.3.2 FrameSource来源示意图
7.3.3 IMP_FrameSource相关API介绍
7.3.3.1 设置图像深度
7.3.3.2 获取图像最大深度
7.3.3.3 获取图像
7.4 IMP_ISP图像信号处理单元
7.4.1 详细描述
7.4.1.1 ISP模块使能
7.4.1.2 ISP模块卸载步骤
7.4.2 ISP支持的模式
7.4.2.1 支持的色彩模式
7.4.2.2 ISP 综合扩展功能
7.4.2.3 白平衡模式
7.4.3 ISP相关API介绍
7.4.3.1 开启ISP
7.4.3.2 关闭ISP
7.4.3.3 添加一个sensor
7.4.3.4 删除一个sensor
7.4.3.5 使能一个Sensor
7.4.3.6 失能一个Sensor
7.4.3.7 设置ISP图像上下反转效果
7.4.3.8 获取ISP图像上下反转效果
7.4.3.9 设置ISP工作模式
7.4.3.10 获取ISP工作模式
7.4.3.11 设置摄像头输出帧率
7.4.3.12 获取摄像头输出帧率
7.4.3.13 使能WDR模式
7.5 IMP_Encode视频编码模块
7.5.1 模块介绍
7.5.2 编码Channel
7.5.3 码率控制
7.5.3.1 CBR
7.5.3.2 VBR
7.5.3.3 CAPPED_VBR
7.5.3.4 FixQP
7.5.4 IMP_Encoder相关API介绍
7.5.4.1 创建编码Group
7.5.4.2 销毁编码Group
7.5.4.3 创建编码Channel
7.5.4.4 销毁编码Channel
7.5.4.5 获取编码Channel属性
7.5.4.6 注册编码Channel到Group
7.5.4.7 开启编码Channel接收图像
7.5.4.8 停止编码Channel接收图像
7.5.4.9 获取编码的码流
7.5.4.10 释放码流缓存
7.5.4.11 设置码流缓存Buffer数
7.5.4.12 获取码流缓存Buffer数
7.5.4.13 设置编码默认参数
7.5.5 编码参数变化说明
7.5.5.1 encAttr
7.5.5.2 rcAttr
7.5.5.3 gopAttr
7.6 IMP_Audio音频模块
7.6.1 模块介绍
7.6.2 功能描述
7.6.2.1 音频输入
7.6.2.2 音频输出
7.6.2.3 音频编码
7.6.2.4 音频解码
7.6.3 相关变量的定义
7.6.3.1 解码方式
7.6.3.2 音频采样频率
7.6.3.3 音频声道模式
7.6.3.4 噪声抑制级别
7.6.4 IMP_Audio相关API介绍
7.6.4.1 设置音频输入设备属性
7.6.4.2 获取音频输入设备属性
7.6.4.3 启用音频输入设备
7.6.4.4 禁用音频输入设备
7.6.4.5 启用音频输入通道
7.6.4.6 禁用音频输入通道
7.6.4.7 Polling音频流缓存
7.6.4.8 获取音频帧
7.6.4.9 获取音频帧
7.6.4.10 设置音频输入通道参数
7.6.4.11 获取音频输入通道参数
7.6.4.12 设置音频Amic通道增益值
7.6.4.13 获取音频Amic通道增益值
7.6.4.14 设置音频输入通道音量
7.6.4.15 获取音频输入通道音量
7.6.4.16 设置音频输出设备属性
7.6.4.17 获取音频输出设备属性
7.6.4.18 启用音频输出设备
7.6.4.19 禁用音频输出设备
7.6.4.20 启用音频输出通道
7.6.4.21 禁用音频输出通道
7.6.4.22 设置音频输出通道音量
7.6.4.23 获取音频输出通道音量
7.7 IMP_OSD 模块
7.7.1 模块介绍
7.7.2 相关概念
7.7.2.1 Region
7.7.2.2 Region type
7.7.3 模块功能
7.7.4 模块使用
7.7.5 IMP_OSD相关API介绍
7.7.5.1 设置区域属性
7.7.5.2 获取区域属性
7.7.5.3 更新区域数据属性
7.7.5.4 设置OSD组区域属性
7.7.5.5 获取OSD组区域属性
7.8 IMP_CSC 图片格式转换
7.8.1 模块介绍
7.8.2 CSC支持的转化
7.8.3 CSC转化流程
7.9 IMP_IVS智能分析
7.9.1 模块介绍
7.9.2 使用方法
7.9.2.1 绑定模式的算法使用方法
7.9.2.2 非绑定模式的算法使用方法
7.9.3 IMP_IVS相关API介绍
7.9.3.1 通道开始接收图像
7.9.3.2 通道停止接收图像
7.9.3.3 获得IVS功能的智能分析结果
7.9.3.4 释放IVS功能的智能分析结果资源
7.9.3.5 设置通道算法参数
7.9.3.6 获取通道算法参数
8 FAQ(常见问题解答)
9 附录
9.1 制作启动卡
9.1.1 制作新分区
9.1.2 SD卡启动
9.2 调试说明
9.2.1 ISP如何抓RAW图
9.2.2 如何抓取Log
9.2.3 读写 eth phy寄存器
9.2.4 RMEM查看与设置
9.2.5 如何保留&恢复现场
9.2.6 Coredump使用方法
9.2.6.1 coredump介绍
9.2.6.2 开启coredump
9.2.6.3 调试core文件
9.2.7 gdbserver使用方法
9.2.8 IMPSDK调试命令
9.3 wpa_supplicant使用方法
9.3.1 概述
9.3.2 使用方法
9.3.3 wpa_wifi_tool使用方法
9.4 4G代码参考
9.4.1 PPP模式
9.4.2 Wwan模式
9.5 Carrier 使用说明
9.5.1 简介
9.5.2 使用方法
9.6 版本说明
君正® T31 开发指南 Date: May.2020
君正® SDK 开发指南 Copyright © Ingenic Semiconductor Co. Ltd 2019. All rights reserved. Release history Date Revision July.2019 October.2019 January.2020 May.2020 1.0 1.1 1.2 1.3 Change First release Second release Third release Fourth release Disclaimer This documentation is provided for use with Ingenic products. No license to Ingenic property rights is granted. Ingenic assumes no liability, provides no warranty either expressed or implied relating to the usage, or intellectual property right infringement except as provided for by Ingenic Terms and Conditions of Sale. Ingenic products are not designed for and should not be used in any medical or life sustaining or supporting equipment. All information in this document should be treated as preliminary. Ingenic may make changes to this document without notice. Anyone relying on this documentation should contact Ingenic for the current documentation and errata. 北京君正集成电路股份有限公司 地址: 北京市海淀区西北旺东路 10 号院东区 14 号楼君正大厦 电话:(86-10)56345000 传真:(86-10)56345001 Http: //www.ingenic.cn
T31 SDK 目录 1 开发资源介绍 ....................................................................................... 5 1.1 SDK 介绍 ........................................................................................................ 5 1.2 SDK 层次结构 ................................................................................................. 6 1.3 SDK LIB .......................................................................................................... 6 2 开发环境搭建 ....................................................................................... 7 2.1 为什么需要搭建开发环境 ............................................................................... 7 2.2 安装 Linux 服务器 ......................................................................................... 7 2.3 交叉工具链 ..................................................................................................... 7 2.3.1 如何安装 Toolchain .............................................................................. 8 2.3.2 交叉工具包 ........................................................................................... 8 3 T31 必读 ............................................................................................... 9 3.1 Uboot 编译 ...................................................................................................... 9 3.2 Kernel 编译 ................................................................................................... 11 3.3 T31 需要加载的驱动 ..................................................................................... 11 3.4 T31 与其他 T 系列芯片使用区别及注意事项 ................................................. 11 4 文件系统的制作 ................................................................................. 13 4.1 根文件系统介绍............................................................................................ 13 4.2 利用 Busybox 制作根文件系统 ..................................................................... 14 4.2.1 获取 Busybox ..................................................................................... 14 4.2.2 配置和编译 Busybox .......................................................................... 14 4.2.3 制作根文件系统 ................................................................................. 14 4.3 文件系统的选择............................................................................................ 15 .............................................................................................................. 15 4.3.1 Squashfs 文件系统 ............................................................................. 15 4.3.2 jffs2 文件系统...................................................................................... 15 4.4 Demo rootfs 简单说明 ................................................................................... 16 4.5 应用程序编译 ............................................................................................... 16 4.5.1 编译注意 ............................................................................................ 17 4.5.2 运行应用程序 ..................................................................................... 17 5 系统启动与烧录 ................................................................................. 18 5.1 系统启动 ...................................................................................................... 18 5.1.1 Uboot 启动 .......................................................................................... 18 5.2 系统烧录 ...................................................................................................... 18 T31 开发指南 1 Copyright® 2005-2019 Ingenic Semiconductor Co., Ltd. All rights reserved.
T31 SDK 5.2.1 TFTP 传输与烧录 ................................................................................ 18 5.2.2 SD 卡传输与烧录 ................................................................................ 19 5.3 串口连接 ...................................................................................................... 20 5.4 Uboot 配置 .................................................................................................... 20 5.4.1 Uboot 命令学习 .................................................................................. 20 5.4.2 Uboot 环境变量 .................................................................................. 20 5.4.3 更改 mtd 分区大小 ............................................................................. 21 5.4.4 更改 rmem 内存大小 .......................................................................... 21 6 系统资源使用与调试 .......................................................................... 23 6.1 ISP_Sensor .................................................................................................. 23 6.1.1 ISP 驱动 ............................................................................................. 23 6.1.2 Sensor 驱动 ........................................................................................ 23 6.1.3 Avpu 视频编码驱动 ............................................................................. 24 6.1.4 Sensor 探测识别驱动 .......................................................................... 24 6.1.5 图像效果文件 ..................................................................................... 24 6.1.6 Sample 的使用 ................................................................................... 25 6.2 Audio ............................................................................................................ 26 6.3 Watchdog ..................................................................................................... 27 6.4 GPIO ............................................................................................................ 27 6.4.1 头文件及 API ..................................................................................... 27 6.4.2 sysfs GPIO ......................................................................................... 28 6.5 Exfat ............................................................................................................. 29 6.6 ADC .............................................................................................................. 30 6.7 Motor ............................................................................................................ 30 6.7.1 驱动介绍 ............................................................................................ 30 6.7.2 接口介绍 ............................................................................................ 30 6.7.3 驱动适配 ............................................................................................ 31 6.8 PWM ............................................................................................................. 31 6.9 SPI ................................................................................................................ 32 6.9.1 内核配置 ............................................................................................ 32 6.9.2 添加一个 SPI Flash ............................................................................ 32 6.10 I2C .............................................................................................................. 33 6.11 SLCD .......................................................................................................... 34 6.12 Wifi ............................................................................................................. 34 6.12.1 Wifi 内核配置 .................................................................................... 34 6.12.2 Wifi 驱动编译 .................................................................................... 36 6.12.3 Wifi 启动操作流程 ............................................................................. 37 6.12.4 提高 SDIO wifi 工作时钟 .................................................................. 37 6.12.5 针对 BCM wifi 的额外说明................................................................ 37 6.13 USB ............................................................................................................ 38 6.13.1 USB 工作模式配置 ............................................................................ 38 T31 开发指南 2 Copyright® 2005-2019 Ingenic Semiconductor Co., Ltd. All rights reserved.
T31 SDK 6.13.2 USB 接口配置 ................................................................................... 38 6.14 4G ............................................................................................................... 43 6.14.1 PPP .................................................................................................. 43 6.14.2 GobNet ............................................................................................. 45 6.14.3 WWAN .............................................................................................. 46 7 ISVP-SDK 功能介绍 ........................................................................... 47 7.1 ISVP-SDK ..................................................................................................... 47 7.1.1 ISVP-SDK 简介 .................................................................................. 47 7.2 IMP_System 系统控制模块 .......................................................................... 48 7.2.1 相关概念 ............................................................................................ 48 7.2.2 模块绑定(Bing) .............................................................................. 50 7.2.3 IMP_System 相关 API 介绍 ................................................................ 52 7.3 IMP_FrameSource 视频源模块 ..................................................................... 53 7.3.1 模块介绍 ............................................................................................ 53 7.3.2 FrameSource 来源示意图 ................................................................... 54 7.3.3 IMP_FrameSource 相关 API 介绍 ...................................................... 55 7.4 IMP_ISP 图像信号处理单元 .......................................................................... 56 7.4.1 详细描述 ............................................................................................ 56 7.4.2 ISP 支持的模式 ................................................................................... 57 7.4.3 ISP 相关 API 介绍 ............................................................................... 58 7.5 IMP_Encode 视频编码模块 ........................................................................... 62 7.5.1 模块介绍 ............................................................................................ 62 7.5.2 编码 Channel ..................................................................................... 62 7.5.3 码率控制 ............................................................................................ 62 7.5.4 IMP_Encoder 相关 API 介绍 ............................................................... 63 7.5.5 编码参数变化说明 .............................................................................. 67 7.6 IMP_Audio 音频模块 ..................................................................................... 68 7.6.1 模块介绍 ............................................................................................ 69 7.6.2 功能描述 ............................................................................................ 69 7.6.3 相关变量的定义 ................................................................................. 70 7.6.4 IMP_Audio 相关 API 介绍 ................................................................... 71 7.7 IMP_OSD 模块 ............................................................................................ 78 7.7.1 模块介绍 ............................................................................................ 78 7.7.2 相关概念 ............................................................................................ 78 7.7.3 模块功能 ............................................................................................ 78 7.7.4 模块使用 ............................................................................................ 78 7.7.5 IMP_OSD 相关 API 介绍 .................................................................... 80 7.8 IMP_CSC 图片格式转换 .............................................................................. 82 7.8.1 模块介绍 ............................................................................................ 82 7.8.2 CSC 支持的转化 ................................................................................. 82 7.8.3 CSC 转化流程 .................................................................................... 82 T31 开发指南 3 Copyright® 2005-2019 Ingenic Semiconductor Co., Ltd. All rights reserved.
T31 SDK 7.9 IMP_IVS 智能分析 ........................................................................................ 82 7.9.1 模块介绍 ............................................................................................ 83 7.9.2 使用方法 ............................................................................................ 83 7.9.3 IMP_IVS 相关 API 介绍 ...................................................................... 84 8 FAQ(常见问题解答) ....................................................................... 86 9 附录 ................................................................................................... 92 9.1 制作启动卡 ................................................................................................... 92 9.1.1 制作新分区 ......................................................................................... 92 9.1.2 SD 卡启动 ........................................................................................... 93 9.2 调试说明 ...................................................................................................... 94 9.2.1 ISP 如何抓 RAW 图 ............................................................................ 94 9.2.2 如何抓取 Log ..................................................................................... 94 9.2.3 读写 eth phy 寄存器 .......................................................................... 94 9.2.4 RMEM 查看与设置.............................................................................. 94 9.2.5 如何保留&恢复现场 ........................................................................... 95 9.2.6 Coredump 使用方法 ........................................................................... 95 9.2.7 gdbserver 使用方法 ............................................................................ 96 9.2.8 IMPSDK 调试命令 .............................................................................. 98 9.3 wpa_supplicant 使用方法............................................................................ 101 9.3.1 概述 ................................................................................................. 102 9.3.2 使用方法 .......................................................................................... 102 9.3.3 wpa_wifi_tool 使用方法 ..................................................................... 103 9.4 4G 代码参考 ............................................................................................... 103 9.4.1 PPP 模式 .......................................................................................... 103 9.4.2 Wwan 模式 ....................................................................................... 107 9.5 Carrier 使用说明 ........................................................................................ 115 9.5.1 简介 ................................................................................................. 115 9.5.2 使用方法 .......................................................................................... 115 9.6 版本说明 .................................................................................................... 121 T31 开发指南 4 Copyright® 2005-2019 Ingenic Semiconductor Co., Ltd. All rights reserved.
T31 SDK 1 开发资源介绍 1.1 SDK 介绍 ISVP SDK,即软件开发工具包,包括 API 库、开源源码、文档、Samples 等等。 开发者可以通过 SDK 快速的开展产品功能开发。以下是 ISVP SDK 的内容概览图: 图 1-1 SDK 组成结构 T31 开发指南 5 Copyright® 2005-2019 Ingenic Semiconductor Co., Ltd. All rights reserved.
T31 SDK 1.2 SDK 层次结构 图 1-2 SDK 层次机构 ● Hardware: 硬件层,完成 I/O 等具体的硬件功能。 ● Linux Kernel: 内核层。完成基础的系统功能,定义硬件资源 ● drivers: ko 模块驱动,可通过 driver 进行硬件操作 ● API lib: 接口库,实现硬件功能的抽象,方便于应用层的开发。API 库主要有五部 分: ◆ libimp: 多媒体功能库。如 H264 编码,JPEG 编码,IVS 和 Audio 等 ◆ libsysutils: 系统功能库。如重启,设置系统时间和电池功能等 ◆ libalog: ISVP-SDK 的 log 实现库 ◆ libivs_inf: IVS 算法库,包括越线检测,周界防范等 ◆ libmxu: 128 位 mxu 加速指令算子库 ● Application: 应用层。实现功能逻辑等 ● Application 推荐使用 SDK 库提供的 API 及配合 drivers 进行开发。对于一些特殊 的功能需求,也可以直接调用内核接口进行开发 1.3 SDK LIB doc:指导文档 include:相关头文件 lib:相关库文件 opensource:kernel、uboot、drivers、busybox 等 res:文件镜像、效果文件等 samples:相关应用代码 T31 开发指南 6 Copyright® 2005-2019 Ingenic Semiconductor Co., Ltd. All rights reserved.
分享到:
收藏