linux
yangyang031213
QQ:1325989310
微信:18792430347
C++/QT/C/linux/MFC...
展开
-
3519A摄像头颜色优化
软件使用windows 端 HiPQTools 和 ITTP_Stream 解压即可运行,linux 端将软件解压后,替换 lib 下sensor 的 so,如果是没有的 sensor,则需要在 config 下增加 sensor 的配置,从其他 sensor 配置复制,修改复制配置文件中的 sensor 名和 so 名即可。启动 ittb_stream 时,需要将 80 端口空出来,否则好...原创 2020-04-03 14:40:59 · 1013 阅读 · 0 评论 -
海思3519A uboot开机画面
首先确保在 linux 下已经调好 mipi 驱动,使用 uboot 已经移植好了 mipi 相关驱动,只需要点亮屏幕背光,以及屏相关的初始化。首先需要在 Main.c 中增加 pwm 初始化的代码,pwm 初始化写寄存器即可,但是需要注意,需要将 PWM_OUT 和 pwm 时钟打开,再去配置寄存器: //open pwm,start screen light back //P...原创 2020-04-03 12:02:10 · 1915 阅读 · 19 评论 -
海思屏幕MIPI显示颜色异常
现象是使用 mipi 显示时,视频颜色是正常的,但是 QT 程序和 hifb 测试程序颜色均不正常,但是 hifb 的背景颜色是正常的。主要的问题是 sample hifb 的颜色也都不对,怎么调都不出来,后续还是问了技术支持,技术支持知道这个问题,在使用 mipi 显示时,图形层需要用 HI_MPI_VO_SetGraphicLayerCSC 设置,参照文档:详细说明了这个,但是在修改时还...原创 2020-01-12 20:50:33 · 4120 阅读 · 5 评论 -
linux Qt4.8屏幕旋转(横屏、竖屏)
linux下要实现应用程序屏幕可旋转,也就是可切换横屏竖屏,可参考:方法一:利用 QGraphicsView 实现旋转,参照另一篇文章QGraphicsView旋转(横屏竖屏)方法二:利用API QWSDisplay::setTransformation 完成界面整体的旋转,为此,需在 qt 编译 config时加上参数:-qt-gfx-transformed -qt-gfx-linuxfb...原创 2020-01-12 20:47:18 · 2541 阅读 · 0 评论 -
Qt4.8.6交叉编译无法编译出webkit
使用如下命令config代码,即使加上 -webkit 参数,也无法编译出来:./configure -v --prefix=/opt/Qtopia4.8.6_mix200/ -prefix-install -no-pch -xplatform qws/linux-arm-himix200-g++ -arch arm -embedded arm -qt-freetype -no-largefil...原创 2020-01-01 12:38:15 · 1524 阅读 · 0 评论 -
iptables交叉编译及使用
从https://www.netfilter.org/projects/iptables/downloads.html下载新版本的iptables,拷贝、解压后config:./configure --prefix=/home/nfsshare/hisi/iptables/iptables --host=arm-linux CC=arm-himix200-linux-gcc执行出现:che...原创 2020-01-01 12:31:19 · 7459 阅读 · 6 评论 -
wifi连接及启动热点
连接wifi现在wpa_supplicant、hostapd、rt8821驱动都编译完了,还需要在busybox添加udhcp支持:make menuconfigmakemake insall#install在_install目录下make menuconfig配置:然后将_install目录与osdrv/pub/rootfs_glibc合并,重新制作文件系统,使用yaffs2、...原创 2020-01-01 12:23:52 · 2174 阅读 · 0 评论 -
wpa_supplicant、hostapd编译
wpa_cli、wpa_supplicant编译根据Quick_Start_Guide_for_Driver_Compilation_and_Installation.pdf文档:选择文件wpa_supplicant_8_M_6.x_rtw_r24570.20171025.tar.gz,解压:tar zxvf wpa_supplicant_8_M_6.x_rtw_r24570.201710...原创 2019-12-27 15:41:35 · 1136 阅读 · 3 评论 -
rtl8821 wifi驱动编译
参照文档说明,解压rtl8821CS_WiFi_linux_v5.5.1_30884.20181122_COEX20180712-3232.tar.gz,修改MakeFile文件,主要修改目标平台、交叉编译环境和内核路径,如下:1.去掉默认为PC的目标平台,修改为海思:2、修改交叉编译环境和内核路径:修改完后,make,ko就生成了:需要的话,可以吧debug关掉,现在是开着的:...原创 2019-12-27 15:24:24 · 4893 阅读 · 9 评论 -
wpa_cli、wpa_supplicant连接热点
需要将rtl8821cs.ko、wpa_cli、wpa_supplicant等移植到板子上,wpa_supplicant包含两个主要的可执行工具:wpa_supplicant和wpa_cli。wpa_supplicant是核心程序,它和wpa_cli的关系就是服务和客户端的关系:后台运行wpa_supplicant,使用wpa_cli来搜索、设置、和连接网络。在wpa_cli交互模式下可以执行很...原创 2019-12-27 14:56:49 · 1650 阅读 · 0 评论 -
iperf交叉编译及使用
编译下载源码:https://iperf.fr/download/source/iperf-3.1.3-source.tar.gz拷到虚拟机,设置交叉编译环境变量,解压执行:tar -xf iperf-3.1.3-source.tar.gzcd iperf-3.1.3./configure --prefix=/home/nfsshare/hisi/iperf/iperf --host=a...原创 2019-12-27 14:35:09 · 3350 阅读 · 0 评论 -
curl和openssl交叉编译和curl命令使用
curl依赖openssl,所以需要先编译openssl:编译openssl:下载openssl:https://github.com/openssl/openssl/tree/OpenSSL_1_0_2r,下载解压。参照:https://blog.csdn.net/ty3219/article/details/77717478 的方法一去编译,分别执行:./Configure --pre...原创 2019-12-27 14:06:24 · 1751 阅读 · 0 评论 -
QPushButton禁用状态文字变形变粗
QPushButton按钮上边的字,在enabled和!enabled状态,字大小不一样。在设置字体颜色之后,!enabled的字的线条要厚一些,我设置font-weight没用,但是字体颜色是黑色就没问题。此问题在PC上不存在,在arm板子上出现。如下,右边的是!enabled,文字更粗一些:如何解决?设置背景颜色,设置border:none之后,显示正常了:另外,设置背景透明后也正常...原创 2019-12-27 11:58:51 · 1175 阅读 · 0 评论 -
3519AGPIO按键驱动及测试程序
3519A文档 外围设备驱动 操作指南.pdf 中介绍了linux下内核态GPIO操作的方法,修改完善后得到下边的代码:#include <linux/delay.h>#include <linux/gpio.h>#include <linux/interrupt.h>#include <linux/module.h>#include &l...原创 2019-12-27 11:54:35 · 414 阅读 · 1 评论 -
SourceInsight阅读linux内核代码配置
在windows下使用source insight写linux代码,使用#include <linux/interrupt.h>这样的头文件包含的方式始终无法跳转到头文件,出现Symbol not find.,如下:应该如何设置呢?在source insight的BASE工程中添加linux内核include目录无效,最终找到的办法是建立一个Common project包含进...原创 2019-12-27 11:48:55 · 1884 阅读 · 2 评论 -
海思demo板子启动
首先要先加两根线连起来才能烧写uboot、内核、文件系统。烧写时选择串口很慢,默认有uboot了,可选择通过网络烧写。烧写配置:烧写完启动时提示(ERROR: can’t get kernel image!):在uboot设置:setenv bootargs 'mem=256M console=ttyAMA0,115200 clk_ignore_unused root=/dev/m...原创 2019-12-26 18:36:09 · 935 阅读 · 0 评论 -
驱动ko编译
Makefileobj-m := button.oexport ARCH=armexport CROSS_COMPILE=arm-hisiv600-linux-###KERDIR := /home/work/Hisi/Hi3536C/Hi3536CV100_SDK_V2.0.4.0/package/osdrv/opensource/kernel/linux-3.18.yKERDIR :=...原创 2019-12-26 18:26:29 · 1564 阅读 · 0 评论 -
qt4.8.6交叉编译
正常情况下,设置toolchain的环境后,配置compile.sh的编译模块,make就行: . /home/svn_top/env_set_hisi.shcd /home/work/qt-everywhere-opensource-src-4.8.6/make confcleanvi compile.shcat compile.sh./compile.shmakemake in...原创 2019-12-26 18:19:33 · 1877 阅读 · 0 评论 -
qt4显示百度地图
在webview中加载html即可ui-&gt;webView-&gt;load(QUrl("qrc:/BaiduMap.html"));html:&lt;!DOCTYPE html&gt;&lt;html xmlns="http://www.w3.org/1999/xhtml"&gt; &lt;he原创 2018-06-17 00:44:29 · 772 阅读 · 2 评论 -
linux strace交叉编译和使用
可以用strace观察系统调用的情况,耗时等.将源码拷贝之后,设置交叉编译的环境,然后解压编译: tar xf strace-4.21.tar cd strace-4.21 ./configure --prefix=/home/nfsshare/strace --host=arm-none-linux CC=arm-linux-gcc LD=arm-linux-ld make make...原创 2019-10-19 16:46:44 · 1729 阅读 · 0 评论 -
linux生成uuid
#include <uuid/uuid.h> //生成UUID char buf[64] = {0}; uuid_t uu; uuid_generate(uu); uuid_generate_random(uu); uuid_unparse_upper(uu,buf);编译时需要加上 -luuid。QT里边就更简单了:#i...原创 2019-10-19 16:36:52 · 920 阅读 · 0 评论 -
shell管道和输入输出重定向
输出重定向:使用 > 重定向#重定向输出到文件,默认会覆盖文件内容ls -l > output.txt#使用 >> 重定向追加到文件末尾ls -l >> output.txt#使用 0>、1>、2> 指定重定向的标准输入、输出和错误流,类似的还有 0>>、1>>、2>>ls -l 1> ...原创 2019-10-19 16:31:32 · 534 阅读 · 0 评论 -
ubuntu16.04 vsftpd搭建ftp服务器
安装apt-get install vsftpd创建ftp目录、修改权限:mkdir /home/ftprootchmod 777 /home/ftproot/添加用户://添加useradd -d /home/ftproot/ -s /usr/sbin/nologin testuseradd -d /home/ftproot/ -s /usr/sbin/nolog...原创 2019-10-19 16:02:34 · 190 阅读 · 0 评论 -
shell确定SSD硬盘挂接位置
1.通过 hdparm 获取SSD制造商确定:首先 grep 截取 fdisk -l 的 /dev/sd 下的位置,然后用 hdparm -i /dev/sd ,查找联想ssd相关信息:for path in `fdisk -l | grep -E 'Disk /dev/sd*:*' | grep -Eo '/dev/sd[^:]'` do echo 'disk path:'$pa...原创 2018-11-15 18:14:28 · 492 阅读 · 0 评论 -
qt编译出现时间错误
出现错误信息:make: Warning: File `Makefile' has modification time 1.8e+06 s in the future通过这个错误提示信息我们可以知道,Makefile的修改时间点是Linux当前的一个未来时间点。可以通过修改Linux的当前时间来解决这个问题:sudo date -s 'hh:mm:ss yyyy-mm-dd' 比如我想...原创 2018-11-15 18:06:49 · 1486 阅读 · 0 评论 -
Qt linux获取cpu使用率、内存、网络收发速度、磁盘读写速度、磁盘剩余空间等
Qt linux获取cpu使用率、内存、网络收发速度、磁盘读写速度、磁盘剩余空间等,实际上大部分都和qt无关的,用其他语言也可以获取。 code: .h#ifndef RESOURCE_MINITOR_H#define RESOURCE_MINITOR_H#include #include #include #include class resource_minitor : p原创 2018-01-10 14:39:24 · 10758 阅读 · 2 评论 -
函数进入和离开自动打印信息
有时候跟踪一些bug的时候需要在进入和离开函数的时候打印一些信息: linux获取线程ID://获取线程ID:#include <sys/syscall.h>syscall(SYS_gettid);//获取到的线程号与top H的线程号一样#if defined(OS_LINUX)#include <unistd.h>#include <sys/...原创 2018-06-17 00:49:46 · 427 阅读 · 0 评论 -
Qt linux检测优盘
.h#ifndef UDISKQTHREAD_H#define UDISKQTHREAD_H#include <stdio.h>#include <stdlib.h>#include <string.h>#include <ctype.h>#include <sys/un.h>#include <sys/fcn...原创 2018-06-17 00:39:40 · 5853 阅读 · 8 评论 -
shell后台启动进程及输出重定向
/mnt/usr/bin/test > /tmp/test.log && 后台运行符,表示启动之后脱离当前进程> /tmp/test.log 表示把输出重定向到 /tmp/test.log 文件原创 2018-11-15 18:21:02 · 2716 阅读 · 0 评论 -
linux获取线程ID
//获取线程ID:#include <sys/syscall.h>syscall(SYS_gettid);//获取到的线程号与top H的线程号一样#if defined(OS_LINUX)#include <unistd.h>#include <sys/syscall.h>inline pid_t gettid() { return sys...原创 2018-11-15 18:30:24 · 1184 阅读 · 0 评论 -
linux USB触屏无响应驱动出现EPIPE错误
#linux触屏无响应驱动出现EPIPE错误使用的触屏设备是egalax通过USB接入的,使用的驱动是 kernel\linux-3.10.y\drivers\input\touchscreen\usbtouchscreen.c。出现问题时触屏没有反应,hexdump /dev/input/event0也没有输出,但是重启QT程序后正常。问题很难复现,复现后也获取不到多少有用信息,后来直接将触屏...原创 2018-11-16 09:08:57 · 1274 阅读 · 0 评论 -
一些linux命令
查找文件find -name qtopia4强制结束进程kill -kill pid改swap大小dd if=/dev/zero of=/opt/moreswap2 bs=1024 count=512kmkswap /opt/moreswap2swapon /opt/moreswap2设置默认网关route add default gw 192.168.0....原创 2018-11-17 18:57:46 · 142 阅读 · 0 评论 -
libpng arm-hisi编译
1.下载:https://github.com/glennrp/libpng/tree/v1.6.352.configure:./configure CC=arm-hisiv400-linux-gcc --prefix=$PWD/_install --host=arm-linux3.make4.make install结果:注:有的版本configure之后make失败,原因未知。...原创 2018-11-17 18:59:14 · 359 阅读 · 0 评论 -
利用libpng保存YUV NV21格式的图片及优化
将YUV格式转换为RGB格式后,利用libpng保存RGB为png即可,关于YUV格式的详细情况和与RGB的转换关系在网上找找就可以了。目前的做法耗时比较多。704*576 480msbool CompressNV21ToPng(int width, int height, uint8_t * yuv_data){ FILE *fp; png_structp png_ptr...原创 2018-11-17 19:03:25 · 1377 阅读 · 0 评论 -
qt显示高德地图
与显示百度地图类似,只需要将对应的地图html文件显示高德地图就可以了:在webview中加载html:ui->webView->load(QUrl("qrc:/images/Gaode.html"));html:<!doctype html><html><head> <meta charset="utf-8"&g原创 2018-11-17 19:10:53 · 3682 阅读 · 2 评论 -
linux遍历文件夹中文乱码
QT获取到linux挂载的U盘中文文件名乱码,排查后发现在终端ls出来的文件名也不正常,中文全是问号?,后来的解决方法是在mount的时候加上编码:mount -o iocharset=utf8 -t vfat /dev/sdk1 /mnt/sdk1...原创 2018-06-17 00:38:12 · 1525 阅读 · 0 评论