- 博客(228)
- 资源 (51)
- 收藏
- 关注

原创 海思Hi3521DV200移植opencv3.3
1.官网下载源码,opencv-3.3.0版本https://opencv.org/releases/2.编译cmake2.1建立目录mkdir buildmkdir output2.2 新建一个bulid.sh脚本#!/bin/shcmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_C_COMPILER=arm-himix400-linux-gcc \ -D CMAKE_CXX_COMPILER=arm-himix40.
2020-08-12 11:11:49
1061

原创 I2C用户态工具
我们可以根据设备节点来操作响应的i2c,以便应用层实现对i2c读写操作。内核态和用户态操作都可以在外设驱动指南pdf中有相应的说明。本示例可以当作一个工具使用。当然对于i2c工具很多,比如海思tools封装好的i2c_read和i2c_write,另外还有开源工具i2c-tools(busybox编译出来有这个工具)。/*** Copyright (C), 2016, * All rights reserved.** @file maincpp* @brief * @autho
2020-07-29 08:50:46
710
原创 U盘测试读写速度
## 挂载U盘mount -t vfat /dev/sda1 /var/sdcard ## 测试写入100MB速度sync;time dd if=/dev/zero of=/var/sdcard/largefile bs=10k count=10240;time sync ## 测试读取100MB速度 (清除缓存)sync;echo 3 > /proc/sys/vm/drop_caches;time dd if=/var/sdcard/largefile of=/dev/null bs.
2020-07-04 09:12:12
1896
原创 视频编解码器 2020-比赛开始
引言目前已有不少可应用于视频流媒体服务的视频编解码器,而且今年还将发布更多。诸多的方案给视频服务商带来了选择困难症,因为他们需要为自己选择合适的编解码器,以确保为用户传送的音画内容能具备尽可能好的质量和最低的比特率,同时还要考虑到编码器对计算资源的要求。多年来,选择视频编解码器一直都是很简单的事:从上世纪90年代末接替数字电视的MPEG-2(H. 262)开始,到千禧年早期(2000年初期)主导视频会议的MPEG-4 Part 2(H. 263),再到之后的MPEG4 Part 10即...
2020-06-30 08:45:33
453
原创 Linux SD/MMC/SDIO驱动分析(转)
Linux SD/MMC/SDIO驱动分析一、SD/MMC/SDIO概念区分SD(SecureDigital)与MMC(MultimediaCard)SD是一种flash memory card的标准,也就是一般常见的SD记忆卡,而MMC则是较早的一种记忆卡标准,目前已经被SD标准所取代。在维基百科上有相当详细的SD/MMC规格说明:[http://zh.wikipedia.org/wiki/Secure_Digital]。SDIO(SecureDigital I/O...
2020-06-14 17:22:46
899
原创 udevadm
udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB3)Udevadm info starts with the device specified by the devpath and thenwalks up the chain of parent devices. It prints for every devicefound, all possible attributes in the udev rules key format.
2020-06-03 10:56:07
431
原创 iptables的内核配置
CONFIG_PACKET - 允许程序直接访问网络设备(译者注:最常用的就是网卡了),象tcpdump 和 snort就要使用这个功能。严格地说,iptables并不需要CONFIG_PACKET,但是它有很多用处(译者注:其他程序需要),所以就选上了。当然,你不想要,不选就是了。(译者注:建议还是选的为好)CONFIG_NETFILTER - 允许计算机作为网关或防火墙。这个是必需的,因为整篇文章都要用到这个功能。我想你也需要这个,谁叫你学iptables呢:)当然,你要给网络设备安装正确的
2020-05-26 19:58:21
3186
原创 Linux-gdb-段错误调试
Linux-gdb-段错误调试Gdb 是一个超级强大的工具,经常在 Linux 平台的内核开发与应用程序开发当中看到它的身影。由于它的命令集极其庞大,本文就不针对具体的命令进行介绍,而是根据具体的问题场景进行一次使用总结,我最常用来调试的是段错误一类的场景,这里就取一个例子进行总结。。段错误类属于泛指,其实包括 SIGBUS、SIGSEGV 等类型的错误,或者是程序运行到某一段之后出现崩溃导致程序退出的问题。通常情况下使用一些 log 工具集成到代码里面也可以查出段错误类发生时刻的函数调用.
2020-05-24 15:29:55
914
原创 aarch64-himix200-linux-gcc -mabi=apcs-gnu
aarch64-himix200-linux-gcc: error: unrecognized argument in option '-mabi=apcs-gnu'aarch64-himix200-linux-gcc: note: valid arguments to '-mabi=' are: ilp32 lp64aarch64-himix200-linux-gcc: error: unrecognized command line option '-mapcs'; did you mean '--
2020-05-23 16:20:14
1287
1
原创 海思uboot使用dtc报错
scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config.h CFG u-boot.cfg GEN include/autoconf.mk.dep GEN include/autoconf.mk CHK include/config/uboot.release CHK include/generated/timestamp_autogenerated.h./.
2020-05-14 16:55:54
725
原创 CMake Error: Could not find CMAKE_ROOT !!!
ubuntu安装最新cmak时候出现以下错误root@linux:/home/root/cmake-3.17.2# cmake --versionCMake Error: Could not find CMAKE_ROOT !!!CMake has most likely not been installed correctly.Modules directory not found in/usr/local/binSegmentation fault (core dumped)解决方法
2020-05-10 10:30:05
1219
原创 Hi3516DV300移植exfat-nofuse
1.源码https://github.com/dorimanx/exfat-nofuse2.编译修改makefileKDIR := /home/xxx/1.sdk/Hi3516CV500_SDK_V2.0.1.1/osdrv/opensource/kernel/linux-4.9.ymake ARCH=arm CROSS_COMPILE=arm-himix200-linux-...
2020-05-05 09:32:35
851
原创 mount挂载nfs超时
设备能ping通服务端,服务端也能ping通设备端,但是就是挂载不上。通过打印ifconfig查看,mac地址一致会变。我的解决方法:固定mac地址即可。ifconfig eth0 hw ether 00:0C:29:34:97:22...
2020-04-30 17:10:29
3478
1
原创 pppd2.4.5 移植海思平台报错 strip: Unable to recognise the format of the input file
1.下载源码http://www.linuxfromscratch.org/~thomasp/blfs-book-xsl/basicnet/ppp.html2.配置编译./configure --prefix=$PWD/__installmake CC=arm-himix200-linux-gcc;make install但是make install报错stri...
2020-04-17 10:10:10
1273
原创 海思模式日志 cat /proc/umap/vi
其实有时候我们查看海思属性只看某个状态的,全部的很多也不易查找浏览,可以借助grepcat /proc/umap/vi | grep "VI PIPE STATUS" -A 8打印如下-------------------------------VI PIPE STATUS---------------------------------------------- PipeI...
2020-04-13 14:57:35
3213
原创 海思kernel异常反汇编定位
加载驱动时候内核打印报错PC is at ssp_lcd_ioctl+0x5c/0x84 [hi_ssp_ota5182]LR is at do_vfs_ioctl+0xb0/0x8ecpc : [<bf8aa364>] lr : [<c01f031c>] psr: 80000013sp : ccbbdef8 ip : 00000003 fp : ...
2020-04-11 10:50:55
779
原创 编译驱动时候报错 WARNING: "__aeabi_d2uiz" undefined!
WARNING: "__aeabi_d2uiz" [xxx.ko] undefined!WARNING: "__aeabi_dmul" [xxx.ko] undefined!WARNING: "__aeabi_ddiv" [xxx.ko] undefined!WARNING: "__aeabi_ui2d" [xxx.ko] undefined!原因:为了进度当时使用了浮点数除法报错,网...
2020-04-08 14:11:31
2016
1
原创 hi3519av100 的相关管脚复用功能无法用作GPIO功能解决办法
sdk版本Hi3519AV100_SDK_V2.0.2.0,用户指南里有特别注意: 当使用GPIO13、GPIO9_6和GPIO9_7时,需要先配置MISC_CTRL1[mipitxphy_cmos_mode_enable]为1(寄存器详细描述见3.5.5.2章节),同时配置PHY_RSTZ和PHY_TST_CTRL0 寄存器分别为0x0和0x1(寄存器详情请参见10.5.5小节),使MIPI...
2020-04-03 09:00:29
1384
原创 wpa_supplicant 和hostpad让WiFi模块同时工作在AP+STA模式(转)
https://blog.youkuaiyun.com/leumber/article/details/85337891本文将介绍如何使用wpa_supplicant服务程序和wpa_cli客户端程序,让嵌入式设备的WIFI模块工作在station模式并连接网络,以及如何使用hostapd和udhcpd创建一个WIFI热点,并且解决如何让这两种工作模式共存。WLAN一般有四种工作模式Maste...
2020-04-01 11:28:04
2200
原创 Linux下进程重命名的 prctl函数
有时候调试多线程时候,特别有时候查找cpu占有率的问题时候,不知道哪个线程占有,不好查找。#include <sys/prctl.h>int prctl(int option, unsigned long arg2, unsigned long arg3, unsigned long arg4, unsigned long arg5);option:PR_GET_PD...
2020-04-01 10:10:23
1140
原创 海思 强制销毁VB功能
插入hi35xx_base.ko时加上模块参数vb_force_exit=1,可允许用户在程序退出时不用手动销毁VB,而由系统强制销毁VB。注意:此功能不是规范安全的做法,建议客户还是应该在退出程序时释放已申请的资源,禁止在使用时强制销毁资源。...
2020-03-27 19:20:57
909
原创 编译驱动警告 warning: ISO C90 forbids mixed declarations and code [-Wdeclaration-after-statement]
ISO C90禁止将变量声明和代码混合使用,具体表现为在语句后面声明变量。
2020-03-26 15:02:28
1890
1
原创 海思USB2.0 如何关闭Host Device 自切换
关闭Host Device自切换需要在menuconfig菜单时,选择以下选项:Device Drivers---> [*] USB support---> <*>USB Gadget Support---> USB Peripheral Controller---> ...
2020-03-24 22:04:56
1281
原创 HI_MPI_IVE_DMA抠图
int yuv400_crop(uint32_t width_src, uint32_t height_src, VIDEO_FRAME_INFO_S *stFrame, uint32_t x_start, uint32_t y_start, uint32_t width_dst, uint32_t height_dst, IVE_IMAGE_S * dst_mm...
2020-03-18 10:37:47
1092
原创 wpa_supplicant
官网: http://w1.fi/wpa_supplicant/wpa_supplicant是一个连接、配置WIFI的工具,它主要包含wpa_supplicant与wpa_cli两个程序。通常情况下,可以通过wpa_cli来进行WIFI的配置与连接,如果有特殊的需要,可以编写应用程序直接调用wpa_supplicant的接口直接开发。启动wpa_supplicant应用$ wpa_su...
2020-03-15 11:50:35
212
原创 Linux中内核IO使用方法
请参考:Hi3519AV100_SDK_V2.0.2.0\osdrv\opensource\kernel\linux-4.9.y\Documentation\gpio\gpio-legacy.txt文件提供的API:驱动需要包含 #include <linux/gpio.h>判断一个IO是否合法:int gpio_is_valid(int number);设置GPIO的...
2020-03-12 18:51:44
514
原创 海思更改uboot命令行前缀 CONFIG_SYS_PROMPT
在配置文件中.config或者在\uboot\u-boot-2016.11\configs\hi3516dv200_emmc_defconfig这样改更彻底CONFIG_SYS_PROMPT="hisilicon # "
2020-03-05 16:39:28
889
1
原创 mount --bind使用方法
针对只读文件系统,有时候避免更改升级rootfs麻烦,可以使用mount --bind将一个临时文件系统目录挂载到rootfs系统上,这样就可以更改该目录下文件,而不必重新制作升级rootfs,同时重启后不会改变rootfs里面原始内容。mount --bind命令来将两个目录连接起来,mount --bind命令是将前一个目录挂载到后一个目录上,所有对后一个目录的访问其实都是对前一个目录的访...
2020-03-04 17:26:59
999
原创 海思Hi3519AV100 uboot下不能识别usb3.0 设备
hisilicon # usb startstarting USB...USB0: Register 2000140 NbrPorts 2Starting the controllerUSB XHCI 1.10scanning bus 0 for devices... unable to get device descriptor (error=-1)Device not re...
2020-03-02 18:16:35
2928
3
原创 VID PID -List of USB ID's(一)
## List of USB ID's## Maintained by Stephen J. Gowdy <linux.usb.ids@gmail.com># If you have any new entries, please submit them via# http://www.linux-usb.org/usb-ids.html# or send entrie...
2020-02-29 10:46:51
81671
原创 Hi3519AV100 内核编译错误 ./lib/build_OID_registry line 14
Can't locate strict.pm in @INC (@INC contains: /tmp/ndk-andrewhsieh/build/perl/prefix/lib/site_perl/5.16.2/x86_64-linux /tmp/ndk-andrewhsieh/build/perl/prefix/lib/site_perl/5.16.2 /tmp/ndk-andrewhsieh...
2020-02-28 09:04:46
952
原创 shell 脚本 xargs rm -f
makefile里面可以通过find 查找特定的名字来删除特定的文件,比较方便。通过 xargs rm -f可以把find命令查找到的结果删除clean: @rm $(PCIE_MCC_TOPD)/out/* -f @find $(PCIE_MCC_TOPD) -name '*.o' -o -name '.*.cmd' | xargs rm -f @find $(P...
2020-02-26 09:22:10
4421
原创 Hi3519AV100 USB DEVICE驱动问题
配置文件hi3519av100_smp_emmc_defconfig当编译内核时选择的配置文件带有smp字样时,则#ifndefCONFIG_HISI_MC(如图1-4)下的节点为有效节点,且默认配置为:port0默认配置为host模式,port1默认配置为device模式,如需进行切换,可在dtsi中打开相应设备节点(即修改#if下的1和0对节点进行打开和关闭)。当编译内核时选择的...
2020-02-25 14:36:46
2327
原创 Hi3519AV100 PCIE_USB3_MODE
在Hi3519AV100芯片中,PCIE与USB3.0接口信号是复用的,应用时需要根据场景选择复用模式。复用模式由COMBO_PHY_MODE(与 SENSOR_HS2复用)管脚上电时的上下拉决定。请参考 Hi35xxVxxx_PINOUT_CN.xlsx中管脚信息表页面。1.COMBO_PHY_MODE "用于设定COMBO PHY接口的复用模式:0:PCIe模式;1:USB3模...
2020-02-25 11:13:01
1143
原创 ./TestSerialReadWrite: line 1: syntax error: unexpected word (expecting ")")
编译命令arm-himix200-linux-gcc -c TestSerialReadWrite.c -o TestSerialReadWrite运行就会报如上错误,可是去掉-c就可以正常运行。通过查询如下-c 编译、汇编到目标代码,不进行链接-o <文件> 输出到 <文件>...
2020-02-24 17:48:37
340
原创 I帧、P帧、B帧,以及PTS、DTS的关系(转)
原文链接:https://blog.youkuaiyun.com/davidsguo008/article/details/72628690在MPEG编码的过程中,部分视频帧序列压缩成为I帧,部分压缩成P帧,还有部分压缩成B帧。I帧法是帧内压缩法,也称为“关键帧”压缩法。I帧法是基本离散余弦变换 DCT( Discrete Cosine Transform )的压缩技术,这种算法与JPEG压缩算法类似...
2020-01-13 15:19:27
441
原创 海思移植 APR(Apache Portable Runtime)
0.前言Apache可移植运行时(Apache Portable Runtime,简称APR)是ApacheHTTP服务器的支持库,提供了一组映射到下层操作系统的API。如果操作系统不支持某个特定的功能,APR将提供一个模拟的实现。这样程序员使用APR编写真正可在不同平台上移植的程序。最初,APR是作为Apache HTTP服务器的一部分而存在的,但是Apache软件基金会将其延伸成一个单独的...
2020-01-07 16:56:53
999
原创 海思GUI 设计一点思考
前言 GUI界面最主要功能是显示信息和人机交互。显示信息主要功能实时显示设备的状态,比如设备电压、温度,GPS状态,4G状态和实时视频等状态。而人机交互主要是完成设备功能设置,参数的获取和设置,拨打电话等功能。针对海思安防这块来说,主要是在linux架构下利用linux framebuffer来完成的,这块海思只提供hifb,可以通过ioctl操作,而对于控件主要是由自己来完成,不同厂家...
2020-01-04 10:48:32
1048
1
原创 find和grep区别
在使用linux时,经常需要进行文件查找。其中查找的命令主要有find和grep。两个命令是有区的。 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等。 (2)grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找。使用方法:grep --he...
2019-12-30 10:29:21
6124
Hi3559A╱C V100 ultra-HD Mobile Camera SoC 用户指南.pdf
2019-03-21
hi3559Av100 HiMPP V4.0 媒体处理软件开发参考.pdf
2019-03-21
Hi3559CV100 ultra-HD Mobile Camera SoC 产品简介.pdf
2019-06-12
Hi3559AV100 ultra-HD Mobile Camera SoC 产品简介.pdf
2019-06-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人