前言:

关于海思HI3516EV200的SDK,官方有2个版本,一个是linux,一个是liteos,这里根据之前群友提供的sdk整理总结下,以防大家下载到错误的版本

linux sdk 版本为 Hi3516EV200R001C01SPC010:
链接: https://pan.baidu.com/s/1bJRVcm9DLD4RIL4zCzWMXA
提取码:702k
liteos sdk 版本为Hi3516EV200R002C05SPC010:
链接: https://pan.baidu.com/s/1LnN-E6ekdS1iryi3x89hNw
提取码:prkb

环境

  1. ubuntu 18.04.
  2. 海思官方Linux SDK

参考文件

1.Hi3516EV200_SDK_V1.0.1.0\package\osdrv\readme.cn
2. 提前搭建好交叉编译环境:arm-himix100-linux-gcc

1.osdrv 顶层 Makefile 使用说明
本目录下的编译脚本支持 arm-himix100-linux工具链对应uclibc库。具体命令如下(以hi3516ev200举例)注意:由于开源工具整改,部分开源工具不再提供源码包,客户编译OSDRV时需要自行下载:a:linux-4.9.37.tar.gz (https://www.kernel.org/pub/)将下载的 linux-4.9.37.tar.gz 存放到 osdrv的opensource/kernel目录中b:yaffs2utils-0.2.9.tar.gz (https://github.com/dorigom/yaffs2utils/releases)将下载的 yaffs2utils-0.2.9.tar.gz 存放到osdrv的tools/pc/mkyaffs2image/目录中c:gdb-7.9.1.tar.gz  (http://ftp.gnu.org/gnu/gdb/)将下载的 gdb-7.9.1.tar.gz 存放到 osdrv的tools/board/gdb/目录中d:ncurses-6.0.tar.gz  ( http://ftp.gnu.org/gnu/ncurses/)将下载的 ncurses-6.0.tar.gz 存放到 osdrv的tools/board/gdb/目录中e:util-linux-2.31.tar.gz (https://www.kernel.org/pub/linux/utils/util-linux/v2.31)将下载的 util-linux-2.31.tar.gz 存放到 osdrv的tools/pc/cramfs_tool/目录中(1)编译整个osdrv目录:注意:默认不发布内核源码包,只发布补丁文件。内核源码包需自行从开源社区上下载。从linux开源社区下载v4.9.37版本的内核:1)进入网站:www.kernel.org2)选择HTTP协议资源的https://www.kernel.org/pub/选项,进入子页面3)选择linux/菜单项,进入子页面4)选择kernel/菜单项,进入子页面5)选择v4.x/菜单项,进入子页面6)下载linux-4.9.37.tar.gz (或者linux-4.9.37.tar.xz)到osdrv/opensource/kernel目录下     make all注意:由于Makefile中文件系统编译依赖组件较多,不能保证单独编译的文件系统可用,建议采用make all编译;但可单独编译uboot,kernel;可以传如下参数:a, BOOT_MEDIA:spi(default) or emmcb, CHIP:hi3516ev200(default) or hi3516ev300 or hi3518ev300 or hi3516dv200c, 如果客户想要更换可以使用TARGET_XLSM=*.xlsm来指定所需要的u-boot表格文件(2)清除整个osdrv目录的编译文件:make OSDRV_CROSS=arm-himix100-linux clean
(3)彻底清除整个osdrv目录的编译文件,除清除编译文件外,还删除已编译好的镜像:make OSDRV_CROSS=arm-himix100-linux distclean(4)单独编译kernel:注意:单独编译内核之前请先阅读osdrv/opensource/kernel下的readme_cn.txt说明。待进入内核源代码目录后,执行以下操作cp arch/arm/configs/hi3516ev200_full_defconfig  .config(emmc启动时执行如下操作:cp arch/arm/configs/hi3516ev200_emmc_defconfig  .config)make ARCH=arm CROSS_COMPILE=arm-himix100-linux- menuconfigmake ARCH=arm CROSS_COMPILE=arm-himix100-linux- uImage(5)单独编译模块:待进入内核源代码目录后,执行以下操作cp arch/arm/configs/hi3516ev200_full_defconfig  .config(emmc启动时执行如下操作:cp arch/arm/configs/hi3516ev200_emmc_defconfig  .config)make ARCH=arm CROSS_COMPILE=arm-himix100-linux- menuconfigmake ARCH=arm CROSS_COMPILE=arm-himix100-linux- modules(6)单独编译uboot:注意:发布包默认按照DMEB板的配置发布,如果客户单板和DEMB板不一致,需要根据客户自己的单板环境修改uboot表格才能使用,否则可能导致uboot无法启动或者其他问题。待进入boot源代码目录后,执行以下操作make ARCH=arm CROSS_COMPILE=arm-himix100-linux- hi3516ev200_defconfig(emmc启动时执行如下操作:make ARCH=arm CROSS_COMPILE=arm-himix100-linux- hi3516ev200_emmc_defconfig)make ARCH=arm CROSS_COMPILE=arm-himix100-linux- -j 20make -C ../../../tools/pc/hi_gzipcp ../../../tools/pc/hi_gzip/bin/gzip arch/arm/cpu/armv7/hi3516ev200/hw_compressed/ -rf Windowns下进入到osdrv/tools/pc/uboot_tools/目录下打开对应单板的Excel文件,在main标签中点击"Generate reg bin file"按钮,生成reg_info.bin即为对应平台的表格文件。从osdrv/tools/pc/uboot_tools目录拷贝reg_info.bin到boot源代码目录,重命名为.regcp ../../../tools/pc/uboot_tools/reg_info.bin .regmake ARCH=arm CROSS_COMPILE=arm-himix100-linux- u-boot-z.binopensource/uboot/u-boot-2016.11下生成的u-boot-hi3516ev200.bin即为可用的u-boot镜像(7)制作文件系统镜像:
在osdrv/pub/中有已经编译好的文件系统,因此无需再重复编译文件系统,只需要根据单板上flash的规格型号制作文件系统镜像即可。SPI NOR Flash使用jffs2格式的镜像,制作jffs2镜像时,需要用到SPI NOR Flash的块大小。这些信息会在uboot启动时会打印出来。建议使用时先直接运行mkfs.jffs2工具,根据打印信息填写相关参数。下面以块大小为64KB为例:osdrv/pub/bin/pc/mkfs.jffs2 -d osdrv/pub/rootfs_uclibc -l -e 0x10000 -o osdrv/pub/rootfs_uclibc_64k.jffs2Nand Flash使用yaffs2格式的镜像,制作yaffs2镜像时,需要用到nand flash的pagesize和ecc。这些信息会在uboot启动时会打印出来。建议使用时先直接运行mkyaffs2image工具,根据打印信息填写相关参数。下面以SPI NAND的2KB pagesize、4bit ecc为例:osdrv/pub/bin/pc/mkyaffs2image100 osdrv/pub/rootfs_uclibc osdrv/pub/rootfs_uclibc_2k_4bit.yaffs2 1 2Nand Flash使用UBI文件系统,在osdrv/tools/pc/ubi_sh下提供mkubiimg.sh工具用于制作UBI文件系统,需要用到NandFlash的pagesize、blocksize和UBIFS分区的大小。以2KB pagesize, 128KB blocksize和UBI文件系统分区大小32MB为例:mkubiimg.sh hi3516ev200 2k 128k osdrv/pub/rootfs 32M osdrv/pub/bin/pcosdrv/pub/rootfs是根文件系统文件夹目录osdrv/pub/bin/pc是制作UBI文件系统镜像的工具目录生成的rootfs_hi3516ev200_2k_128k_32M.ubifs,就是最终用于烧写的UBI文件系统镜像。2. 镜像存放目录说明
编译完的image,rootfs等存放在osdrv/pub目录下
pub
├─ bin│   ├─ board_uclibc -------------------------------------------- himix100编译出的单板用工具
│   │   ├── ethtool
│   │   ├── flashcp
│   │   ├── flash_erase
│   │   ├── flash_otp_dump
│   │   ├── flash_otp_info
│   │   ├── gdb-arm-himix100-linux
│   │   ├── mtd_debug
│   │   ├── mtdinfo
│   │   ├── nanddump
│   │   ├── nandtest
│   │   ├── nandwrite
│   │   ├── sumtool
│   │   ├── ubiattach
│   │   ├── ubicrc32
│   │   ├── ubidetach
│   │   ├── ubiformat
│   │   ├── ubimkvol
│   │   ├── ubinfo
│   │   ├── ubinize
│   │   ├── ubirename
│   │   ├── ubirmvol
│   │   ├── ubirsvol
│   │   └── ubiupdatevol
│   └─ pc
│       ├── lzma
│       ├── mkfs.cramfs
│       ├── mkfs.jffs2
│       ├── mkfs.ubifs
│       ├── mkimage
│       ├── mksquashfs
│       └── ubinize
├─image_uclibc ------------------------------------------------- himix100编译出的镜像文件
│   ├── uImage_hi3516ev200 ----------------------------------------- kernel镜像
│   ├── u-boot-hi3516ev200.bin ------------------------------------- u-boot镜像
│   ├── rootfs_hi3516ev200_64k.jffs2 ------------------------------- 64K jffs2 文件系统镜像
│   ├── rootfs_hi3516ev200_128k.jffs2 ------------------------------ 128K jffs2 文件系统镜像
│   ├── rootfs_hi3516ev200_256k.jffs2 ------------------------------ 256K jffs2 文件系统镜像
│   ├── rootfs_hi3516ev200_2k_4bit.yaffs2 -------------------------- yaffs2 文件系统镜像
│   ├── rootfs_hi3516ev200_2k_24bit.yaffs2 ------------------------- yaffs2 文件系统镜像
│   ├── rootfs_hi3516ev200_4k_4bit.yaffs2 -------------------------- yaffs2 文件系统镜像
│   ├── rootfs_hi3516ev200_4k_24bit.yaffs2 ------------------------- yaffs2 文件系统镜像
│   ├── rootfs_hi3516ev200_2k_128k_32M.ubifs------------------------ 2k 128k UBI 文件系统镜像
│   └── rootfs_hi3516ev200_4k_256k_50M.ubifs------------------------ 4k 256k UBI 文件系统镜像
│
├─ rootfs.ubiimg ----------------------------------------------- UBIFS根文件系统
├─ rootfs_uclibc.tgz  ------------------------------------------- himix100编译出的rootfs文件系统3.osdrv目录结构说明:
osdrv
├─Makefile ------------------------------ osdrv目录编译脚本
├─tools --------------------------------- 存放各种工具的目录
│  ├─board ------------------------------ 各种单板上使用工具
│  │  ├─ethtools ----------------------- ethtools工具
│  │  ├─reg-tools-1.0.0 ----------------- 寄存器读写工具
│  │  ├─eudev-3.2.7 ------------------------ udev工具集
│  │  ├─mtd-utils ----------------------- flash裸读写工具集
│  │  ├─gdb ----------------------------- gdb工具
│  │  └─e2fsprogs ----------------------- mkfs工具集
│  └─pc ---------------------------------- 各种pc上使用工具
│      ├─jffs2_tool----------------------- jffs2文件系统制作工具
│      ├─cramfs_tool --------------------- cramfs文件系统制作工具
│      ├─squashfs4.3 --------------------- squashfs文件系统制作工具
│      ├─nand_production ----------------- nand量产工具
│      ├─lzma_tool ----------------------- lzma压缩工具
│      ├─zlib ---------------------------- zlib工具
│      ├─mkyaffs2image -- ---------------- yaffs2文件系统制作工具
│      └─uboot_tools ----------------------uboot镜像制作工具、xls文件及ddr初始化脚本、reg_info.bin制作工具
├─pub ----------------------------------- 存放各种镜像的目录
│  ├─image_uclibc ------------------------ 基于himix100工具链编译,可供FLASH烧写的映像文件,包括uboot、内核、文件系统
│  ├─bin -------------------------------- 各种未放入根文件系统的工具
│  │  ├─pc ------------------------------ 在pc上执行的工具
│  │  ├─board_uclibc --------------------- 基于himix100工具链编译,在单板上执行的工具
│  └─rootfs_uclibc.tgz ------------------- 基于himix100工具链编译的根文件系统
├─opensource----------------------------- 存放各种开源源码目录
│  ├─busybox ---------------------------- 存放busybox源代码的目录
│  ├─uboot ------------------------------ 存放uboot及安全boot源代码的目录
│  └─kernel ----------------------------- 存放kernel源代码的目录
└─rootfs_scripts ------------------------- 存放根文件系统制作脚本的目录4.注意事项
(1)在windows下复制源码包时,linux下的可执行文件可能变为非可执行文件,导致无法编译使用;u-boot或内核下编译后,会有很多符号链接文件,在windows下复制这些源码包, 会使源码包变的巨大,因为linux下的符号链接文件变为windows下实实在在的文件,因此源码包膨胀。因此使用时请注意不要在windows下复制源代码包。
(2)使用某一工具链编译后,如果需要更换工具链,请先将原工具链编译文件清除,然后再更换工具链编译。
(3)编译板端软件a.此芯片具有浮点运算单元和neon。文件系统中的库是采用软浮点和neon编译而成,因此请用户注意,所有此芯片板端代码编译时需要在Makefile里面添加选项-mcpu=cortex-a7、-mfloat-abi=softfp和-mfpu=neon-vfpv4。
如:
对于A7:CFLAGS += -mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -fno-aggressive-loop-optimizationsCXXFlAGS +=-mcpu=cortex-a7 -mfloat-abi=softfp -mfpu=neon-vfpv4 -fno-aggressive-loop-optimizations
其中CXXFlAGS中的XX根据用户Makefile中所使用宏的具体名称来确定,e.g:CPPFLAGS。

kernel 下载

进入 osdrv/opensource/kernel/目下载linuxlinux-4.9.37.tar.gz

cd osdrv/opensource/kernel/
wget https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.9.37.tar.gz

该方法下载很慢,建议迅雷下载,拷贝到osdrv/opensource/kernel/
执行log:

dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package$ cd osdrv/opensource/kernel/
dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/opensource/kernel$ wget https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.9.37.tar.gz
--2020-06-29 06:13:44--  https://mirrors.edge.kernel.org/pub/linux/kernel/v4.x/linux-4.9.37.tar.gz
Resolving mirrors.edge.kernel.org (mirrors.edge.kernel.org)... 147.75.95.133, 2604:1380:3000:1500::1
Connecting to mirrors.edge.kernel.org (mirrors.edge.kernel.org)|147.75.95.133|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 141696654 (135M) [application/x-gzip]
Saving to: ‘linux-4.9.37.tar.gz’linux-4.9.37.tar.gz                        1%[>                                                                                ]   2.32M  8.69KB/s    eta 4h 18m

下载yaffs2utils-0.2.9.tar.gz

cd osdrv/tools/pc/mkyaffs2image/
wget https://codeload.github.com/dorigom/yaffs2utils/tar.gz/0.2.9

执行log:

$ wget https://codeload.github.com/dorigom/yaffs2utils/tar.gz/0.2.9
--2020-06-29 06:23:09--  https://codeload.github.com/dorigom/yaffs2utils/tar.gz/0.2.9
Resolving codeload.github.com (codeload.github.com)... 13.229.189.0
Connecting to codeload.github.com (codeload.github.com)|13.229.189.0|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/x-gzip]
Saving to: ‘0.2.9’0.2.9                   [   <=>              ]  38.95K  82.5KB/s    in 0.5s    2020-06-29 06:23:11 (82.5 KB/s) - ‘0.2.9’ saved [39880]

下载gdb-7.9.1.tar.gz

cd osdrv/tools/board/gdb/
wget http://ftp.gnu.org/gnu/gdb/gdb-7.9.1.tar.gz

下载ncurses-6.0.tar.gz

cd osdrv/tools/board/gdb/
wget http://ftp.gnu.org/gnu/ncurses/ncurses-6.0.tar.gz

下载util-linux-2.31.tar.gz

osdrv/tools/pc/cramfs_tool/
wget https://mirrors.edge.kernel.org/pub/linux/utils/util-linux/v2.31/util-linux-2.31.tar.gz

编译:

dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package$ cd osdrv/
dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv$ make all
  • 编译错误:/bin/sh: 1: pushd: not found

    解决方法:
    在dash模式下,执行:sudo dpkg-reconfigure dash,弹出的串口选择NO,执行完成后,输入exit退出

dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv$ cd /bin
dopi@ubuntu:/bin$ sh
$ sudo dpkg-reconfigure dash
[sudo] password for dopi:
Removing 'diversion of /bin/sh to /bin/sh.distrib by dash'
Adding 'diversion of /bin/sh to /bin/sh.distrib by bash'
Removing 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by dash'
Adding 'diversion of /usr/share/man/man1/sh.1.gz to /usr/share/man/man1/sh.distrib.1.gz by bash'
$ sh
sh-4.4$ exit

  • 编译错误2:缺各种依赖项库
configure: WARNING: cannot find uuid library required for mkfs.ubifs
configure: mtd-utils can optionally be built without mkfs.ubifs
configure: WARNING: cannot find ZLIB library required for mkfs programs
configure: mtd-utils can optionally be built without mkfs.ubifs
configure: mtd-utils can optionally be built without mkfs.jffs2
configure: error: missing one or more dependencies
Makefile:45: recipe for target '/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/tools/pc/jffs2_tool/tmp/sbin/mkfs.jffs2' failed
make[1]: *** [/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/tools/pc/jffs2_tool/tmp/sbin/mkfs.jffs2] Error 1
make[1]: Leaving directory '/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/tools/pc/jffs2_tool'
Makefile:342: recipe for target 'hipctools' failed
make: *** [hipctools] Error 2

解决方法:osdrv/tools/pc/jffs2_tool/的readme_cn.txt ,写得特别详细,不得不佩服海思的工程师。

dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv$ cd tools/pc/jffs2_tool/
dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/tools/pc/jffs2_tool$ ls
lzo-2.09.tar.gz  Makefile  mtd-utils-2.0.2.tar.bz2  readme_cn.txt  readme_en.txt  tmp
dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/tools/pc/jffs2_tool$ cat readme_cn.txt
一、mtd-utils2.0.2依赖以下几个库,以ubuntu为例,安装方式请参考下面命令:sudo apt-get install zlib1g-dev liblzo2-dev uuid-dev pkg-config
二、由于mtd-utils2.0.2通过pkg-config工具检查各个库是否正常安装,因此请参考如下方式设置pkg-config工具搜索路径:export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/lib/x86_64-linux-gnu/pkgconfig"
三、mtd-utils2.0.2依赖于automake1.15.1版本,请参考如下方式安装automake1.15.1版本:1、删除原有automake版本sudo apt-get autoremove automake2、下载1.15.1版本1)Windows系统中使用浏览器访问automake工程url并下载对应源码包:https://lists.gnu.org/archive/html/info-gnu/2017-06/msg00007.html2)linux系统中可以使用下面命令下载:wget ftp://ftp.gnu.org/gnu/automake/automake-1.15.1.tar.gz3、编译安装automake1.15.1tar zxvf automake-1.15.1.tar.gzcd automake-1.15.1/./configuremakemake install
四、编译mtd-utils2.0.2

sudo apt-get install -y zlib1g-dev liblzo2-dev uuid-dev pkg-config
export PKG_CONFIG_PATH="$PKG_CONFIG_PATH:/usr/lib/x86_64-linux-gnu/pkgconfig"
wget ftp://ftp.gnu.org/gnu/automake/automake-1.15.1.tar.gz
tar zxvf automake-1.15.1.tar.gz
cd automake-1.15.1
sudo ./configure
sudo make
sudo make install
  • 执行automake1.15.1 的./configure报错
opi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/tools/pc/jffs2_tool/automake-1.15.1$ ./configure
checking whether make supports nested variables... yes
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether ln -s works... yes
checking for perl... /usr/bin/perl
checking for tex... no
checking for yacc... no
checking for byacc... no
checking for bison... no
checking for lex... no
checking for flex... no
checking whether autoconf is installed... no
configure: error: Autoconf 2.65 or better is required.

解决方法:

wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.65.tar.gztar xzf autoconf-2.65.tar.gzcd autoconf-2.65sudo ./configuresudo make
sudo make install
  • 安装autoconf-2.65报错:缺少:GNU M4 1.4.6
dopi@ubuntu:/usr/dopi/Hi3516EV200_SDK_V1.0.1.0/package/osdrv/tools/pc/jffs2_tool/autoconf-2.65$ ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether /bin/sh -n is known to work... yes
checking for characters that cannot appear in file names... none
checking whether directories can have trailing spaces... yes
checking for expr... /usr/bin/expr
checking for GNU M4 that supports accurate traces... configure: error: no acceptable m4 could be found in $PATH.
GNU M4 1.4.6 or later is required; 1.4.13 is recommended

解决方法:

wget http://ftp.gnu.org/gnu/m4/m4-1.4.13.tar.gz
tar m4-1.4.13.tar.gz
cd m4-1.4.13sudo ./configure sudo make sudo make install

连环嵌套报错解决之后,回头重新编译,安装autoconf-2.65,automake1.15.1。以上解决了mtd-utils的几个依赖项文件,安装完成。

下载mtd-utils2.0.2

访问:ftp://ftp.infradead.org的 /pub/mtd-utils/ 目录,找到mtd-utils2.0.2.tar下载。
执行命令:

 tar xjvf mtd-utils-2.0.2.tar.bz2 cd mtd-utils-2.0.2/
sudo ./configure
sudo make
sudo make install

回头回到目录osdrv目录下,执行 make all 文件。

海思官方SDK Hi3516EV200_SDK_V1.0.1.0的编译教程相关推荐

  1. 海思Hi3516DV300 SDK首次安装以及编译问题的解决

    摘要 首先应阅读"Hi3516CV500/Hi3516DV300/Hi3516AV300 开发环境 用户指南"完成开发环境的搭建,这样会少走不少弯路.那么下面将给出这个文档给出的软 ...

  2. 海思Hi3559AV100 SDK完整编译流程

    前言: 从海思Hi3516到Hi3519再到Hi3559,笔者已经编译了很多次海思SDK,但是每次编译都不得不从一个文档看到另一个文档,再是另一个文档--这一过程实在是繁琐之至.为了是这一过程清晰并且 ...

  3. 海思 hisi SDK中视频层号和通道号的理解

    SDK 将通道归属于视频层管理,一个视频层上可显示多个视频,每一个视频显示区域称为一个通道,视频被限制通道内,通道被限制在视频层内.对于一个视频层,其上面的通道都是独立的.同时,不同的视频层上的通道也 ...

  4. 海思视频sdk解析_1-hi3536介绍

    Hi3536 H.265解码处理器 接触一款新的平台时先了解它能做些什么,对外提供了些什么接口. 1.demo板外部接口 01 USB3.0 接口 02 内部 HDMI 输出接口 03 VGA 输出接 ...

  5. 海思HI3559A SDK文档说明

    添加链接描述1. OS部分 目录: ReleaseDoc\zh\01.software\board\OSDRV 主要文档: Hi3559A╱C V100 U-boot 移植应用开发指南.pdf Hi3 ...

  6. 抖音反编译:android反编译之最新版本抖音(v7.7.0)安卓版反编译教程

    1.准备 安卓反编译,我们用到的工具有两个 dex2jar 将dex文件转为jar文件 jd-gui 用于查看jar文件源代码,支持引用之间的跳转 2.获取抖音dex文件 如果你对这方面有兴趣,可以和 ...

  7. 51-20210316华为海思Hi3516DV300的linux系统编译2(SPI模式)

    51-20210316华为海思Hi3516DV300的linux系统编译 2021/3/16 10:42 https://xueqiu.com/7970718062/159110439 官井想开挖掘机 ...

  8. 海思Hi3559AV100移植Qt5.9.9(一)

    目录 前言 1 基础环境搭建 1.1 概述 1.2 Ubuntu虚拟机安装 1.2.1 准备 1.2.2 安装 1.3 软件包安装 2 安装编译SDK 2.1 准备 2.2 解压缩SDK 2.3 展开 ...

  9. 灵派海思SDK的API参考手册

    本手册镜像地址:https://gitee.com/LinkPi/LinkLib/wikis/pages 灵派海思SDK的API参考手册 1. 概述 基本接口详解 LinkObject Link Js ...

最新文章

  1. python3 for mac_PyCharm for Mac-PyCharm Mac版下载 V2018.3.2-PC6苹果网
  2. tensorflow 对csv数据进行批量获取
  3. 【Android 异步操作】线程池 ( 线程池简介 | 线程池初始化方法 | 线程池种类 | AsyncTask 使用线程池示例 )
  4. 在VB.NET中应用SQLDMO
  5. 单行文字压缩处理(要指定字体)
  6. 【编译原理】文法分类
  7. python开源库生成式对抗网络_神经网络结构:生成式对抗网络(GAN)
  8. python xlrd读取excel慢_python操作Excel读写--使用xlrd
  9. 0c-36-自动释放池应用场景
  10. java的各种加载和初始化的详细过程
  11. vue2.0实现银行卡类型种类的选择
  12. jupyter notebook和python有什么区别_Python神器 Jupyter Notebook
  13. mysql求平方根_MySQL SQRT 函数
  14. sql CASE WEN 函数
  15. 2021年35个最佳WordPress企业主题和商业主题
  16. android蓝牙传输文件到mysql_安卓上的蓝牙数据传输
  17. VUE不同路由地址跳转相同页面,页面数据根据不同参数刷新
  18. Linux文件及目录常用命令
  19. 上半年要写的博客文章30
  20. 我的世界java内存不足_我的世界:使用启动器开MC,提示内存过大?我教你怎么解决...

热门文章

  1. Android手机令牌教程
  2. STM32中BOOT模式配置的作用
  3. 把手机摄像头或智能电视摄像头数据推送到另一台手机或智能电视上的方法
  4. 在Android Studio 上为项目添加Git版本控制
  5. 经典卷积和深度卷积的神经网络
  6. python 开启子进程的两种方式
  7. android ftdi,从 Android FTDI串行通信开始_ftdi_开发99编程知识库
  8. Redis高可用集群-哨兵模式(Redis-Sentinel)搭建配置教程【Windows环境】
  9. python海龟作图好看图案_海龟作图---用Python绘图
  10. Mac ps 2021 3D功能无法使用问题,怎么办?