自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(33)
  • 资源 (13)
  • 收藏
  • 关注

转载 累加和校验算法  CheckSum算法

累加和校验算法 CheckSum算法因为外界总会对电路存在或多或少的干扰,对于数字信号,很可能导致传输的数据出现千差万别。对于很多需要传输数据的场合,尤其是一些数据可能会影响一些硬件的动作(诸如嵌入式的一些设备、机器人等),错误的数据可能会带来一些隐性风险今日主角:累加和校验算法,又名CheckSum算法这种算法的实现:发送方:对数据累加,得到一个数据和,对和求反,即得到我们的校...

2019-03-22 16:12:10 9230

原创 UDP协议一次发送的最大数据量分析

一、从MTU角度看   在进行UDP编程的时候,我们最容易想到的问题就是,一次发送多少bytes好?当然,这个没有唯一答案,相对于不同的系统,不同的要求,其得到的答案是不一样的。   首先,我们知道,TCP/IP通常被认为是一个四层协议系统,包括链路层,网络层,运输层,应用层.   UDP属于运输层,下面我们由下至上一步一步来看:   以太网(Ethernet)数据帧的长度必须

2017-10-17 17:15:42 16636

原创 iftop 监控网卡实时流量

在Linux中,top命令可以查看一些资源情况,cpu 内存等,还能看到是谁消耗内存或cpu,但有些情况发现cpu 内存不吃紧,服务器依然很慢我们需要从其他角度分析问题,就是流量统计,接下来我们介绍iftop工具iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等iftop界面相关说明界面上面显示的是类似刻度尺的刻度范围,为显示

2017-10-13 14:15:06 2745

原创 ubuntu软件菜单栏不见了怎么办

ctrl+alt+F1 进命令行,登入后输入 sudo service lightdm restart 重启 lightdm。如果上面的不行的话就重装 unity,依次输入:sudo apt-get updatesudo apt-get install --reinstall ubuntu-desktopsudo apt-get install unity

2017-10-09 14:24:51 1846

原创 shell变量(字符串)间的拼接

对于变量或者字符串的连接,shell提供了相当简单的做法直接放到一起或用双引号即可。例如$a, $b,有c=$a$bc=$a"xyz"$bc=$a$b.txt

2017-09-22 10:27:16 81770

原创 mygetline 实现

#include #include #include ssize_t mygetline(char **lineptr, size_t *n, FILE *stream){if(*lineptr==NULL){*n=50;*lineptr=malloc(*n);}int ch;int i=0;while(1){ch=fgetc(stream);if(ch==EOF)return -1;if(i >

2017-08-31 18:13:07 590

原创 LCD6210字符型液晶显示器 (2)

实例首先在第一行显示“I love MCU!”,第二行显示“LCD1602 Test!”。延时一段时间,清屏。然后在第一行显示“Welcome to my lcd6210!”,显示方式是从屏幕右面移入,左面移出。周而复始#include#includetypedef unsigned int u16;typedef unsigned char u8;#define DA

2017-08-15 15:25:32 503

原创 LCD6210字符型液晶显示器 (1)

LCD1602接口LCD1602是很多单片机爱好者较早接触的字符型液晶显示器,它的主控芯片是HD44780或者其它兼容芯片LCD12864液晶显示器,它是一种图形点阵显示器,能显示的内容比LCD1602要丰富得多,除了普通字符外,还可以显示点阵图案,带有汉字库的还可以显示汉字,它的并行驱动方式与LCD1602相差无几  它的16条引脚定义如下: *VSS:电源地信号引脚

2017-08-15 15:21:06 4413

原创 开源项目url

Open source MQTT client (https://github.com/eclipse/paho.mqtt.c)Open source JSON command parser (https://github.com/DaveGamble/cJSON)

2017-05-27 16:28:05 464

原创 MQTT

MQTT简介MQTT全称叫做Message Queuing Telemetry Transport,意为消息队列遥测传输,是IBM开发的一个即时通讯协议。由于其维护一个长连接以轻量级低消耗著称,所以常用于移动端消息推送服务开发。MQTT特性MQTT具有如下特性:使用发布/订阅消息模式,提供一对多消息发布;对负载内容屏蔽的消息传输;使用

2017-05-27 16:24:10 550

原创 CSMA/CD

CSMA/CD(Carrier Sense Multiple Access/Collision Detect)即载波监听多路访问/冲突检测机制。在传统的共享以太网中,所有的节点共享传输介质。如何保证传输介质有序、高效地为许多节点提供传输服务,就是以太网的介质访问控制协议要解决的问题。CSMA/CD是英文carrier sense multiple access/collisio

2017-05-27 11:26:00 1092

原创 多路访问控制(MAC )协议

多路访问控制(MAC Multiple Access Control Protocol)协议有3大类1. 信道划分的MAC协议:时间(TDMA)、频分多址(FDMA)、码片(CDMA)划分在传统的无线电广播中,均采用频分多址(FDMA  )方式,每个广播信道都有一个频点,如果你要收听某一广播信道,则必须把你的收音机调谐到这一频点上

2017-05-27 10:12:54 2299 3

原创 Linux环境下耗尽cpu占用率的脚本

一行命令让CPU占用率达到100%for i in `seq 1 $(cat /proc/cpuinfo |grep "physical id" |wc -l)`; do dd if=/dev/zero of=/dev/null & done说明:cat /proc/cpuinfo |grep "physical id" | wc -l 可以获得CPU的个数, 我们将其

2017-05-02 15:30:21 10006 2

原创 find 的详细使用

find=========================(1)列出文件路径--------------------$>find$>find /home/test列出当前或给定目录下所有文件的绝对路径,包括目录(2)-name/-iname--------------------$>find /home/test -name *.c列出所有后缀为.c

2017-04-14 18:23:01 225

原创 ubuntu下安装配置tftp

安装tftpapt-get install tftp-hpa tftpd-hpa建立传输目录mkdir /tftpboot获取权限chmod 777 /tftpboot修改配置文件vi /etc/default/tftpd-hpa3  1 # /etc/default/tftpd-hpa

2017-02-28 17:16:56 257

原创 SSHD服务的搭建及使用

SSHD服务的搭建 SecureShell         远程控制主机                  SecureCRT客户端                   sshd安装 sudo apt install openssh-server         客户端访问服务端                  打开SecureCRT

2017-02-06 10:28:57 554

原创 Samba 服务器的配置使用

Samba 服务器的配置使用1.sudo vim /etc/init.d/smb.conf 添加 261[Lhd_Share] 262 comment = MY samba Share 263 path = /mnt/hgfs/pro 264 browseable

2017-02-06 10:24:16 209

原创 SNMP网络管理协议

网络管理系统的组成1. 被管理节点(设备)--被监视的设备2. 网络管理代理      ---是驻留在网络设备中的软件模块,对来自管理站的信息查询 和 动作执行 的请求作出响应, 主动向管理站提供一些重要的非请求信息3. 网络管理工作站    ---信息的接收点,指令的发送点(与在不同的被管理节点中的代理进行通信,并显示这些代理状态的中心设备)4.网络管理协议       ----

2017-02-06 09:27:09 4970

原创 NFS的安装配置

网络文件系统是一种将远程主机上的分区(目录)通过网络挂在到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像操作本地分区一样 对远程主机的共享分区(目录)进行操作。在嵌入式Linux的开发过程中,开发者需要在Linux服务器上进行所有的软件开发,交叉编译后,通过FTP方式将可执行文件下载到开发板中运行,但这种方式不但效率低下,而且无法实现在线的调试。因此,

2017-01-22 15:36:22 219

原创 linux 硬链接 软链接

Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)即软链接。默认情况下,ln命令产生硬链接。ln   -s   f1   f3  #创建 f1 文件的软链接 f3ln   f1   f2        #创建f1 文件的硬链接文件 f2ls -li                # -i参数显示文件的inode节

2017-01-20 17:19:48 724

原创 vi 使用

常用的vim使用技巧============================================ 1.关于搜索 /: 后面跟要查找的东西,在文件中向前搜索 ?: 后面跟要查找的东西,在文件中向后搜索 n: 向前重复搜索 N: 向后重复搜索============================================ 2.关于移动

2017-01-20 11:35:21 207

转载 usb的pid和vid

根据USB 规范的规定,所有的USB设备都有供应商ID(VID )和产品识别码(PID ),主机通过不同的VID和PID来区别不同的设备,VID和PID都是两个字节长,其中,供应商ID(VID)由供应商向USB执行论坛申请,每个供应商的VID是唯一的,PID由供应商自行决定。   VID和PID通常情况下有两种存储方式,第一种是主控生产商的VID和PID,存储在主控的bootcode中;第

2016-10-27 18:38:25 894

原创 brctl使用

# brctl addbr br0  (建立一个逻辑网段,名称为br0) 建立一个逻辑网段之后,我们还需要为这个网段分配特定的端口。在Linux中,一个端口实际上就是一个物理网卡。而每个物理网卡的名称则分别为eth1,eth2。我们需要把每个网卡一一和br0这个网段联系起来,作为br0中的一个端口。# brctl addif br0 eth1   (让eth1成为br0的一个端口)

2016-10-27 16:27:33 2466

原创 内存泄漏与内存溢出的区别

内存溢出 out of memory,是指程序在申请内存时,没有足够的内存空间供其使用,出现out of memory;比如申请了一个integer,但给它存了long才能存下的数,那就是内存溢出。内存泄露 memory leak,是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但内存泄露堆积后果很严重,无论多少内存,迟早会被占光。memory leak会

2016-09-23 10:00:17 220

原创 dkpg命令的用法

安装软件命令行:dpkg -i 示例:dpkg -i avg71flm_r28-1_i386.deb显示所有已经安装的Deb包,同时显示版本号以及简短说明命令行:dpkg -l显示一个包安装到系统里面的文件目录信息命令行:dpkg -L package-Namedpkg -L samba

2016-09-09 10:05:19 1080

原创 在picocom中使用tftp操作文件

在windows下安装tftp服务器udhcpc 命令使板子重新获取ip在picocom中输入tftp# tftpBusyBox v1.22.1 (2014-08-21 15:41:18 CST) multi-call binary.Usage: tftp [OPTIONS] HOST [PORT]Transfer a file from/to tftp server

2016-09-08 14:22:54 1876

原创 串口调试工具picocom

串口调试工具picocom安装(ubuntu下):$ sudo apt-get install picocom使用:$ picocom -b 115200 /dev/ttyUSB0(/dev/ttyUSB0 为串口设备文件,如果用的不是USB转串口,则为 /dev/ttyS*)(可以设置一个别名,如 alias pc='picocom -b 115200 /

2016-09-08 14:21:10 3511

原创 Ubuntu 在右键快捷菜单中添加“Open in Terminal”

Ubuntu12.04 在右键快捷菜单中添加“Open in Terminal”解决方案:1.打开一个Terminal(ctrl+alt+t),输入如下指令  sudo apt-get install nautilus-open-terminal2.使用以下指令来重启Nautilus  nautilus -q3.在任意位置,右键鼠标就可以看到Open

2016-09-08 14:14:43 1232

原创 RSA

服务器版本控制是Git,下载服务器端代码需要RSAusr@pc1:~$ ssh-keygen -t rsa//将.ssh/id_rsa.pub复制到(存放目录dir)中usr@pc1:~$ cp  .ssh/id_rsa.pub  存放目录

2016-09-08 14:12:23 210

原创 交叉编译工具执行时候出现错误

安装交叉编译工具执行arm-linux-gcc test.c -o test时候出现错误在linux下运行程序时,发现了error while loading shared libraries这种错误./tests: error while loading shared libraries: xxx.so.0:cannot open shared object file: No s

2016-09-08 13:56:13 870

原创 snprintf函数的使用

#include int snprintf(char *str, size_t size, const char *format, ...); Return value       Upon successful return, these functions return the number of characters printed (excluding the nu

2016-09-08 10:45:52 443

原创 Ubuntu下键盘输入错乱问题,输入双引号输出的是@符号,输入#号输出的是未知语言的字符

装完搜狗后,键盘开始出现混乱,切换到英文输入法,输入双引号输出的是@符号,输入#号输出的是未知语言的字符。网上有的说在 system - keyboard - Input Source 下看看是否是非英语系国家的键盘布局。我把Chinese键盘删了,单独试过US,又试过UK的键盘布局,问题依旧。于是到 Fcitx Configuration 查看(如果你安装过fcitx

2016-08-26 11:42:05 5861 3

原创 Makefile 选项 CFLAGS LDFLAGS LIBS

CFLAGS的作用  1. 指定头文件(.h文件)的路径,如:CFLAGS=-I/usr/include -I/path/include          2. 编译选项  如: CFLAGS := -Wall -DDEBUG -DUSE_TEST_FILELDFLAGS:      1. gcc 等编译器会用到的一些优化参数,      2. 指定库文

2016-08-25 18:47:48 955

mosquitto 源码

一款实现了消息推送协议 MQTT v3.1 的开源消息代理软件,提供轻量级的,支持可发布/可订阅的的消息推送模式,使设备对设备之间的短消息通信变得简单,比如现在应用广泛的低功耗传感器,手机、嵌入式计算机、微型控制器等移动设备

2018-12-06

mqtt client 代码

简单实现了mqtt 发布端和订阅端的功能 mqtt_pub 发布端 mqtt_sub 订阅端

2018-12-06

iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等

iftop可以用来监控网卡的实时流量(可以指定网段)、反向解析IP、显示端口信息等

2018-01-09

netfilter/iptables(简称为iptables)

netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。

2018-01-09

gerrit服务器搭建

gerrit服务器搭建,网上很多教程介绍的都不详细。为了自己和别人不再为搭建gerrit烦恼,特来分享

2018-01-09

shell学习笔记-2018-01-09

根据网易云课堂中shell教学视频,记录的学习笔记 方便自己回忆总结

2018-01-09

android源代码app通过蓝牙与蓝牙led灯通信,实现控制

此android源代码实现了通过蓝牙设备扫描,蓝牙连接,与拥有蓝牙模块的led灯通信,实现蓝牙控制。 共享给对蓝牙控制有兴趣的朋友

2017-09-29

Git 学习记录

网易云课堂小甲鱼Git教学视频记录的学习笔记,分享给大家

2017-09-29

shell学习笔记

根据网易云课堂中shell教学视频,记录的学习笔记 方便自己回忆总结

2017-09-29

ugw log日志上传-shell脚本_curl

ugw系统运行过程会生成大量的log,包括pad log , Mcafee log , Hub log. 为了方便后期问题分析,需上传到服务器。 上传策略是 pad log 每1小时收集一次,每12小时上传全部logs。 1. 使用curl实现,返回值如下{"code":"0","file_name":"static/lxw/test/1000004/ugw_028d3640aae5_20170928170415_log.tar.gz"}200

2017-09-29

ugw系统中的 brctl源码包

处理器GRX350,系统 UGW7.2 :用于智能家居网关 为了方便brctl的学习,上传了UGW系统包dl目录中的brctl源码包

2017-09-22

嵌入式系统设计师教程

嵌入式系统设计师教程 软考必备

2017-06-23

Android应用开发揭秘

一本适合有开发基础的Android开发资料

2014-09-19

空空如也

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

TA关注的人

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