自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(30)
  • 资源 (9)
  • 收藏
  • 关注

原创 移远5G模块500U型号调试指南

可以用转接板接到WINDOWS下发送命令,或者在linux 下用minicom发AT,掉电不丢失。ls -l /dev/ttyUSB*,如果有如下设备,说明驱动已经集成进来。airmon-ng check kil 查看引起出错的进程。RM500U直接AT命令拨号不是quectel-CM。插上mini-pci转USB接口模块。安装minicom软件。lsusb查看是否有。

2023-05-18 09:44:29 2641

原创 Ubuntu Netplan修改网卡配置

Ubuntu Netplan修改网卡配置

2023-02-28 10:50:59 1463

原创 rtnl_link_register作用

rtnl_link_register作用

2023-02-24 10:42:48 464

原创 atheros驱动底噪获取流程

atheros驱动底噪获取流程

2022-08-15 16:12:22 233

原创 使用arecord、aplay命令实现音频的采集和播放

arecord 采集原始音频arecord -r 8000 -t raw -c 1 -f S16_BE ./testaplay 播放原始音频aplay -t raw -r 8000 -f S16_BE -c 1 test参数说明:-r 采样频率 8000 48000 44100等-t 录音文件类型 voc, wav, raw or au-c 声道数,1:单声道;2:双声道-f 采样格式,S16:16位; BE: 大端 ; LE: 小端最后是 文件路径注意:播放异常时,..

2022-04-22 15:48:08 6486

原创 Linux组播编程 组播发送和组播接收

接收端int init_recv_socket(int *pSockfd){ int recv_sockfd = -1; struct ip_mreq mreq; bzero(&mreq, sizeof(struct ip_mreq)); mreq.imr_multiaddr.s_addr = inet_addr(MCAST_ADDR); mreq.imr_interface.s_addr = htonl(INADDR_ANY); struct

2022-04-14 17:31:55 2083

原创 openwrt系统 3G 4G模块配置

openwrt系统 3G 4G模块网络配置文件,主要配置文件/etc/config/network:config interface ‘wan’        option device ‘/dev/cdc-wdm0’        option proto ‘qmi’        option service ‘umts’       

2022-04-14 14:53:55 1867

原创 atheros 无线驱动接收流程

无线驱动rx流程request_irq(pdev->irq, ath_isr, IRQF_SHARED, “ath9k”, sc);irqreturn_t ath_isr(int irq, void *dev) tasklet_schedule(&sc->intr_tq); void ath9k_tasklet(unsigned long data) int ath_rx_tasklet(struct ath_softc *sc,

2022-04-06 09:30:57 160

原创 openwrt移植开源库并编译

openwrt移植开源库并编译方法:导出环境变量:export STAGING_DIR=STAGINGDIR:/home/mike/openwrt/stagingdirexportPATH="STAGING_DIR:/home/mike/openwrt/staging_direxport PATH="STAGINGD​IR:/home/mike/openwrt/stagingd​irexportPATH="PATH:/home/mike/openwrt/staging_dir/toolchain-

2022-02-11 09:47:50 1055

原创 Openwrt使用Hexdump 查看分区内容

Openwrt中有时候需要查看分区里面的内容,如下命令:查看分区root@OpenWrt:/# cat /proc/mtddev: size erasesize namemtd0: 00040000 00010000 “u-boot”mtd1: 00010000 00010000 “u-boot-env”mtd2: 00630000 00010000 “rootfs”mtd3: 00400000 00010000 “rootfs_data”mtd4: 00160

2021-10-25 16:16:26 2164

原创 Ubuntu系统下的dos2unix和tofrodos

Ubuntu下默认没有安装dos2unix工具,但是有一个替代工具——tofrodos。安装:sudo apt-get install tofrodos实际上它安装了两个工具:todos(相当于unix2dos),和fromdos(相当于dos2unix)安装完即可,现在你已经可以进行文本格式的转换啦。比如: todos test.cpp (即unix2dos test.cpp)fromdos test.cpp (即dos2unix test.cpp)...

2021-09-23 10:15:05 525

原创 linux strip的使用方法及注意事项

/home # file hellohello: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-uClibc.so.0, with debug_info, not strippedstrip之前文件大小/home # ls -l hello-rwxrwxr-x 1 hxy hxy 18932 May 19 07:20 hellostrip之前的函数符号

2021-05-19 16:56:33 1107

原创 kcp使用中出现的异常退出问题

程序使用KCP协议,代码使用的多线程循环调用ikcp_update(kcp, millisec); 不定期会出现异常退出问题,经过调试每次停在void ikcp_flush(ikcpcb *kcp)函数中,经过反复调试问题在for(p=kcp->snd_buf.next; p!=&kcp->snd_buf; p=p->next)函数中,p指针和p->next指针指向是同一个地址,导致无限循环。后改为单线程,使用定时器驱动后正常。...

2021-05-19 16:02:33 503

原创 Linux命令在目录里面查找关键字

在linux目录中查找关键字

2021-05-18 15:16:39 1586

原创 判断H264 Keyframe实现

bool h264_is_keyframe(const char buffer, int len) {if(!buffer || len < 6)return FALSE;/ Parse H264 header now */uint8_t fragment = *buffer & 0x1F;uint8_t nal = (buffer+1) & 0x1F;if(fragment == 7 || ((fragment == 28 || fragment == 29) &

2021-05-12 13:58:56 441

原创 Linux服务器自动清理缓存

读写文件时,Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这就是Cache Memory(缓存内存)。即使程序运行结束后,Cache Memory也不会自动释放。这就会导致程序频繁读写文件后,可用物理内存会很少。其实这缓存内存(Cache Memory)在你需要使用内存的时候会自动释放,所以不必担心没有内存可用。当服务器很多时,为了让服务器始终处于高性能状态,需要设置预警值,然后自动清理缓存,假如我们的内存利用率预警值为80%,示例shell:MemThr=80MemPer=free

2021-05-12 11:00:18 2332

原创 802.11协议WIFI扫描

802.11协议I扫描主要有主动扫描和被动扫描被动扫描通过侦听AP定期发送的Beacon帧来发现网络, Beacon帧中包含该AP所属的BSS的基本信息以及AP的基本能力级,包括: BSSID (AP的MAC地址)、 SSID、支持的速率、支持的认证方式,加密算法、Beacons帧发送间隔,使用的信道等。当未发现包含期望的SSID的BSS时,STA可以工作于IBSS状态。主动扫描在每个信道上发送Probe request报文,从Probe Response中获取BSS的 基本信息, Probe Re

2021-05-12 09:56:19 934

原创 RTOS SDK 和 Non-OS SDK 有何区别?

主要差异点如下:Non-OS SDKNon-OS SDK 主要使用定时器和回调函数的方式实现各个功能事件的嵌套,达到特定条件下触发特定功能函数的目的。Non-OS SDK 使用espconn 接口实现网络操作,用户需要按照 espconn 接口的使用规则进行软件开发。RTOS SDKRTOS 版本 SDK 使用 freeRTOS 系统,引入 OS 多任务处理的机制,用户可以使用 freeRTOS 的标准接口实现资源管理、循环操作、任务内延时、任务间信息传递和同步等面向任务流程的设计方式。具体接口使

2021-05-08 15:42:08 2440 1

原创 MySQL在Linux下的常用命令

MySQL在Linux下的常用命令1.连接本机上的MySQLmysql -u用户名 -p用户密码2.连接到远程主机上的MySQLmysql -h主机地址 -u用户名 -p用户密码3.显示多少个数据库show databases;4.创建数据库create database 数据库名字;5.选择数据库use 数据库名字;6.删除数据库drop database 数据库名字;7.显示表选中数据库的所有表名show tables;8.显示某个表具体结构describe 表名;9.

2021-05-07 08:49:57 66

原创 海思设备Uboot下命令烧写设备固件

uboot下手工命令烧写的流程先确认好板子的IP和tftp的IP设置:printenvsetenv ipaddr 192.168.2.123setenv serverip 192.168.2.195然后在PC上启动tftp服务器,设置好roms的文件路径1、烧写uboot自身mw.b 0x42000000 0xff 0x100000tftp 0x42000000 full-boot.binnand erase 0x0 0x100000nand write 0x42000000 0x0 0x

2021-05-06 10:25:58 883

原创 在海思设备上使用GDB

gdb的可执行程序位于“~/osdrv/tools/board/gdb”目录下,请把对应编译器的gdb拷贝到单板的/usr/bin目录下,改名为gdb,加上可执行权限(用chmod a+x gdb命令),然后即可在单板上使用gdb。或者挂载nfs目录后,使用gdb的绝对路径运行gdb。一般碰到的问题是gdb会打印:Program received signal SIG32, Real-time event 32.0x4052d940 in __rt_sigsuspend () from /lib/li

2021-05-06 10:04:18 304 1

原创 RTP协议报文

RTP数据传输协议RTP报头的格式如下。每个RTP数据包都包含特定数据源标识符前的12个字节。仅当混合器插入CSRC标识符时,RTP数据包包含该标识符。各字段的长度和含义如下:RTP报头格式V(Version): 2位。定义RTP版本号,当前版本号为2.0P (Padding) : 1位。该位置1时,数据包的尾部有一个或多个补充字节(Padding Octet)。补充字节不是净荷的组成部分。最后一个补充字节包含应该勿略的字节数。具有固定块长度的某些加密算法或底层协议的数据单元要携带多个RTP数据包

2021-05-06 09:46:44 1719

原创 Reactor和Proactor模式

同步I/O模型通常用于实现Reactor模式,异步I/O模型则用于实现Proactor。

2021-05-04 23:53:15 55

原创 TC(Traffic Control)

TC(Traffic Control)TC(Traffic Control)用于Linux内核的流量控制,它利用队列规定建立处理数据包的队列,并定义队列中的数据包被发送的方式,从而实现对流量的控制。该工具让用户可以设定并配置几乎所有的流量控制框架要素,比如排队规则(qdisc)、类(class)及过滤器(filter),他们之间的关系如下: 排队规则:每个网络设备配有一个排队规则。通常,要发送的报文被送到一个排队规则中并且按照特定规则在此队列中排序。 类:排队规则可以有多个接口,这些接口用于向队列

2021-05-03 08:17:43 380

原创 h264_qsv

在ffmpeg硬件编解码中经常使用到h264_qsv。ffplay播放的命令:ffplay -vcodec h264_qsv 文件/URL。在ffmpeg的demo有这样一段关键代码:ret = avcodec_send_packet(decoder_ctx, pkt);if (ret < 0) {fprintf(stderr, “Error during decoding\n”);return ret;}ret = avcodec_receive_frame(decoder_ctx,

2021-05-02 23:04:29 2891

原创 lua语言

lua语言读取打印命令行local ps = luci.util.execi(“br showmacs br-lan”)读取arp表中的ip地址 cat /proc/net/arp | grep br-lan |awk ‘{print $1}’ipairs pairs的区别ipairs是一个数组 循环遍历 1 2 3 遇到nil直接退出 ipairs则不能返回nil,只能返回数字0,如果遇到nil则退出pairs是table表 pairs可以遍历表中所有的key,并且除了迭代器本身以及

2021-04-30 21:18:28 206 1

原创 WIFI模块

WIFI模块MTK7681:没有mcu,32bit-RISC 80Mhz ,没有系统,裸奔,Wi-Fi的SoC(片上系统)的单芯片Broadlink:Cortex-M3处理器+WIFI模块,具体芯片是marvell的88MC200+88W878288MC200:ARM Cortex M3的核,处理器时钟高达200Mhz88W8782:集成Marvell Feroceon CPU(ARMv5TE-compliant)高达128Mhz处理器时钟MXCHIP EMW3162模块,这是由上海庆科电子推出的

2021-04-30 21:12:17 507 1

原创 iwpriv常用命令

iwpriv常用命令隐藏SSIDiwpriv ra0 set HideSSID=1uci set wireless.@wifi-iface[0].hidden=enableuci commit wireless关闭隐藏SSID 即开启SSIDiwpriv ra0 set HideSSID=0uci set wireless.@wifi-iface[0].hidden

2021-04-30 21:02:25 1465 1

原创 rt2860驱动框架

rt2860驱动框架路径:rt2860v2\os\linux文件:pci_main_dev.crt2880_module_init  ---------> RtmpPhyNetDevInit-------->MainVirtualIF_open ---->VIRTUAL_IF_UP----->rt28xx_open----->rt28xx_init------>pNetDevHook->open = MainVirtualIF_open;&nbs

2021-04-30 20:39:01 474 1

原创 海思HI35xx如何调整内存分配

媒体业务需要占用一定的内存(主要占用 MMZ 内存)以支持业务正常运转,HiMPP平台按典型业务形态分配内存。用户产品内存使用紧张时,可根据实际情况尝试采用相关的策略调整内存分配大小。

2021-04-30 14:42:43 666

libevent+socket+消息队列 高效实现网络数据的接收处理

libevent+socket+消息队列 高效实现网络数据的接口处理 通过调用libevnet库 使用多线程及消息队列 高效的实现了网络数据的接收和处理。

2022-04-18

嵌入式Linux/openwrt MAC烧录工具及代码

使用openwrt或者linux设备的嵌入式设备,在烧录完镜像文件后,所有设备的MAC地址都是一样的,这时候就需要修改一下。下载完本包之后进行解压编译或者交叉编译就可以运行。

2021-09-13

ARM版如何开启gdb调试.docx

介绍嵌入式arm版如何设置gdb方法 包括core文件设置 编译方法 调试等。

2021-05-19

HI35xx gdb工具

可在单板上使用gdb。或者挂载nfs目录后,使用gdb的绝对路径运行gdb

2021-05-18

物联网常用协议比较.docx

物联网常用协议比较,例如:MQTT COAP等

2021-05-03

OpenWrt Syslog-ng日志功能.docx

主要Syslog-ng日志功能在openwrt系统中是如何配置以及实现的。

2021-05-03

GB28181 NVR介绍.zip

GB28181国标解决平台与平台对接问题

2021-05-02

802.11协议中RTS-CTS技术细节介绍.docx

在802.11 协议中CSMA/CA机制规定,传输数据之前sender会发送一个叫RTS的帧802.11协议中RTS-CTS技术细节介绍.docx

2021-04-30

C或C++如何调用Lua语言.docx

底层开发者尤其是在使用openwrt或者nginx时,经常要适合用到c/c++调用Lua

2021-04-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除