07 2023 档案
摘要:一、linux 下的usb驱动框架 在linux系统中,usb驱动可以从两个角度去观察,一个是主机侧,一个是设备侧。linux usb 驱动的总体框架如下图所示: 从主机侧看usb驱动可分为四层:usb主机控制器硬件底层、usb主机控制器驱动、usb核心和usb设备驱动。 在主机侧要实现的驱动主要分
阅读全文
摘要:USB驱动USB接口很复杂,不同的设备器协议也不同,因此本文仅介绍如何使能Linux内核自带的USB驱动,不涉及USB驱动开发 一、USB接口简介1.1 USB介绍USB(Universal Serial Bus),即通用串行总线。由英特尔与众多电脑公司提出来的,用于规范电脑与外部设备的连接与通讯。
阅读全文
摘要:1.LIVE555 直播 直播方案采取的是 直播流 -> FIFO -> 输出 的技术路线。 2.搭建: a. 在LIVE555 编译之后,在BIN文件下,有很多可执行程序生成,这些程序有些是LIVE555服务器(live555MediaServer),有些是客户端(testRTSPClient),
阅读全文
摘要:1,linux 环境: 官网上下载,下载地址:http://www.live555.com/liveMedia/public/ live555 版本:“2018.12.14” 参考:http://www.live555.com/liveMedia/faq.html 这个FAQ要仔细阅读。 2,编译
阅读全文
摘要:这一章节开始我们讲解各种外设的控制,包括gpio,i2c,dma等等,既然是外设,那就涉及到具体的目标板,博主在这里使用的开发板是开源平台beagle bone green,内核版本为4.14. 今天我们来讲解gpio的设备驱动程序。 gpio相关的库函数为了linux的可移植性和统一,linux提
阅读全文
摘要:1. Linux中I2C需要编写的驱动🌴 I2C的驱动程序分为两个部分: I2C主机驱动:I2C适配器的驱动程序 I2C设备驱动:I2C设备的驱动程序 I2C总线驱动:用户不用做这一部分 I2C协议和SMBus协议: I2C (pronounce: I squared C) is a protoc
阅读全文
摘要:一、I2C简介 I2C是很常用的总线协议。它使用两条线在主控制器与从机直接进行数据通信。一条是时钟线,一条是数据线,两条数据线都要接4.7K的上拉电阻,空闲的时候处于高电平。I2C总线的标准模式下传输速度可以达到100k/s,快速模式达到400k/s。 常见的I2C驱动从设备有电容触摸屏,C
阅读全文
摘要:伪代码实例:洗衣机 功能需求 由功能转变状态图 梳理状态之间的转换的关系 梳理状态之间的转换的关系(添加切换条件) 代码编程 #include "stdio.h" #include "string.h" #include "stdlib.h" #define SELF_CHECK_STATUS (1
阅读全文
摘要:1.linux IIC驱动 由于裸机的驱动迎合驱动的分离和分层的思想,分为IIC主机驱动(接口驱动)和IIC设备驱动. 这种思想的好处,请看我写的另外一篇文章Linux驱动的分离和分层。 其中上面说的裸机驱动请看这篇文章裸机驱动 但是裸机的驱动是没有加入操作系统的 本文也是遵循Linux驱动的分离和
阅读全文
摘要:一、前言 I2C协议是在开发中使用非常频繁的一种协议,相信大家在学习单片机的时候经常会用到支持I2C协议的模块,I2C 总线仅仅使用 SCL、SDA 这两根信号线就实现了设备之间的数据交互,极大地简化了对硬件资源和 PCB 板布线空间的占用。因此,I2C 总线被非常广泛地应用在 EEPROM、实时钟
阅读全文
摘要:1、几个常见疑惑? usb协议不清楚的可以看一下 为什么一插上就会有提示信息? 是因为windows自带了USB总线驱动程序; 那USB总线驱动程序是干嘛用的? 识别USB设备; 给USB设备找到并安装对应的驱动程序; 提供USB的读写函数。 首先,新接入的USB设备的默认地址(编号)为0,再未分配
阅读全文
摘要:1.首先在vlc官网下载VLC,根据这个博客测试本地视频利用VLC能否推流rtsp成功 2.在ffmpeg官网下载ffmpeg 3.将ffmpeg解压后目录添加至环境变量 4.安装rtsp服务器,在这个网站下载相应系统的rtsp服务器,解压后双击打开,命令行测试,VLC能否拉流成功,参考这个博客 5
阅读全文
摘要:RTSP 连接过程如下图 看下实际过程中FFmpeg 的日志情况: [tcp @ 0000014CC3256D40] No default whitelist set[tcp @ 0000014CC3256D40] Original list of addresses:[tcp @ 0000014C
阅读全文
摘要:https://rapidscada.org/download-all-files/ Rapid SCADA is free, open source, full featured SCADA software. Using Rapid SCADA you are able to create au
阅读全文
摘要:1、YOLOV8简介 YOLOV8是YOLO系列另一个SOTA模型,该模型是相对于YOLOV5进行更新的。其主要结构如下图所示: 从图中可以看出,网络还是分为三个部分: 主干网络(backbone),特征增强网络(neck),检测头(head) 三个部分。 主干网络: 依然使用CSP的思想,改进之处
阅读全文
摘要:通过ffmpeg工具将多个视频流进行处理,实现画中画效果(效果如下图),并推流到服务器。 Ffmpeg -rtsp_transport tcp -i “[视频源1]” -rtsp_transport tcp -i “[视频源2]” -filter_complex “[1]scale=iw/2:ih/
阅读全文
摘要:UDP是无连接的,即发送数据之前不需要建立连接,它尽最大努力交付,即不保证可靠交付,在一些要求实时性的通信中多有用到如游戏,视频等,UDP是面向报文的,有别于tcp的一对一通信,udp支持一对一、一对多、多对一和多对多的交互通信等。 一、udp通信用到的相关函数解析 int socket(int d
阅读全文
摘要:ffmpeg -i bunny.mp4 -vf "movie=test.mov[logo];[0:v][logo]overlay=x=100:y=100" -y out.mp4 以上命令test.mov,只显示1遍,后边重复显示最后一帧。 如果想让test.mov一直循环呢? 添加:loop=0,s
阅读全文
摘要:1. overlay 技术简介 overlay 技术又称视频叠加技术。overlay 视频技术使用非常广泛,常见的例子有,电视屏幕右上角显示的电视台台标,以及画中画功能。画中画是指在一个大的视频播放窗口中还存在一个小播放窗口,两个窗口不同的视频内容同时播放。 overlay 技术中涉及两个窗口,通常
阅读全文
摘要:httplib库的使用,支持http/https httplib库简介 1. 文件目录 2. client端 2.1 快速搭建一个client端 2.2 HTTPS 2.3 下载文件 2.4 GET大数据 2.5 POST大数据 2.6 上传文件 3. server端的简单使用 4.其他资料 htt
阅读全文
摘要:由于ffmpeg推出的rtsp或者rtmp端口需要Listen,所以需要开启端口TCP/UDP,之后采用ffmpeg向端口推送数据 第一,安装rtsp-simple-server release下载地址https://github.com/aler9/rtsp-simple-server/relea
阅读全文
摘要:说明: cpp-httplib 是个开源的库,是一个c++封装的http库,使用这个库可以在linux、windows平台下完成http客户端、http服务端的搭建,这是一个多线程“阻塞”HTTP 库。 使用起来非常方便,只需要包含头文件httplib.h即可。 源码库地址:https://gith
阅读全文
摘要:实时录屏并把视频推流到RTSP服务器,具体流程是抓取屏幕内容(bitmap),并把bitmap转化为YUV,接着把YUV编码成H264,再把H264码流推到RTSP服务器;把采集到的PCM编码为AAC,再把AAC推流至RTSP服务器。 RTSP服务器使用的是HappyTime的免费试用版本。 1.
阅读全文
摘要:1. 画中画效果overlay滤镜(覆盖、叠加) overlay的使用语法: ffmpeg -i input1 -i input2 -filter_complex overlay=x:y output 这里不使用-vf简单滤镜,而是使用-filter_complex复合滤镜,因为是有多个输入源。 但
阅读全文
摘要:本篇博客相比上一篇《 ffmpeg滤镜学习一,movie+overlay滤镜实现视频加水印、画中画》更深入一些,本次的实现,可以控制子画面出现的时间段、子画面播放时间等,这篇文章主要参考了大师兄悟空公众号下的文章《使用 FFmpeg 实现画中画效果(一)》,下面看一下具体实现: 首先提出5个问题:
阅读全文
摘要:自动对焦算法是相机系统中的重要组成部分,其作用是在拍摄图像时自动调整相机镜头使图像达到最清晰的效果。 常见的自动对焦算法有: 唯一对焦算法:通过对图像模糊程度的分析来确定对焦位置。 基于距离的对焦算法:通过测量相机与物体之间的距离来确定对焦位置。 基于梯度的对焦算法:通过分析图像的梯度信息来确定对焦
阅读全文
摘要:ZLMediaKit是一套高性能的流媒体服务框架,目前支持rtmp、rtsp、hls、http-flv等流媒体协议,支持linux、macos、windows三大PC平台和ios、android两大移动端平台。 host主机:ubuntu18.04 移植平台:rk3568 交叉编译链版本:gcc v
阅读全文
摘要:1.go项目在window下编译简易打包1).在windows下直接编译生成main.exe文件在项目main.go同级目录下执行以下命令go build main.go 2).将当前目录下的main.go打包成gotest.exe文件(在windows下可以直接执行)在项目main.go同级目录下
阅读全文
摘要:cmakelists.txt写法如下 编译指令:cmake -DCMAKE_CXX_COMPILER:FILEPATH=/home/wangwc/CompilerCollection/RuiXinWei/prebuilts/gcc/linux-x86/arm/gcc-arm-8.3-2019.03-
阅读全文
摘要:一、编写一个库编写一个计算整数和浮点数之和的库函数mymath,文件目录 mymath.h #ifndef MYMATH_H#define MYMATH_H int add(int, int);double add(double, double); #endifmymath.cc #include
阅读全文
摘要:要开启ARM板子的USB转串口驱动(pl2303)只需要在编译内核的使能三个驱动模块功能即可: ① pl2303 ② ch341 ③cp210 重新编译完内核后,只需要插入相应的设备就会出现提示: 我的串口设备对应的是ttyUSB0 如果嫌重新编译内核比较麻烦,也可以去内核源码目录将模块文件拷贝出来
阅读全文
摘要:1.引言串口是我们实际工作中经常使用的一个接口,比如我们在Linux下使用的debug串口,它用来登录Linux系统,输出log。另外我们也会使用串口和外部的一些模块通信,比如GPS模块、RS485等。这里对Linux下串口使用做个总结,希望对大家有所帮助。 2.环境介绍2.1.硬件1) NUC97
阅读全文
摘要:名词定义 CIF,指RK芯片中的VIP模块,用以接收Sensor数据并保存到Memory中,仅转存数据,无ISP功能 DVP,一种并行数据传输接口,即Digital Video Port HSYNC,指DVP接口的行同步信号 PCLK,指Sensor输出Pixel Clock VSYNC,指DVP接
阅读全文
摘要:我们使用的rv1126平台,屏ic ST7789,硬件使用6bit,由于不是8bit的,所以显示的颜色没有那么丰富 1.硬件原理图 2.dts配置 &rgb { status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&lcdc_ctl>;
阅读全文
摘要:RK 系列的 SoC 中内置了以太网 MAC 控制器,所以只需要搭配一颗以太网 PHY芯片, 即可实现以太网卡功能。 按照规范, 即使是不同厂家的 PHY,同样有一部分寄存器的定义是通用的, 只要配置了这些通用的寄存器, 基本上 PHY 就可以正常工作。在 Linux 驱动中有通用的 PHY 驱动,
阅读全文
摘要:RV1126新增驱动IMX415 SENSOR,实现v4l2抓图。 1:内核dts修改 &csi_dphy0 { status = "okay"; ports { #address-cells = <1>; #size-cells = <0>; port@0 { reg = <0>; #addres
阅读全文
摘要:硬件:易百纳38x38mm RV1126板 SDK:2.2 一、驱动注册失败 上电信息中出现如下: [ 0.403505] i2c /dev entries driver [ 0.406719] goodix_ts_probe() start [ 0.406762] Goodix-TS 3-005d
阅读全文
摘要:1.adc设备树配置 一般来说,rk中已经封装好了标准adc的dts参数属性,我们要做的就是添加自己的adc通道,并引用标准接口即可,不同平台,标准dts中的adc节点名有所不同,其配置属性基本一样。 例如: 1)adc: adc@ff100000 { compatible = "rockchip,
阅读全文
摘要:背景 RK系列的SDK给的默认的调试串口都是uart2/1500000波特率,本次调试设备已经把console调试口改为了uart0,所以需要修改下uboot和内核,然后把波特率设为常用的115200。 注:本次调试的SDK版本为原厂的V2.2版本 1.uboot修改 1)修改rv1126-evb.
阅读全文
摘要:本人使用的调试平台是荣品的rv1126开发板,最近在调试按键中断。经过查看原理图,发现竟然没有一个空闲的IO,所以使用UART1的RX作为按键中断引脚。 驱动部分: 因为UART1原先已经在设备树中已经有了定义,需要将 kernel/arch/arm/boot/dts/rongpin/rv1126_
阅读全文
摘要:一 通用理论 硬件链接: 一般情况下,Camera和SOC有两个接口进行连接,分为为MIPI接口和I2C接口,其中MIPI接口用来传输图像的数据,数据传输路径为从Sensor传输到SOC。另一个接口为I2C接口,主要是用来SOC对Sensor初始化配置寄存器和摄像头参数的配置,比如要进行图像数据捕获
阅读全文
摘要:缩写 全称 含义 PGN parameter group number 参数组编号 SPN suspect parameter number 可以参数编号 PDU protocol data unit 协议数据单元 ECU electronic control unit 电子控制单元 DTC dia
阅读全文