![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
linux 应用和网络开发
应用笔记
rjszcb
不断学习变成牛
展开
-
linux 开发板以太网通过Ubuntu上外网方法
如果不正确,检查是否将/run/system/resolve/resolv.conf链接到/etc/下,有些可能会导致无法覆盖修改的dns,不起效,可以手动建立链接文件。在开发板嵌入式设备,有一个mgbe网卡,用网线与连接soc的网卡,和外接网卡,将网卡usb接口插入电脑,选择接入到Ubuntu系统。soc设备端,有多个网卡,我是通过mgbe2_0与外部通讯的,设置一下默认网关,数据默认从这个网卡传输,设置dns。如下,Ubuntu识别到一个ens33网卡,设置soc的和Ubuntu的ip在同一个网段,原创 2023-11-21 19:59:52 · 837 阅读 · 0 评论 -
linux 应用层调用shell指令api.之popen 和system
popen 和system测试。原创 2023-11-21 16:43:25 · 236 阅读 · 0 评论 -
linux驱动.之 网络udp应用层测试工具demon(一)
绑定vlan,网卡的demon,如果有多个网卡,多个vlan,网卡的ip设置成一致,那就不能只简单绑定ip来创建socket,将两个程序编译成二进制执行程序,放到开发板运行,就行测试。服务端udp_service.c。客户端udp_client.c。原创 2023-11-21 16:05:22 · 727 阅读 · 0 评论 -
linux驱动.之 tty uart应用层测试工具demon(一)
在开发板终端 输入指令, ./tty_uart_test -D /dev/ttyTHS1 -w 0x55 ,输出方波,即可测试uart是否发送数据,用示波器看是否有收到方波。tty_uart_test.c 测试程序。编译成二进制可执行文件后。原创 2023-11-21 15:54:33 · 174 阅读 · 0 评论 -
linux驱动开发.之spi测试工具spidev_test源码(一)
spidev_test.c开源代码。原创 2023-11-21 15:38:30 · 1750 阅读 · 0 评论 -
linux 网络 cat /proc/net/dev 查看测试网络丢包情况
可以通过 cat /proc/net/dev 查看测试网络丢包情况,drop关键字,查看所有网卡的丢包情况。还可以看其他数据, /proc/net/下面有如下文件。原创 2023-11-15 17:27:38 · 607 阅读 · 0 评论 -
linux以太网(三).之netstat命令
netstat命令是一个监控TCP/IP网络的非常有用的工具,它可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。原创 2023-09-27 19:58:43 · 146 阅读 · 0 评论 -
linux iperf3指令测试网络带宽,丢包
linux iperf3指令测试网络带宽,丢包,有空记录一下。原创 2023-08-07 17:21:37 · 534 阅读 · 0 评论 -
shell命令操作gpio
或/sys/class/gpio/gpio44# echo in > direction。或/sys/class/gpio/gpio44# echo 0 > value。原创 2023-04-20 16:08:42 · 475 阅读 · 0 评论 -
linux以太网(二).之ethtool命令
以太网 ethtool命令详解。原创 2023-03-29 11:42:58 · 2779 阅读 · 0 评论 -
iptables基础知识详解
iptables基础知识详解。原创 2023-01-16 18:43:36 · 91 阅读 · 0 评论 -
为了保证系统安全采用多进程而不是多线程
如,汽车行业,如下是看到的一段模块设计,最后一个进程,可以来监控系统的相关进程工作状态,用看门狗来保证监督,决定系统是否重启。在一些行业,系统由多个模块组成,为了确保某个模块死机后,不会导致整个系统的崩溃,就需要采用多进程进行设计。原创 2022-11-30 14:53:51 · 370 阅读 · 0 评论 -
TCP协议.之发送数据,粘包,拆包问题(二)
Tcp协议发送数据,粘包,拆包问题,这句话本身是错误的,tcp是协议,发送接收数据时并不会粘包,tcp,ip,只负责传输数据粘包是应用层解析数据时,包1和包2粘连在一起,解析数据时,出现错误的,网络中,很多博主,就没搞清楚。send,发送频率太快,导致发送包的时候,出现粘包,其实tcp传输数据时,没有包的概念,和uart串口一样,只有流的概念,tcp协议讲的很清晰,tcp是面向流的,一个一个字节流,tcp传输时,只按流的方式发送,没有一包一包的概念,假如发送数据很大,tcp协议,自动分成多包一个一个原创 2022-04-24 11:20:07 · 2847 阅读 · 0 评论 -
文本,字符串,十进制,十六进制格式读写或发送的区别
所谓的 文本读写,十六进制,ascall码读写,发送有区别吗??明天写原创 2022-04-20 19:41:24 · 949 阅读 · 0 评论 -
linux 常见锁的用法
linux 常见锁的用法内核锁,应用层锁互斥锁,自旋锁原创 2022-01-10 11:07:14 · 536 阅读 · 0 评论 -
linux c语言多进程api(一)
linux c语言多进程api(一)原创 2022-01-07 19:51:31 · 785 阅读 · 0 评论 -
linux c语言多线程api(一)
linux c语言多线程api(一)原创 2022-01-07 19:50:58 · 660 阅读 · 0 评论 -
linux 文件IO编程(二)
linux 文件IO编程(二)原创 2022-01-07 19:49:28 · 47 阅读 · 0 评论 -
Linux epoll多路复用介绍(一)
Linux 网络编程 全解(六)--------多路IO转接服务器原创 2022-01-06 19:59:59 · 217 阅读 · 0 评论 -
Linux epoll 在socket使用(二)
Linux 网络编程 全解(六)--------多路IO转接服务器原创 2022-01-06 19:59:02 · 475 阅读 · 0 评论 -
linux 文件IO编程(一)
linux select多路复用(三)原创 2022-01-06 19:54:18 · 359 阅读 · 0 评论 -
linux select 多路复用介绍(一)
linux select 在socket里使用(二)转载 2022-01-06 19:53:29 · 235 阅读 · 0 评论 -
HiPQTools工具HiPQStitchingTool标定(二)
一、挑件海思文档重要描述1、拼接原理:使用HiPQTools工具HiPQStitchingTool进行图像拼接,就要先进行标定,确定相机之间的位置关系,和畸变校正,前面写的文章中,介绍了,使用opencv的surf特征匹配和最佳缝合线算法,进行处理,然后离线计算获得参数,查表法进行图像拼接存在局限性,只能适合静态的放置相机,和纹理丰富的场景,安防监控,不适合运动的场景,比如车载运动的全景场景。全景拼接的基本方法是将各路采集的图像按照对应的镜头模型投影到虚拟球面,进行拼接融合,然后再通过设置的投影方原创 2022-01-04 13:20:35 · 3440 阅读 · 12 评论 -
深入理解 Linux socket(一)
https://mp.weixin.qq.com/s/yXO5hn2PiPmRWTXygnf8zQ作者写的太好了,深入理解 Linux socketLinux爱好者 10月7日以下文章来源于奇伢云存储 ,作者奇伢图片图片socket fd 长什么样子?图片什么是 socket fd ?粗糙的来讲,就是网络 fd,比如我们最常见的 C/S 客户端服务端的编程模式,就是网络通信的一种方式。撇开底层和协议细节,网络通信和文件读写从接口上有本质区别吗?其实没啥区别,不就是读过来和写过去嘛,简称转载 2021-11-26 12:48:47 · 226 阅读 · 0 评论 -
linux 网络协议.之TCP Socket 通信(三)
linux socket tcp 通信原创 2021-11-26 12:37:55 · 2041 阅读 · 0 评论 -
linux select 在socket里使用(二)
linux select使用,在多线程,select具有非常大作用后面再想写写,朱老师讲的,鼠标,按键,例子很好,后面补上去项目开发经验,后面写。转载 2021-11-18 17:29:53 · 521 阅读 · 0 评论 -
linux 应用层,执行shell脚本命令
linux 应用层,执行shell脚本命令1、system如:system("./root/ko/reloadko.sh");在我的根文件系统下,存在一个脚本文件,reloadko.sh,重新卸载,加载音频驱动。这个脚本在root/ko目录下,当然,这些ko驱动也要放在ko目录下,否则,运行不了,找不到。或下面的命令:hisi的支持的对gpio操作的shell命令system("himm 0x12345678 0");system函数:函数原型:#include <stdlib原创 2021-11-18 17:24:09 · 575 阅读 · 0 评论 -
linux c 多线程项目框架开发(一)
linux c 多线程项目框架开发(一)原创 2021-11-11 17:15:03 · 1385 阅读 · 0 评论 -
C语言开机后或第一次满足条件不再执行高级写法
g_char = SX_FALSE;int main(int argc, char *argv[]){ HI_S32 s32Ret = 0; int fd0 = -1; char *filename0 = NULL; char buf[10]={0}; int audioret = -1; filename0 = "/dev/tlv320aic31"; SX_U32 ts0 = get_sys_ms(); SX_U32 oldMs = ts0; SX_U32原创 2021-11-10 17:15:15 · 592 阅读 · 0 评论 -
自导公式坐标系变换算法实现鱼眼校正
预备中原创 2021-10-28 15:18:29 · 90 阅读 · 0 评论 -
opcv 标定鱼眼校正
预备中原创 2021-10-28 15:16:53 · 108 阅读 · 0 评论 -
队列,以及多线程通信用处
预备中原创 2021-10-28 15:15:38 · 83 阅读 · 0 评论 -
结构体高级用法,线程通信传参
预备中原创 2021-10-28 15:13:05 · 64 阅读 · 0 评论 -
I2S协议和hisi3520调试TLV320AIC3101音频驱动(一)
一、hisi的音频采集播放原理图ad就是音频芯片,i2s与hisi主控连接,hisi的采集和输出为ai和ao设备,通过内部的dma,将数据进行保存,不需我们关心。二、hisi的I2S文档介绍在介绍之前,先介绍hisi文档关于音频的说明,多媒体开发文档2、编解码处理器指南介绍根据文档,对讲只用一个ad芯片时的引脚设计。ad芯片作为主模式可以外接晶振,供芯片输出时钟,我选择ad芯片作为从模式,hisi就是主模式,提供时钟给ad芯片,输入和输出共用时钟。如下图三、hisi的I2S引脚和tl芯原创 2021-09-12 14:55:56 · 4417 阅读 · 0 评论 -
hisi3520dv400镜像烧录方法(hitool)或/tftp
我的板卡,是按hisi的推荐,设计的启动方式,接的是spi接口的norflash,作为启动介质,nand作为存储文件系统的介质方法一:HiTool.exe工具烧录hisi的hisitool工具里,有HiTool.exe,板卡第一次烧录镜像,需要用hisi的工具才能烧录打开HiTool.exe,选择hisi3520dv400,然后,选如下第二步的burn,出现如下画面。可以串口烧录,也可以网口烧录,我这里选的网口烧录,服务器ip,填pc电脑ip,板端配置填板卡设置好的ip,很奇怪,前面我试了很多次原创 2021-08-23 17:11:25 · 3123 阅读 · 0 评论 -
hi3520/hi3521视频解码vdec例程分析
一、vdec解码例程1、海思提供的视频解码,例程代码,本人,亲测试过,能跑起来,并解码成功,先上图,我是用海思提供的tool工具,dump代码,把yuv数据,保存为yuv格式图片,然后使用YUVPlayer工具,查看图片,下图是hisi 的sdk里的h264解码的图片。2、运行过程:在hisi的代码中,有很多模块的例程,找到vdec代码,把h264的api代码,拷贝出来在我们自己的工程中,不可能有两个main函数吧,自己写一个线程,运行这个api,就可以了。然后就是这个api的代码分析了原创 2021-08-02 12:39:32 · 1941 阅读 · 0 评论 -
linux 网络协议.之UDP Socket通信(二)
原文链接:https://blog.csdn.net/lell3538/article/details/53335472想写一篇TCP,UDP通信的区别,盗用了作者的关于api介绍,和一张图,对其不足之处改进,加自己的经验。1、UDP网络编程主要流程UDP协议的程序设计框架,客户端和服务器之间的差别在于服务器必须使用bind()函数来绑定侦听的本地UDP端口,而客户端则可以不进行绑定,直接发送到服务器地址的某个端口地址。框图如图1.3所示UDP协议的服务器端流程服务器流程主要分为下述6个部分,即建原创 2021-07-26 10:54:52 · 218 阅读 · 0 评论 -
C++读写配置xml文件(二)
一、c++读写xml文件1、定义了两个类,将需要的数据,按字符串写进指针buf,然后保存xml文件,再读出来,写进别的类任务,将字符串转换为数字,进行计算#define CONFIG_FILE_CALIB "/root/config/config.xml"using namespace cv;using namespace std;double fishcorrect_value[14]={0,};class Top//定义了一个大类{public: explicit Top()原创 2021-07-14 19:08:17 · 2056 阅读 · 0 评论 -
C语言xml文件存储数据文件(一)
————————————————版权声明:本文为CSDN博主「jack8126」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/jack8126/article/details/117004179本文,摘抄的,未验证过,纯属保存留用,请看原作者。c语言读取xml配置文件c语言要实现读取xml配置文件的功能。需要先编译libxml2库。1、编译libxml2库libxml2库从网络下载得到,这里下载的文件是:转载 2021-07-14 17:51:59 · 882 阅读 · 0 评论 -
yuv422,yuv420,yuv444的区别
一、yuv planar和packed的区别。YUV格式有两大类:planar和packed。PIXEL_FORMAT_YVU_SEMIPLANAR_422,PIXEL_FORMAT_YVU_SEMIPLANAR_420,PIXEL_FORMAT_YVU_SEMIPLANAR_444,PIXEL_FORMAT_YUV_SEMIPLANAR_422,PIXEL_FORMAT_YUV_SEMIPLANAR_420,PIXEL_FORMAT_YUV_SEMIPLANAR_444,PIXEL_F原创 2021-07-14 16:19:07 · 18192 阅读 · 0 评论