自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(276)
  • 资源 (11)
  • 论坛 (1)
  • 收藏
  • 关注

转载 嵌入式arm linux设置登录用户和用户密码

最近在开发基于arm linux的集中器,出于保护系统的目的,需要给系统设置登录用户名和密码,因此就在网上查询了下怎样给嵌入式arm linux系统设置登录用户名和密码的方法,结果如下:设置登录用户和用户密码,在/etc/inittab文件中,内容如下:#first:run the system script file::sysinit:/etc/init.d/rcS#::askfirst:-/bin/sh::sysinit:-/bin/login::ctrlaltdel:-/sbin/reb

2021-09-11 11:32:18 34

原创 关于open read write 注意事项

1.open 可以用来打开文件,也可以用来创建文件,此时最好添加上权限例如 fd = open("/app/wifi_conf",O_CREAT|O_RDWR|O_TRUNC,S_IRWXU);S_IRWXU表示权限为0700,方便后面读或者写。O_TRUNC有类似清零作用,覆盖写的时候一定要添加上。O_CREAT表示如果没有此文件,可自动创建。2.比较两个函数参数区别。read(fd,buf,sizeof(buf)) wirte(fd,buf,strlen(buf));rea.

2021-08-20 10:31:02 8

原创 iperf3 实现吞吐量测试及交叉编译

吞吐量测试可以反映WiFi的性能,是目前芯片厂家、模组厂家、设备厂家普遍使用的 测试方法,具有很高的认同度。吞吐量测试最常使用的工具是iperf。 测试环境:PC机通过有线与AP连接,单板通过WiFi与AP连接,单板和PC机可以互相 ping通。在PC机和单板上均有iperf工具。PC机的IP地址为192.168.0.111、单板IP地址为192.168.0.149 交叉编译链为arm-himix200-linux-gcciperf3下载地址:http://code.googl...

2021-08-18 15:35:44 126

转载 路由器、交换机、集线器的区别

术语解释路由器:(Router)是连接因特网中各局域网、广域网的设备。在路由器中记录着路由表,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。发生在网络层。交换机:(Switch)是一种用于电(光)信号转发的网络设备。它可以为接入交换机的任意两个网络节点提供独享的电信号通路,把传输的信息送到符合要求的相应路由上。发生在数据链路层。集线器:(Hub)是指将多条以太网双绞线或光纤集合连接在同一段物理介质下的设备。发生在物理层。路由器和交换机的区别路由器是连接不同的网段的,负责

2021-08-17 17:48:34 25

原创 Makefile编译部分文件夹的写法

当文件夹中有许多文件一起编译时我们通常会将makefile文件写成遍历模式,如下所示:.PHONY:clean allall: @for x in `find ./ -maxdepth 2 -mindepth 2 -name "Makefile" `; \ do cd `dirname $$x`; if [ $$? ]; then make || exit 1; cd ../; fi; doneclean:$(components) @for x in `fin

2021-07-22 16:01:06 45

原创 Linux库函数说明

struct socket {socket_statestate;unsigned longflags;const struct proto_ops*ops;struct fasync_struct*fasync_list;struct file*file;struct sock...

2021-05-07 09:33:56 178

原创 编程中一些比较重要的结构体

1.struct file_operationsstruct file_operations { struct module *owner;//标示模块拥有者 loff_t (*llseek) (struct file *, loff_t, int); //loff_t是一个64位长偏移数,llseek方法标示当前文件的操作位置 ssize_t (*read) (struct file *, char __user *, size_t, loff_t *);//ssize_t标.

2021-05-07 09:32:35 24

转载 sync 命令

sync命令用于强制吧文件系统buff的内容,写入系统磁盘在Linux/Unix系统中,在文件或数据处理过程中一般先放到内存缓冲区中,等到适当的时候再写入磁盘,以提高系统的运行效率。sync命令则可用来强制将内存缓冲区中的数据立即写入磁盘中。用户通常不需执行sync命令,系统会自动执行update或bdflush操作,将缓冲区的数据写 入磁盘。只有在update或bdflush无法执行或用户需要非正常关机时,才需手动执行sync命令。语法sync(选项)选项--help:显示帮助;

2021-03-22 08:55:42 274 1

原创 signal()函数原型分析

signal()#include <signal.h>void (*signal(int signum, void (*handler)(int)))(int);分析:1.先看signal 根据括号位置将其分离出来,变为ret = signal(int signum, void (*handler)(int)) 和void (*ret)(int)从这里可以很明白的看出来 signal的函数结构以及以signal返回值为名称的函数指针。2.再将signal(i..

2020-12-11 11:51:07 200

原创 linux之poll机制(三)

使用场景: 单片机编程中,主程序等待IIC设备一个事件的发生,如果在允许的时间内发生了就返回1(SUCCESS),否则返回0(ERROR)。解释:主程序等待IIC返回一个回应值,如果回应就代表可以对IIC读写,如果IIC未启动时,是没有响应的,这时候主程序不可能一直等待,所以应该有一个等待超时机制,到时间后如果没有响应就直接返回失败,主程序继续其他后续操作。对于类似上面的情况,linux是通过poll机制实现超时操作的。linux在调用poll函数时,如果没有事件发生,则进入休眠状...

2020-12-11 09:55:30 105

原创 linux之异步通知机制(二)

1 概念: 异步通知机制:一旦设备就绪,则主动通知应用程序,这样应用程序根本就不需要查询设备状态,是一种“信号驱动的异步I/O”。 信号是在软件层次上对中断机制的一种模拟,进程收到信号与处理器收到中断请求在原理上可以说是一样的。信号是异步的,一个进程不必通过任何操作来等待信号的到达,事实上,进程也不知道信号到底什么时候会到达。2 异步通知机制无怪乎四个方面:谁发,怎么发,发什么,发给谁。满足这四个方面也就完成了信号的异步通知。以按键产生信号为例:驱动程序处理按键操作...

2020-12-11 09:54:50 79

原创 linux之中断过程(含内核部分)(一)

1.uboot启动kernel入口函数是start_kernel()start_kernel() --->early_trap_init()--->unsigned long vectors = CONFIG_VECTORS_BASE; memcpy((void *)vectors, __vectors_start, __vectors_end - __vectors_start); memcpy((void *)v...

2020-12-11 09:53:27 89

原创 内部总线、系统总线、外部总线区别

这种分类方式是根据离芯片远近等级分类的。内部总线是外设与处理器之间的总线,用于芯片一级的互连。系统总线是各插件板与主板之间的总线,用于插件板一级的互连。外部总线是微机和外部其他设备之间的总线,微机作为一种设备,通过该总线和其他设备进行信息与数据交换,用于设备一级的互连。个人理解:内部总线就是开发人员经常用到的各种协议,比如SPI总线协议、SCI总线协议、IIC总线协议、UART、GPIO、CAN、SDIO、IIS等。是CPU和外设进行控制指令,访问地址,交换数据的通信规则。如果不是开发人

2020-10-08 17:00:28 3005

转载 海思芯片的选型及特征参考说明大全

华为 海思半导体(Hisilicon) 监控设备 hi3516型号-特征华为 海思半导体(Hisilicon) 监控设备 Hi3516EV100&nBSP; 主流2M智能IP摄像头SoC华为 海思半导体(Hisilicon) 监控设备 Hi3516EV200 专业4M智能IP摄像SoC华为 海思半导体(Hisilicon) 监控设备 Hi3516EV300 专业4M智能IP摄像SoC华为 海思半导体(Hisilicon) 监控设备 Hi3516CV100 主流全高清IP摄像头So...

2020-10-08 15:55:27 938

转载 Flash,RAM,ROM区别

所有使用者对“存储器”这个名词可是一点都不陌生,因为所有的电子产品都必须用到存储器,且通常用到不只一种存储器。不过对于存储器种类、规格与形式,很多人容易搞混。比如,最近价格贵到炸的 NAND Flash,产业新闻里常常提到的DRAM,还有SRAM、SDRAM、DDR 3、DDR 4、NOR Flash … 这些又是什么?先来一段百度百科。存储器是用来存储程序和数据的部件,对于计算机来说,有了存储器,才有记忆功能,才能保证正常工作。存储器的种类很多,按其用途可分为主存储器和辅助存储器,主存储器又称内存

2020-08-20 10:12:57 378

原创 关于笔记本搜索不到某个固定wifi的解决方法

最近同事拿笔记本连公司wifi而不得,且一直搜索不到wifi名称,而其他wifi连接正常,其他人连接公司wifi也正常,修改了网络适配器、防火墙等等都无法解决,最后怀疑是公司路由器设置有问题。我公司用的是华为路由TC7102,登录路由,地址是:http://192.168.0.1/html/index.html#/login输入密码进入自己的路由器设置界面,点击我的wifi,我发现有一个wifi5备用网络,打开这个备用网络过一段时间发现笔记本能够搜索到了。原来2018年就开始使用WIFI 6了

2020-08-11 09:50:16 3585

原创 在Linux上搭建VisualSVN Server(svn服务端)

一、检查是否安装了低版本的SVN#rpm -qa | grep subversion如果已安装SVN,则会返回版本信息。这时需要卸载旧版本的SVN。卸载旧版本SVN#yum remove subversion2、安装SVN# yum install subversion3、检查安装是否成功#svnserve --version4、代...

2020-08-03 09:19:14 96

原创 iperf移植到ARM上出现问题的解决

最近要使用iperf测试wifi模块的延时,所以重点研究了一下iperf.1.安装使用我主要是使用的linux,安装和使用方法其他文档有很详细的介绍,在此不再赘述,具体可参考下面链接:iperf命令2.iperf移植到ARM这里关键点事交叉编译的问题,我是添加了一个Makefile文件,具体如下:CUR_DIR := $(shell pwd)OSDRV_CROSS ?= arm-himix100-linux###################################

2020-05-15 21:09:00 372

原创 关于 WARNING: 'automake-1.15' is missing on your system.的解决

编译jffs2_tool时报错WARNING: 'automake-1.15' is missing on your system.本以为下载了对应的源码包装上就行了,没想到后面牵涉了好多问题,总结一下。1.automake -v一下 版本太旧了,apt-get autoremove automake 删除 automake -vThe program 'automak...

2020-03-27 10:16:52 4991

原创 ubuntu 和windows 7 时间相差几天怎么处理?

突然发现我的虚拟机里的时间和win7的时间相差几天,网上搜索的什么utc时间都没有用,经过不懈努力解决了,具体如下:1.添加dnsvi /etc/resolv.conf # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)# DO NOT EDIT THIS FI...

2020-03-12 09:40:46 96

原创 使用sudo执行gcc命令的时候提示找不到命令

前提:使用soc Hi3556v100 ubuntu 16.04 root下对整个程序make正常,切换到本地用户名下对程序编译sudo make时报错 make[3]: arm-hisiv600-linux-gcc:命令未找到。查询arm-hisiv600-linux-gcc -v发现编译链是存在的,但是sudoarm-hisiv600-linux-gcc -v 显示...

2019-11-23 14:00:43 991 1

原创 关于单链表中使用二阶指针

首先下面两条是一阶指针和二阶指针出现在函数参数中的原因1.当函数中参数变量的值在函数中发生改变并且需要传出到函数外面,此时的参数应使用一阶指针代替之前的变量(升阶),即传参是将变量的地址传入函数(例如:int* 代替int)2.类似第一条,当函数中参数为指针,并且这个指针在函数内部指向的地址发生了变化,然后这个指针在函数执行完成后需要输出到函数外面,此时需要将这个指针参数改为二阶指针(升阶...

2019-11-11 16:20:41 147

原创 安装tensorflow遇到的问题

1.追求最新版本的安装包导致安装出问题安装了Anaconda3 2019年10月这一版的,算是最新的,结果下载对应的pythod版本pythod3.7时报错SSLError,百度结果是让安装openssl,结果下了好几个版本的openssl最后仍然报同样错误,window\system32下也没有对应的dll文件。因为参考的安装教程是https://blog.csdn.net/mao_hui_...

2019-10-31 18:05:52 544

转载 DHCP介绍

定义DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个应用层网络协议,使用UDP协议工作, 通常被应用在大型的局域网络环境中,主要作用是集中的管理、分配IP地址(一般是动态地分配私有IP地址),使网络环境中的主机动态的获得IP地址、Gateway地址、DNS服务器地址等信息,并能够提升地址的使用率(因为可以动态分配IP)。功能DHCP...

2019-10-22 16:08:44 466

原创 ubuntu 镜像下载

利用阿里云镜像下载ubuntuubuntu 14.04:http://mirrors.aliyun.com/ubuntu-releases/14.04/ubuntu 16.04:http://mirrors.aliyun.com/ubuntu-releases/16.04/ubuntu 18.04:http://mirrors.aliyun.com/ubuntu-releases...

2019-10-22 09:24:48 337

转载 Linux DTS(Device Tree Source)设备树详解之三(高通MSM8953实例分析篇)

请尊重原创版权,转载注明出处。    在前两篇中我们了解了DTS的背景基础知识以及发挥作用的流程,这篇文章我们以高通的MSM8953平台为例来添加一个基础的i2c设备(包含一个gpio中断)。首先我们在该i2c设备的驱动中找到了匹配设备与驱动程序的compatiblestatic const struct of_device_id iqs263_of_match[] = { ...

2019-10-09 18:05:03 1283

转载 Linux DTS(Device Tree Source)设备树详解之二(dts匹配及发挥作用的流程篇)

请尊重原创版权,转载注明出处。Linux DTS(Device Tree Source)设备树详解之二(dts匹配及发挥作用的流程篇)    一个dts文件确定一个项目,多个项目可以包含同一个dtsi文件。找到该项目对应的dts文件即找到了该设备树的根节点kernel\arch\arm\boot\dts\qcom\sdm630-mtp.dts/* Copyright (c) 20...

2019-10-09 18:04:19 756

转载 Linux DTS(Device Tree Source)设备树详解之一(背景基础知识篇)

什么是DTS?为什么要引入DTS?    DTS即Device Tree Source 设备树源码, Device Tree是一种描述硬件的数据结构,它起源于 OpenFirmware (OF)。 在Linux 2.6中,ARM架构的板极硬件细节过多地被硬编码在arch/arm/plat-xxx和arch/arm/mach-xxx,比如板上的platform设备、 resource、i2c_b...

2019-10-09 18:03:04 968

原创 svn命令行使用积累

1.Node remains in conflict,修改问价svn 提交后其他客户端svn update更新时出现以下问题Updating '.':Skipped 'Hi3559_Stream' -- Node remains in conflictSkipped 'out_bg0601' -- Node remains in conflictAt revision 641.Su...

2019-09-29 09:38:42 832

原创 Makefile中常见预定义变量

Makefile中常见预定义变量 命 令 格 式 含义 AR 库文件维护程序的名称,默认值为ar 创建静态库.a AS 汇编程序的名称,默认值为as CC C编译器的名称,默认值为cc CPP ...

2019-09-25 17:14:22 474

原创 Makefile静态模式 $(OBJS): $(OBJ_ROOT)/%.o :$(SRC_ROOT)/%.c

定义: 静态模式规则是这样一个规则:规则存在多个目标,并且不同的目标可以根据目标文件的名字来自动构造出依赖文件。静态模式规则比多目标规则更通用,它不需要多个目标具有相同的依赖。但是静态模式规则中的依赖文件必须是相类似的而不是完全相同的。语法: TARGETS : TARGET-PATTERN: PREREQ-PATTERNS别的不说直接上例子objects...

2019-09-25 16:36:44 2027

转载 关于linux Wireless基础知识(cfg80211 mac80211 nl80211)

1. 基本概念 •cfg80211: 用于对无线设备进行配置管理。与FullMAC, mac80211和nl80211一起工作。(Kernel态) •mac80211: 是一个driver开发者可用于为SoftMAC无线设备写驱动的框架(Kernel态)。 •nl80211: 用于对无线设备进行配置管理,它是一个基本Netlink的用户态协议(User态)...

2019-09-16 15:45:24 584

原创 802.11a/b/g/n区别

802.11a:工作频段:5.15~5.825GHz数据传输速率:54Mbps传输距离:10~100m调制方式:OFDM802.11b:(WIFI标准)工作频段:2.4~2.4835GHz数据传输速率:11Mbps传输距离:150m内调制方式:直接序列DSSS和802.11a不兼容802.11g:对802.11b的提速。工作频段:2....

2019-09-16 15:20:20 15154 1

转载 Kconfig文件详解

下面截取/drivers/net下的Kconfig文件中的部分内容:# Network device configurationmenuconfig NETDEVICES default y if UML depends on NET bool "Network device support" ---help--- ...

2019-09-16 10:29:07 511

原创 加载驱动(ko)三种情况

1.在驱动下的kconfig中config 并在上层的kconfig(已经被编译到.config)中使用source将此kconfig链接。2.一般在linux/arch/arm/configs/下有对应的商家配置好的config 例如:hi3516cv500_smp_defconfig 在osdrv的make menuconfig 处设置为makehi3516cv500_smp_def...

2019-09-16 10:26:12 2281

转载 linux下移植wifi之安装hostapd及其操作(八)

安装 hostapd1. 下载,解压下载源码: http://w1.fi/hostapd/tar -xvf hostapd-2.6.tar.gzcd hostapd-2.6/hostapd2. 编译、安装cp defconfig .configvi .config去掉 #CONFIG_LIBNL32=y 前面的#...

2019-09-12 17:23:16 353

转载 linux下移植wifi之概念介绍

详细介绍linux下移植wifi的步骤.docxLinux系统下移植wifi模块,使其正常工作。包括两部分内容,第一部分是识别无线设备,并且正确安装驱动程序。第二部分是选择管理无线连接的方法。本文将介绍这两部分内容。一、背景配置wifi有三种方式:图形客户端,文本模式接口和命令行界面。最简单的方法是在安装桌面环境后使用图形客户端。它们提供了一个方便的点击式界面,可以在几秒钟内...

2019-09-12 17:15:17 697

转载 关于WIFI的工作模式--AP MODE/STATION MODE

wifi的concurrent mode所谓wifi的共存模式,有以下几种: station mode + station mode station mode + ap mode station mode + p2p mode p2p mode + ap mode WIFI模块通常支持几种工作模式,但也可以支持两种模式并存,即AP MODE & STATION M...

2019-09-10 12:01:45 5011

转载 GCC编译选项

GCC编译选项如下表所示:命令 描述 -llibrary -llibrary 进行链接时搜索名为library的动态连接库。 例子:如果要搜索名为libxml.so的动态连接库,则命令 :$ gcc test.c -lxml -o test -Idir 把dir加入到搜索头文件的路径列表中。 例子: $ gcc test.c -I../inc...

2019-09-08 14:14:50 262

原创 gcc编译涉及到的选项开关

用法:gcc [选项] [文件名] [选项] [文件名]选项:用于控制编译的整个流程。一下选项开关根据自己遇到的顺序添加:-I(大写i) 后面一般跟库目录 dir ->指定include包含文件搜索的目录 dir-i(小写i) 好像暂时没遇到过哎-l(小写L) 后面紧贴着函数库文件 ->链接函数库文件link-L dir 后面跟目...

2019-08-26 16:08:33 381

小波变换 完美通俗解读

小波变换 完美通俗解读 对小波变换进行解读 适合新手

2015-12-17

DBN源码,深度学习领域的适合初学者学习的代码之一,基础必备的内容

DBN源码,深度学习领域的适合初学者学习的代码之一,基础必备的内容

2014-09-26

STM8S+STVD+COSMIC折腾小记

STM8S+STVD+COSMIC折腾小记.专为新手准备

2016-01-10

压缩感知综述

包含17篇RICE大学大牛的论文,对压缩感知的综述

2014-09-26

BMI160datasheet

Bosch BMI160 datasheet 陀螺仪 加速度记,非常详细。

2018-11-23

TortoiseSVN-1.9.5.27581-x64

TortoiseSVN-1.9.5.27581-x64和对应汉语插件和VisualSVN-Server

2017-05-29

Autoencoder_Code

Autoencoder_Code,深度学习自动编码技术

2014-09-26

TortoiseSVN-1.8.10.26129-x64

TortoiseSVN-1.8.10.26129-x64 包含中文模式以及VISUALSVN SERVER

2017-05-29

精通Matlab与C C++ 混合程序设计

让你精通matlab和C++两种编程方法,以后程序设计不在话下

2014-09-26

最优化方法及其Matlab程序设计

压缩感知中用到的各种优化方案,很齐全,同时配备有相应的matlab仿真代码

2014-05-09

电子工程师创新设计必备宝典系列之FPGA开发全攻略_基础篇

电子工程师创新设计必备宝典系列之FPGA开发全攻略_基础篇

2016-02-26

怀想天空2015的留言板

发表于 2020-01-02 最后回复 2020-01-02

空空如也

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

TA关注的人 TA的粉丝

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