- 博客(268)
- 资源 (10)
- 收藏
- 关注
转载 电力线宽带载波对比窄带载波的优点
电力线宽带载波对比窄带载波的优点窄带和宽带电力线载波方式,在应用实施方式上有很多类似的地方,如借助电力线网络实现通信节点间免布线或少布线,但在通信机制、通信协议、载波和调制方式等方面具有巨大的差别。(1)高速数据传输,宽带载波通信速率高达2Mbps远高于窄带载波的几十K或几百Kbps。(2)实现远程控制通断电功能,窄带由于中心频率较低难以实现实时抄通。宽带避免了断电之后难以送电现象,实现实时抄表通断电功能。(3)宽带载波中心频率为2-12MHz,远高于窄带东软(270KHz)、晓程(120KHz)窄
2021-11-03 13:15:18
5972
转载 Linux查看目录挂载点
用命令 df 即可# df /var/lib/Filesystem 1K-blocks Used Available Use% Mounted on/dev/sda3 135979984 66905292 62055896 52% /加上-kh更容易看些# df /var/lib/ -khFilesystem Size Used Avail Use% Mounted on/dev/sda3
2021-10-08 21:22:52
3135
转载 查询磁盘空间 statfs函数
因为要读取SD卡的大小和使用情况,所以用到statfs这个函数,功能类似于df命令。需要的头文件:#include <sys/vfs.h>int statfs(const char *path, struct statfs *buf);struct statfs {long f_type; /* 文件系统类型 */long f_bsize; /* 经过优化的传输块大小 */long f_blocks; /* 文件系统数据块总数 */long f_bfree; /* 可用块数 */
2021-10-08 20:50:23
704
转载 __attribute_((packed))
attribute((packed))的作用是让编译器取消结构体在编译过程中的优化对齐,可以保证结构体在不同的处理器中有相同的大小。使用示例:typedef struct __attribute__((packed)) { uint8_t protocolType[12]; uint8_t packetType; uint8_t serviceType; uint8_t optRetCode; uint8_t reserved; uint32_t dataL
2021-09-30 16:53:59
576
原创 组合有功电能,组合无功电能的概念
概念组合有功电能 combination active energy对正向、反向有功电能进行加、减组合运算得出的有功电能,单位是kWh。组合无功电能 combination reactive energy对无功任意四象限电能进行加、减组合运算得出的无功电能,单位是kvarh。DL/T 645 —2007中的几种组合电能组合有功电能组合无功1电能组合无功2电能组合方式特征字...
2021-09-10 17:00:08
5027
转载 fork,execv和system解析
程序的运行过程(1)在内存中划出一片内存空间(2)将硬盘上可执行文件中的代码(机器指令)拷贝到会出的内存空间空间中(3)pc指向第一条指令,cpu取指运行当有os时,以上过程都是通过调用相应的api来实现的。在linux下,os提供2个非常关键的api,fork和exec。fork: 开辟出一块内存空间exec: 将程序代码(机器指令)拷贝到开辟的内存空间中,并让pc指向第一条指令,cpu开始运行,进程就运行起来了,运行起来的进程会与其它的进程切换着并发运行fork#include <
2021-08-18 15:42:22
539
原创 PDU(Protocol Data Unit)协议数据单元
协议数据单元PDU(Protocol Data Unit)是指对等层次之间传递的数据单位。协议数据单元(Protocol Data Unit )物理层的 PDU是数据位(bit),数据链路层的 PDU是数据帧(frame),网络层的PDU是数据包(packet),传输层的 PDU是数据段(segment),其他更高层次的PDU是数据(data)。1.PDU2.数据封装3. 数据解封装4.数据的封装与解封装过程5.数据传输过程...
2021-08-11 08:43:54
14932
原创 Ubuntu 配置源列表sources.list
1.备份原来的源列表sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup2.获取最新的源列表下载对应版本最新的源列表:https://mirrors.ustc.edu.cn/repogen/,比如我的ubuntu12.04:3.修改源列表将上面获取到的源列表复制粘贴到/etc/apt/sources.list4.更新源列表sudo apt-get update...
2021-08-09 17:17:48
3629
转载 详解C语言中的wait()函数和waitpid()函数
C语言wait()函数:结束(中断)进程函数(常用)#include <sys/types.h> #include <sys/wait.h>pid_t wait (int * status);函数说明:wait()会暂时停止目前进程的执行, 直到有信号来到或子进程结束. 如果在调用wait()时子进程已经结束, 则wait()会立即返回子进程结束状态值. 子进程的结束状态值会由参数status 返回, 而子进程的进程识别码也会一快返回. 如果不在意结束状态值, 则参数
2021-08-05 09:04:40
10040
原创 Altium designer软件常用最全封装库,包含原理图库、PCB库和3D模型库
Altium designer软件常用最全封装库,包含原理图库、PCB库和3D模型库截图如下,具体获取方式见文末链接链接:https://pan.baidu.com/s/1pJ1mXJrCufWBqSPjR8r1Sw提取码:4sqy
2021-07-24 10:17:54
4267
4
原创 AD的library中 库文件后缀有.intlib .schlib .pcblib 的区别
intlib 是集成原理图和PCB封装的schlib .只有原理图pcblib 只有PCB封装
2021-07-20 17:14:28
4587
转载 变压器的工作原理(图解,原理图讲解,一看就懂)
工作原理变压器是变换交流电压、交变电流和阻抗的器件, 当初级线圈中通有交流电流时,铁芯(或磁芯)中便产生交流磁通,使次级线圈中感应出电压(或电流)。基本组成干式变压器组成部件包括器身(铁芯、绕组、绝缘、引线)、油式变压器由变压器油、油箱和冷却装置、调压装置、保护装置(吸湿器、安全气道、气体继电器、储油柜及测温装置等)和出线套管。1、铁芯铁芯是变压器中主要的磁路部分。通常由含硅量较高,厚度分别为0.35 mm、0.3mm、0.27 mm,由表面涂有绝缘漆的热轧或冷轧硅钢片叠装而成。铁芯分为铁芯柱
2021-07-19 11:32:16
59371
转载 ARM下如何修改linux系统时间
问:Linux下如何保存设置的系统时间? 答:分以下步骤进行: (1)通过开发板控制台设置开发板的当前系统时间: date [MMDDhhmm[[CC]YY][.ss]] 例如: date 010410462008 (2)将系统时间写入RTC: hwclock -w 读出检验一下,写入是否正确: hwclock -r (3)修改开发板根文件系统中的/etc...
2021-07-06 16:57:22
951
转载 Linux下时间格式
一、linux下时间存储方式linux下存储时间常见的有两种存储方式:1.从1970年到现在经过了多少秒 (time_t类型)2.用一个结构来分别存储年月日时分秒 (tm结构体)tm结构体如下:struct tm{ int tm_sec; /*秒,正常范围0-59, 但允许至61*/ int tm_min; /*分钟,0-59*/ int tm_hour; /*小时, 0-23*/ int tm_mday; /*日,即一个月中的第几天,1-31*/ i
2021-07-06 15:52:01
2181
转载 SIGINT,SIGKILL,SIGTERM信号区别,各类信号总结
SIGINT,SIGKILL,SIGTERM三者都是结束/终止进程运行.但略微有区别.SIGINT产生方式: 键盘Ctrl+C产生结果: 只对当前前台进程,和他的所在的进程组的每个进程都发送SIGINT信号,之后这些进程会执行信号处理程序再终止.SIGTERM产生方式: 和任何控制字符无关,用kill函数发送本质: 相当于shell> kill不加-9时 pid.产生结果: 当前进程会收到信号,而其子进程不会收到.如果当前进程被kill(即收到SIGTERM),则其子进程的父进程将为i
2021-06-28 14:05:11
3712
转载 cut命令的使用实例
cut命令用于文本处理。通过选择列,可以使用此命令从文件中提取文本的一部分cut命令的选项Cut基本语法:cut OPTION... [FILE]...选项:-f : 通过指定哪一个字段进行提取。cut命令使用“TAB”作为默认的字段分隔符。-d : “TAB”是默认的分隔符,使用此选项可以更改为其他的分隔符。–complement : 此选项用于排除所指定的字段。–output-delimiter : 更改输出内容的分隔符。如何分割cut最常用的选项是-d和-f的组合。它基本上会根据
2021-06-21 11:27:45
288
转载 Ubuntu- Reading package lists... Error! 解决方案
Reading package lists... Error!E: Encountered a section with no Package: headerE: Problem with MergeList /var/lib/apt/lists/AZ.archive.ubuntu.com_ubuntu_dists_natty_main_i18n _Translation-enE: The package lists or status file could not be parsed or o
2021-06-17 12:26:46
892
原创 移远EC20 4G模块拨号相关
拨号成功但是未将ppp0设置为静态路由。设置PPP0为默认路由:先删除原来路由,route del default 再将ppp0设置为默认路由,route add default dev ppp0
2021-06-16 17:50:28
3820
2
转载 C语言的内置宏(定义日志宏)
我们在写C语言程序的时候,会经常用到宏定义,C语言也有很多内置的宏。 强大的内置宏: 我们再来写一个定义日志宏的程序感受一下。#include <stdio.h>#define LOG(s) do { \ printf("%s %s [%s:%d] %s\n", __DATE__,__TIME__,__FILE__,__LINE__,s);\}while(0)void f(){ LOG("Enter f()..."); LOG("Exit f()...");} int
2021-06-15 16:56:45
573
转载 linux 路由表设置 之 route 指令详解
转载于:http://blog.csdn.net/chenlycly/article/details/52141854使用下面的 route 命令可以查看 Linux 内核路由表。[cpp] view plain copy# route Destination Gateway Genmask&nb.
2021-06-12 14:45:32
793
原创 float在内存中存储方式
依据IEEE规定 :float在存储中都分为三个部分:1.符号位(Sign) : 0代表正,1代表为负2.指数位(Exponent):用于存储科学计数法中的指数数据,并且采用移位存储3.尾数部分(Mantissa):尾数部分其中floa和doublet的存储方式如下图所示:例如:13.625在内存中的存储 首先将13.625转化成二进制 整数部分除2取余,直到商为0停止 。最后读数时,从最后一个余数读起,一直到最前面的一个余数 所以13的二进制位
2021-05-27 21:38:40
1356
1
原创 linux reboot命令重启的时候卡住问题解决
前言最近在做一个linux嵌入式产品的时候发现,reboot命令不起作用,经过定位确定是自己的守护进程的问题,reboot命令在给守护进程发SIGTERM信号时未能关闭进程。于是查找守护进程代码发现了如下代码:c signal( SIGTERM, SIG_IGN );// 忽略SIGTERM信号所以把这句代码注释掉后,程序恢复正常。这里就涉及到一个reboot命令的流程,以及linux的信号处理机制的问题。接下来做一个分析。reboot的处理流程普通的reboot是通过busybox..
2021-04-25 14:31:29
13715
转载 函数重载和覆盖(重写)的区别
1、重载:函数重载是指在同一作用域内(名字空间),可以有一组具有相同函数名,不同参数列表的函数;2、覆盖(也叫重写):指在派生类中重新对基类中的虚函数(注意是虚函数)重新实现。即函数名和参数都一样,只是函数的实现体不一样;3、隐藏:指派生类中的函数把基类中相同名字的函数屏蔽掉了,隐藏与另外两个概念表面上看来很像,很难区分,其实他们的关键区别就是在多态的实现上。下面那种情形下myfunc函数声明是重载?A. namespace IBM{ int myfunc(int a);}namesp
2021-04-14 08:45:42
826
原创 c++多态
1.几个重点多态:多态按字面的意思就是多种形态。C++ 多态意味着调用成员函数时,会根据调用函数的对象(而不是类)来执行不同的函数。virtual的作用:用virtual定义的成员函数为虚函数,会告诉编译器不要静态链接到该函数。2.举例说明#include <iostream> using namespace std; class Shape { protected: int width, height; public: Shape( int a
2021-04-13 22:14:34
85
转载 可编程增益放大器PGA(程控放大器)
在数据采集系统中,需要有多通道或多个参数共用一个测量放大器。如有一个四通道的数据采集系统,四个通道的信号各不相同,分别为uv,几十uv,mv,v的数量级,要放大到a/d转换器标准的输入电压大小。因此,计算机在选定通道号的同时,也应选定对应通道的增益要求,以实现自动增益控制和自动量程切换的测量要求,所以,程控放大器在测量和智能化中得到广泛应用。可编程放大器种类很多,有单运放、多运放和仪用程控放大器等,又可分模拟式和数字式等(从输出信号讲)。1. 仪用可编程增益放大器它的增益方程为:rg由程序控制来
2021-04-04 10:45:50
9802
原创 电阻标注方法
1.E-24标注方法E-24标注法有两位有效数字,精度在±2%(-G),±5%(-J),±10%(-K)(1) 常用电阻标注XXY XX代表底数,Y代表指数例如470 = 47Ω103 = 10kΩ224 = 220kΩ(2) 小于10欧姆的电阻的标注用R代表单位为欧姆的电阻小数点,用m代表单位为毫欧姆的电阻小数点例如1R0 = 1.0ΩR20 = 0.20Ω5R1 = 5.1ΩR007 = 7.0mΩ4m7 = 4.7mΩ2.E-96标注方法E-96标注法有三位有效数字,
2021-03-25 13:44:25
1500
原创 update-rc.d用法
导引在Linux系统下,一个Services的启动、停止以及重启通常是通过/etc/init.d目录下的脚本来控制的。然而,在启动或改变运行级别时,是在/etc/rcX.d中来搜索脚本。其中X是运行级别的number。本文将解释如何启动、关闭和修改服务的运行。当你在Debian下安装一个新的服务,比如Apache2,安装完成后,默认情况下它会启动,并在下一次重启后自动启动。但是如果你不是一直需要这个服务,只在需要的时候启用它,你可以禁用它。直到你需要使用的时候,执行如下指令:/etc/init.d/ap
2021-03-21 12:48:41
3046
1
原创 指定网卡进行ping操作
有两块网卡,ip分别为 192.168.12.83、192.168.1.126使用不同网卡分别ping百度windowswindows系统下:ping -S网卡1:ping -S 192.168.12.83 www.baidu.com网卡2:ping -S 192.168.1.126 www.baidu.comlinux系统linux系统下:ping -I与windows下用法基本一致,唯一要改的就是把 S 改为 I(大写的 i)网卡1:ping -I 192.168.12.83
2021-03-12 16:08:12
10088
转载 AD转换中参考电压的作用
AD转换AD转换就是模数转换。顾名思义,就是把模拟信号转换成数字信号。主要包括积分型、逐次逼近型、并行比较型/串并行型、Σ-Δ调制型、电容阵列逐次比较型及压频变换型。A/D转换器是用来通过一定的电路将模拟量转变为数字量。模拟量可以是电压、电流等电信号,也可以是压力、温度、湿度、位移、声音等非电信号。但在A/D转换前,输入到A/D转换器的输入信号必须经各种传感器把各种物理量转换成电压信号。原理A/D转换后,输出的数字信号可以有8位、10位、12位、14位和16位等。A/D转换器的工作原理主要介绍以下三
2021-03-02 16:49:24
5416
原创 增益的概念
1. 什么叫增益放大器增益指bai的是放大倍数的20倍对数表达方式。用L表示增益,A表示放大倍数,则L=20lgA,增益单位叫做分贝,符号dB。对应电压、电流、功率放大倍数,各有电压、电流、功率增益。例,A=10,则L=20lg10=20x1=20分贝(dB)放大倍数A 0.1 1 10 100 1000 10000增益L(dB) -20 0 20 40 60 802.对数...
2021-03-02 16:13:55
6147
原创 module_platform_driver宏解析
宏定义:/* module_platform_driver() - Helper macro for drivers that don't do * anything special in module init/exit. This eliminates a lot of * boilerplate. Each module may only use this macro once, and * calling it replaces module_init() and module_exit
2021-02-20 10:42:02
120
原创 mqtt + json编程学习参考资料
mqtt1.MQTT通信协议(mosquitto)发布订阅例子C语言实现2.mosquitto帮助文档cJSON1.cJSON使用详细教程 | 一个轻量级C语言JSON解析器
2021-02-04 08:12:40
475
转载 linux unzip 命令详解
linux unzip 命令详解功能说明:解压缩zip文件语 法:unzip [-cflptuvz][-agCjLMnoqsVX][-P <密码>][.zip文件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]补充说明:unzip为.zip压缩文件的解压缩程序。参 数:-c 将解压缩的结果显示到屏幕上,并对字符做适当的转换。-f 更新现有的文件。-l 显示压缩文件内所包含的文件。-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但
2021-02-01 10:34:02
818
转载 Cmake知识----编写CMakeLists.txt文件编译C/C++程序
1.CMake编译原理CMake是一种跨平台编译工具,比make更为高级,使用起来要方便得多。CMake主要是编写CMakeLists.txt文件,然后用cmake命令将CMakeLists.txt文件转化为make所需要的makefile文件,最后用make命令编译源码生成可执行程序或共享库(so(shared object))。因此CMake的编译基本就两个步骤:cmakemakecmake 指向CMakeLists.txt所在的目录,例如cmake … 表示CMakeLists.txt在
2021-02-01 10:10:48
233
原创 --build、--host和--target选项
build:自动测试在用平台名称,若无法检测出来则需要指定。host:若无指定,自动使用build的结果。 build和host相同时表示本地编译,若不相同则表示交叉编译。target:表示需要处理的目标平台名称,若无指定使用host相同名称,gcc、binutils等于平台指令相关软件有此参数,多数软件此参数无用处。综合的例子:我们需要在x86下编译一个运行于arm上的编译器gcc,这个gcc产生mips平台的目标代码。那么我们的配置方式是:–build=x86 --host=arm
2021-01-31 21:08:04
2368
原创 mosquitto库(MQTT)移植到ARM
MQTT介绍MQTT(消息队列遥测传输)是ISO 标准(ISO/IEC PRF 20922)下基于发布/订阅范式的消息协议。它工作在 TCP/IP协议族上,是为硬件性能低下的远程设备以及网络状况糟糕的情况下而设计的发布/订阅型消息协议,为此,它需要一个消息中间件 。MQTT是一个基于客户端-服务器的消息发布/订阅传输协议。MQTT协议是轻量、简单、开放和易于实现的,这些特点使它适用范围非常广泛。在很多情况下,包括受限的环境中,如:机器与机器(M2M)通信和物联网(IoT)。其在,通过卫星链路通信传感器、
2021-01-31 20:30:10
1113
转载 linux64平台上编译32位程序: GCC编译选项 -m64 -m32 -mx32
x86-64 与 IA-64x86-64一般称为AMD x86-64,难道x86-64不是Intel首先搞出来的指令集么?这回的确是AMD干的,但是用的是Intel 16bits升到32bits向下兼容的套路。大致是这样的:x86:从1978年来的8086处理器开始,就已经出现了x86架构CPU,即32位处理器。x86-64:又简称为x64,最初开发为1999年AMD,为了扩充IA64。当时的x86-64架构诞生颇有时代意义,处理器的发展遇到了瓶颈,内存寻址空间由于受到32位CPU的限制而只能最大到约
2021-01-31 18:58:49
447
1
转载 UID, EUID, SUID, FSUID
前 言real user ID (uid): 实际用户ID,指的是进程执行者是谁effective user ID (euid): 有效用户ID,指进程执行时对文件的访问权限saved set-user-ID (saved uid): 保存设置用户ID。是进程刚开始执行时,euid的副本。在执行exec调用之后能重新恢复原来的effectiv user ID.上面这三个ID是相对于进程而言的.set-user-ID (suid)/set-group-ID(sgid):设置用户ID,这是相对于文件来
2021-01-23 21:22:13
765
Linux-PAM 1.1.2 中文文档(含应用开发者,模块开发者,系统管理员的指导文档)
2022-05-17
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅