- 博客(274)
- 资源 (11)
- 收藏
- 关注
原创 OpenHarmony增加代码到现成子系统的部件中
图中内容表示已使用"application" 子系统,以及它的"camera_sample_app"、"camera_screensaver_app"部件。也就说可以将代码添加到"application"子系统的任意一个部件中,这里选择"camera_sample_app"部件。在/opt/Ohos4/OpenHarmony/applications/sample/camera目录下创建mytest文件夹,并在mytest目录下创将myhello.c源文件。
2025-03-25 11:19:40
552
原创 OpenHarmony4.1-轻量与小型系统ubuntu开发环境
因OpenHarmony官网提供包含轻量、小型与标准系统的全量代码非常宠大,解包后大概需要70G以上硬盘空间,如要编译标准系统则需要140G以上空间。根据OpenHarmony设备开发文件中的。指导,下载轻量、小型系统的镜像包。找到链接,并点击“站点”下载。
2025-03-02 10:13:04
472
原创 LiteOS系统的软件定时器
在LiteOS系统中的软件定时器是由一个硬件定时器,每隔10ms检查是否超时,如已超时则执行该软件定时器的处理函数,并重新计时。
2024-07-11 19:28:00
473
原创 LiteOS增加执行自定义源码
鸿蒙系统源码是通过目录下的BUILD.gn描述当前源码如何编译,则有哪些源文件,及使用的头文件路径。复制iothardware目录下的BUILD.gn到myhello目录下。基中:myhello_demo为编译的目标名, sources指定当前目标由哪些源文件组成, include_dirs指定源码中使用的头文件所在路径。重新ReBuild工程后,upload烧录并打开monitor后即可接收开发板里输出的信息。新建myhello目录后,再此目录下再新建源文件myhello_demo.c。
2024-07-10 20:40:50
537
原创 IntelliJ IDEA安卓开发环境搭建
IntelliJ IDEA是一个比较流行集成开发环境,它有商业版本和开源的社区版本,Android Studio就是基于社区版本的IntelliJ IDEA开发而成。首先得配置好java开发环境。其中开发环境要求是jdk8以上版本。最新版本的jdk可在官网下载: https://www.oracle.com/java/technologies/javase-downloads.html在Windows系统上安装JDK较为简单,下载jdk安装程序后双击安装即可,此安装程序集成了配置系统环境变量的功能,我们
2021-06-07 11:08:40
5563
1
原创 华为云服务器上搭建FTP站点
华为云服务器上搭建FTP站点为了便于上传文件到云服务器系统,可在云服务器系统上搭建FTP服务站,然后通过ftp方式上传文件。以root帐号登录云服器系统后,操作步骤命令如下:安装vsftpd。vsftpd全称是“very secure FTP daemon”,是一款在Linux发行版中使用较多的FTP服务器软件。 yum install vsftpd设置云服务器系统启动后自动开启FTP服务。 systemctl enable vsftpd.service手动启动FTP服务。
2021-05-27 20:59:30
2610
2
原创 opencv4应用开发基础
opencv3.0版本以上都是用C++实现的. 常用的一些函数及类型集中在cv命名空间里.cv::Mat类型用于表示一个图像.构造函数除了空的构造函数外,还有很多个: Mat(int rows, int cols, int type); //创建指定行,列数的图像对象 Mat(Size size, int type); type参数用于指定每个像素点的大小,如CV_8UC1.bool empty() const;//此函数成员用于判断Mat图像数据是否为空. Mat imread( c
2020-08-20 17:16:00
933
原创 QT5.12在linux下编译使用mysql数据库驱动
QT5.12 sdk里默认是不支持mysql数据库的,需要加上mysql数据库的支持后重编源码才可以解决.源码可在Qt官网选择相应的版本下载:Qt下载官网http://download.qt.io/archive/qt/也可以通过安装程序得到源码,在以下安装界面时选上Sources即可:安装完成后,Qt完整源码默认在"/opt/Qt5.12.9/5.12.9/Src"Qt里mysql驱动源码在"/opt/Qt5.12.9/5.12.9/Src/qtbase/src/plugins/sqldrive
2020-08-18 15:57:31
2259
1
原创 C语言简单直观打印二叉树
最直观的打印二叉树,只能用队列记录二叉树的层次遍历,并记录每个节点的层数及这层里的列数,最后再调整位置打印输出。这样的方法实现起来非常麻烦,所以大多打印二叉树的方法都是采用逆90度输出的方法.如有二叉树如下:逆90度的输出:实现的方法:每个节点都是独立的一行,记录当前是第几层次,根据层数控制输出位置。从最右节点开始输出,再输出根节点,最后输出左节点.void printTree(node_t *n){ static int level = -1; //记录是第几层次 int i; if
2020-08-07 17:30:53
14169
原创 29 使用内核里的W25Q32设备驱动
W25Q32是一个spi接口的存放芯片, 容量32M比特(4M字节).驱动文件在"drivers/mtd/devices/m25p80.c"static struct spi_driver m25p80_driver = { .driver = { .name = "m25p80", .of_match_table = m25p_of_table...
2020-01-09 15:40:48
2249
原创 opencv linux上编译安装
opencv库可在https://opencv.org/releases/链接里下载也可在我的网盘里下载:链接: https://pan.baidu.com/s/1tQo9yJ_UttJENf0dY8xdJw 提取码: 3fh9 如需opencv支持ffmpeg库,则需要先编译好ffmpeg. 编译方法可参考:https://blog.youkuaiyun.com/jklinux/article/d...
2019-07-02 16:12:48
3248
原创 ffmpeg rgb与yuv的转换
ffmpeg里的libswscale库用于图像数据格式的转换.AVFrame 类型对象用于描述非压缩的音视频数据信息, 此对象本身不提供存储音视频数据的缓冲区,只用于记录数据格式,图像分辨率,数据缓冲区地址等信息.typedef struct AVFrame { #define AV_NUM_DATA_POINTERS 8 uint8_t *data[AV_NUM_DATA_P...
2019-07-02 10:54:02
9666
1
原创 linux ipv6 tcp和udp网络编程
ipv6: ip地址128位, 格式如: xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx共分8个域, 如有多个域都是0000, 可以省略表示为::ifconfig里查看网络设备的ipv6 地址:enp0s25: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500inet 192.16...
2019-03-11 14:39:34
2134
原创 Android init language与init.rc初始化脚本
参考: android源码目录里的system/core/init/readme.txt.Android系统里以*.rc为扩展名为系统初始化脚本,脚本里就是使用安卓初始化语言.语句都是一行为一条语句,没有符号分隔. 语句里的每个词用空格隔开. 如: service ueventd /sbin/ueventd备注语句以符号”#”作为注释.语言基本上分为4个块: Actions...
2018-09-10 22:37:30
917
原创 全志A64 设备树里的gpio应用开发
通过A64手册可以看出共有两个普通gpio控制器: gpio控制器是由厂商负责驱动好的,在设备树里关于gpio控制器的描述: pio: pinctrl@01c20800 { compatible = "allwinner,sun50i-pinctrl"; reg = &lt;0x0 0x01c20800 0x0 0x400&gt;; interrupts ...
2018-09-04 22:55:29
6603
2
原创 全志A64 设备树开发应用
通过跟踪全志Android系统编译及镜像生成过程和阅读手册”A64 dev tree&amp;sysconfig使用文档.pdf”, 发现全志A64方案不单继续使用传统的script.fex配置脚本, 而且也加入了设备树的应用.上图的sys_config.fex就是全志传统的script.fex。 设备树的dtb文件是由dts文件和sys_config.fex文件组合生成. 而且sys_...
2018-09-04 13:24:24
5374
原创 全志Android系统编译及镜像生成过程分析
1 source ./build/envsetup.sh 这步主要就是提供一些shell的function命令工具,具体可通过hmm命令查看envsetup.sh提供的所有命令:Invoke ". build/envsetup.sh" from your shell to add the following functions to your environment:- lunch: ...
2018-08-31 16:02:06
4660
原创 全志A64 修改uboot环境变量及内核调试级别
通过uboot输出的启动信息:--------fastboot partitions---------total partitions:15--name- -start- -size- bootloader : 1000000 2000000 env : 3000000 1000000 ...
2018-08-29 11:02:46
4368
原创 全志A64 lichee编译脚本build.sh分析
lichee目录下的./build.sh脚本: set -e #用于指此脚本里执行的命令返回值非0时,终止当前脚本的执行. buildroot/scripts/mkcommon.sh $@ #接着执行mkcommon.sh脚本,并把执行"./build.sh"附带的所有参数($@)传递过去,这里$@是空的.buildroot/scripts/mkcom...
2018-08-22 15:58:38
5897
2
原创 全志A64 Android6.0编译
相关资料下载链接: https://pan.baidu.com/s/1N2LaxQet_yeKmgn__LD-bA 密码: 6kh7 下载里面的”Android6.0/SDK源码”目录的所有源码压缩包.Android6.0的源码是由三个压缩包: cqa64_android_v6.0_20180714.tar.gz.aa, cqa64_android_v6.0_20180714.tar.g...
2018-08-21 17:02:55
6467
4
原创 Linux下百度云盘下载实现
现网上已有大神用java根据百度云盘协议写好百度云客户端(proxyee-down),可避免限速下载问题。 参考: https://github.com/proxyee-down-org/proxyee-down/blob/v2.5/.guide/linux/read.md下载JRE. 因proxyee-down是java程序,需要下载java程序执行环境,而且必须是Oracle...
2018-08-15 16:15:08
9431
3
原创 H3 Linux4.11内核设备树设备驱动开发2
参考: linux内核device-tree基础在设备树里描述platform_device在设备树里描述一个mydt的设备,此设备有多种属性及两个子节点,每个子节点也有多种属性.修改设备树的文本文件: arch/arm/boot/dts/sun8i-h3-orangepi-lite.dts 51 / { 52 model = &quot;Xunlong Orange Pi ...
2018-07-19 15:56:53
1828
原创 H3 Linux4.11内核设备树设备驱动开发1
AllWinnerH3 linux4.11版本的bsp下载: https://pan.baidu.com/s/1mhU4a8K 密码: b375 H3-linux4.11_bsp目录就是所需的源码及编译工具.下载后, 先安装tools目录里的dtc工具. 解包dtc-master.zip, 执行”make &amp;amp;&amp;amp; make install”即可.1 配置gcc-li...
2018-07-09 00:55:18
2679
2
原创 笔试题 10
1 写出以下sizeof(targetX)在64位Linux系统,gcc编译后的执行结果: (注: X=1,2,3,4,5,6)void func(double target1[1024]){ const char *target2 = "hello world\n"; char *target3 = new char[1024]; int target4[1024]...
2018-07-04 15:21:51
737
原创 Linux应用程序直接调用I2C控制器实现的设备驱动
参考内核源码里的dev-interface文档.在linux内核里i2c控制器驱动好后, i2c设备驱动方式通常由设备驱动通过控制器读写i2c设备数据、再提供应用程序调用和访问的接口. 除此设备驱动方工外,驱动好的i2c控制器也可提供应用程序直接调用控制器收发i2c设备数据的接口(dev-interface).这接口适用于一些没涉及到中断的简单设备,如dht12, eeprom等设备...
2018-07-02 19:20:54
4434
2
原创 gpio-sunxi驱动应用gpio口终端操作
内核里gpiolib可以操作gpio口,但基本只能作输入或输出功能。而全志的gpio控制器除这两种功能外,还提供了其它功能,如配置gpio的上下拉,输出电流等级大小等。所以全志提供了类似gpiolib但可以有更多功能的驱动(但现版本的驱动也只实现输入和输出功能).首先确认内核里是否已选择上gpio-sunxi功能(默认是已选择上的)make menuconfig ARCH=arm CR...
2018-06-29 13:32:46
8687
原创 内核里的gpiolib在终端上命令操作gpio口
内核里的gpiolib除了提供如gpio_request, gpio_direction_input/output, gpio_set_value等操作函数外,还提供了在终端上用直接操作gpio口的功能.首先确认内核里是否已选择上gpiolib的sysfs接口功能(默认是已选择上的)make menuconfig ARCH=arm CROSS_COMPILE=arm-linux-gnuea...
2018-06-29 11:37:29
1730
基于QCamera, QTcpServer实现网络视频监控
2017-07-13
qt mp3录音程序
2017-05-31
ffmpeg桌面图像h264编码并封装avi
2017-05-19
ffmpeg摄像头数据h264编码并封装avi
2017-05-18
原创 qt数据库操作简例
2017-05-15
qt贪吃蛇源码
2017-05-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人