自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

行者三个石的博客

从事嵌入式开发的学习笔记

  • 博客(104)
  • 收藏
  • 关注

转载 以太网MII接口类型大全-MII、RMII、SMII、GMII、RGMII、SGMII、XGMII、XAUI、RXAUI

以太网MII接口类型大全-MII、RMII、SMII、GMII、RGMII、SGMII、XGMII、XAUI、RXAUI

2022-03-15 17:34:07 6371

转载 RS232、RS485、RS422、RJ45接口,终于弄明白了!

原文地址:https://www.sohu.com/a/244903033_649673通讯端口都是串口,在以下几个方面有区别:1、通讯距离RS232口最大通讯距离是15米,而RS422/485最大通讯距离是1200米。2、所连接设备个RS232只能连接一个设备,而RS485可以连接多个设备。3、端口的定义RS232是标准接口,为D形9针头,所连接设备的接口的信号定义是一样的,其信号定义如下:而RS422/RS485为非标准接口,一般为15针串行接口(也有使用9针接口的),每

2021-07-30 22:42:03 62312

转载 Linux系统编程——文件描述符的复制:dup()和dup2()

原文链接:https://blog.csdn.net/tennysonsky/article/details/45870459dup() 和 dup2() 是两个非常有用的系统调用,都是用来复制一个文件的描述符,使新的文件描述符也标识旧的文件描述符所标识的文件。这个过程类似于现实生活中的配钥匙,钥匙相当于文件描述符,锁相当于文件,本来一个钥匙开一把锁,相当于,一个文件描述符对应一个文件,现在,我们去配钥匙,通过旧的钥匙复制了一把新的钥匙,这样的话,旧的钥匙和新的钥匙都能开启这把锁。对比于 dup()

2021-07-20 20:01:11 440

转载 最通俗详细的vlan原理介绍,新手都能看明白

原文地址:https://mp.weixin.qq.com/s/Mnwo7UIRoqsHAUXYMnsn2g1. 什么是VLAN?VLAN(Virtual LAN),翻译成中文是“虚拟局域网”。LAN可以是由少数几台家用计算机构成的网络,也可以是数以百计的计算机构成的企业网络。VLAN所指的LAN特指使用路由器分割的网络——也就是广播域。在此让我们先复习一下广播域的概念。广播域,指的是广播帧(目标MAC地址全部为1)所能传递到的范围,亦即能够直接通信的范围。严格地说,并不仅仅是广播帧,多播帧(M

2021-02-24 17:38:53 2729

转载 数据链路层学习之LLDP

原文地址:https://blog.csdn.net/goodluckwhh/article/details/10948065Table of Contents一、LLDP协议概述二、LLDP结构三、LLDP基本概念1.LLDP帧格式1.1Ethernet II格式封装的LLDP帧1.2 SNAP格式封装的LLDP帧1.3 目地地址2. LLDPDU3. TLV4. 基础TLV集合的TLV定义4.1 End Of LLDPDU TLV4.2 Chas...

2020-08-12 23:24:11 1811

原创 windows10使用ubuntu20.04更改国内镜像源(附其他版本ubuntu换源教程,最新详细教程)

原文地址:https://www.cnblogs.com/lynn-z/p/12874504.htmlwindows10自带ubuntu系统更新到ubuntu20.04版本啦!默认的软件更新源是国外的,速度超级慢,用"apt install"安装软件时各种网络问题也是层出不穷(上次安装ubuntu后忘记修改源结果导致N多次安装半小时然后失败.....亲身经历了这种苦,回过头发现修改源之后很多网络问题迎刃而解),因此我们需要更换成国内镜像源,然后正常安装和更新软件。unbuntu版本名修改源之前提示

2020-06-20 10:49:25 9040 1

原创 网络基础1-OSI参考模型

什么是计算机网络?计算机网络定义:将地理位置不同的终端系统通过网络设备和传输介质,实现网络通信和资源共享。终端系统:可以连接到网络中的终端设备。比如手机,电脑,平板等。网络设备:连接网络的物理实体。比如集线器,交换机,路由器防火墙设备等。传输介质:光,电,电磁波。比如常用的网线(双绞线),近几年普及的光纤,以及无线通信的电磁波等。资源共享:比如百度百科是百度存储在他们的服务器中,所有人都可以通过上网来查询访问,这就实现资源的共享。网络的本质/网络的最根本目的是什么?数据传输...

2020-05-17 19:34:38 923

转载 硬盘基本知识(磁头、磁道、扇区、柱面)

原文地址:https://www.cnblogs.com/jswang/p/9071847.html概述盘片(platter) 磁头(head) 磁道(track) 扇区(sector) 柱面(cylinder)盘片 片面 和 磁头硬盘中一般会有多个盘片组成,每个盘片包含两个面,每个盘面都对应地有一个读/写磁头。受到硬盘整体体积和生产成本的限制,盘片数量都受到限制,一般都在5...

2020-04-14 22:32:04 4519

原创 memcpy和strcpy区别,以及源代码学习

因为自己主要用到得是C语言,所以这里只学习C语言的,C++应该是一样的。常见用法和区别头文件#include<string.h>声明char *strcpy(char* dest,const char* src);void *memcpy(void*dest, const void *src, size_t n);两者区别strcpy只能拷贝字符串。s...

2020-01-07 00:46:47 1349

原创 Linux实现的进度条一(基本知识学习和简单功能)

Linux下经常下载或者升级的时候会有一个进度条,今天学习了下,整理了个笔记,一来为了加深记忆巩固知识,二来方便日后查阅。当然也希望和大家共同学习,一起进步。废话不多说,上效果图:代码:#include <stdio.h>#include <string.h>#include <unistd.h>#define PROGRESS_BAR...

2019-11-18 21:59:24 240

原创 C语言移位操作之增删对应比特位

在实际开发中,常常用移位操作代替乘除法,因为一般情况下:1.从效率上看,使用移位指令有更高的效率,因为移位指令占2个机器周期,而乘除法指令占4个机器周期。2.从硬件上看,移位对硬件更容易实现,所以会用移位,移一位就乘2,这种乘法当然考虑移位了。详细文章可以参考这个博客:https://blog.csdn.net/louxuez/article/details/24434207...

2019-11-10 22:50:33 1136

原创 flash简单介绍

flash是什么?FLASH是一种存储芯片,全名叫Flash EEPROM Memory,通地过程序可以修改数据,即平时所说的“闪存”。我们常说的闪存其实只是一个笼统的称呼,准确地说它是非易失随机访问存储器(NVRAM)的俗称,特点是断电后数据不消失,因此可以作为外部存储器使用。常用的比如U盘,MP3等。闪存也有不同类型,其中主要分为NOR型和NAND型两大类。之所以称为闪存,是因为读写速...

2019-09-08 22:08:00 7769

转载 TCP的三次握手与四次挥手

TCP报文格式序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的编号由本地随机产生;给字节编上序号后,就给每一个报文段指派一个序号;序列号seq就是这个报文段中的第一个字节的数据编号。确认号ack:占4个字节,期待收到对方下一个报文段的第一个数据字节的序号;序列号表示报文段携带数据的第一个字节的编号;而确认号指的是期望接...

2019-05-09 19:16:28 277

原创 C语言字体颜色

c语言下如何输出彩色的字使用格式:样式开始+被修饰字符串+样式结束样式开始:\033[参数1;参数2;参数3 其中参数1,参数2,参数3为可选组合被修饰字符串:需要输出的内容样式结束:\033[参数11.样式开始:\033[参数1;参数2;参数3参数1:代表背景色可选值和含义:字背景颜色范围:40 - 4940:黑41:深红42:绿43:黄色4...

2019-04-06 11:52:07 17746 13

转载 关于帧间距 IFG技术的讨论

原文地址:https://blog.csdn.net/oncoding/article/details/33443781.什么是 IFG?(What) IFG(Interframe Gap),帧间距,以太网相邻两帧之间的时间断;以太网发送方式是一个帧一个帧发送的,帧与帧之间需要间隙,即帧间距IFG也可称其为IPG (Interpacket Gap)。IFG指的是一段时间,不是距离,单...

2019-02-21 10:54:09 2373

原创 C++单例模式

单例模式介绍:单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。举个例子:windows下面的资源管理器就是一个单例。任何时候只能同时打开一个界面,已经打开一个,再点击打开任务管理器...

2019-01-27 18:03:57 298

原创 C++中深拷贝与浅拷贝

简介 浅拷贝同一类型的对象之间可以赋值,使得两个对象的成员变量的值相同,两个对象仍然是独立的两个对象,这种情况被称为浅拷贝.一般情况下,浅拷贝没有任何副作用,但是当类中有指针,并且指针指向动态分配的内存空间,析构函数做了动态内存释放的处理,会导致内存问题。深拷贝当类中有指针,并且此指针有动态分配空间,析构函数做了释放处理,往往需要自定义拷贝构造函数,自行给指针动态分配空间,深拷...

2019-01-10 23:22:48 266

转载 几种常见排序算法原理&C语言实现

原文地址:https://www.cnblogs.com/gonsedup/p/6674822.html一、冒泡排序(以下各法均以从小到大排序为例,定义len为数组array的长度)原理:比较相邻元素的大小,对于每次循环,按排序的规则把最值移向数组的一端,同时循环次数依次减少。 C代码实现写法一: void bubble_sort(int arr[],int len)//从数组...

2019-01-01 20:47:08 462

原创 单个字符获取getchar(),getc(),getch(),getche(),fgetc()函数

getchargetchar由宏实现:#define getchar() getc(stdin)。#include &lt;stdio.h&gt;int getchar( void );#include &lt;stdio.h&gt;int getc( FILE *stream );getchar有一个int型的返回值。当程序调用getchar时.程序就等着用户按键。用户...

2019-01-01 16:50:43 1962

转载 C语言中的二级指针 -- 链表操作

https://blog.csdn.net/jasonchen_gbd/article/details/45276629总结:其实链表使用二级指针的好处就是,不管是头插尾插等操作后,链表的根节点地址不需要改变。如果链表是全局变量,那么就不用操作链表后返回该链表的根节点地址。直接访问全局的根节点地址就可以访问整个链表。一个链表中所有元素通过指针串联起来,链表的插入、删除等操作都是对指针的操作...

2018-12-26 20:52:19 1199

转载 C语言中结构体用等号“=”直接赋值的讨论

原文地址:https://blog.csdn.net/hazir/article/details/9429017今天帮师姐调一个程序的BUG,师姐的程序中有个结构体直接赋值的语句,在我印象中结构体好像是不能直接赋值的,正如数组不能直接赋值那样,我怀疑这个地方有问题,但最后证明并不是这个问题。那么就总结一下C语言中结构体赋值的问题吧:结构体直接赋值的实现下面是一个实例:#include...

2018-12-25 20:11:24 21773

原创 C语言单链表的实现(增删改查)

 链表的基础可以参考:https://blog.csdn.net/morixinguan/article/details/68951912或者参考:https://blog.csdn.net/Hackbuteer1/article/details/6591486 说明:这篇文章是自己理解然后熟悉时的学习笔记,主要记录实现过程中的代码笔记,以备日后快速查询,仅供参考:#incl...

2018-12-13 22:30:48 11114 1

原创 win10下使用Linux(ubuntu18.04)

最近发现win10有一个非常好用的东西,可以在win10下直接使用的的Linux的了,就像使用win10里的软件一样,不用再装虚拟机,买什么阿里云腾讯云的服务器了,使用了一周,体验还不错,整理了下,分享给大家。内容包括:1.win10子系统的的Linux的安装(Ubutu18.04,其他的类似)2.ubuntu18.04图形界面的安装3.部分使用介绍3.1文件目录在win10文...

2018-12-08 17:22:27 2773 2

原创 C语言字符串高级处理(三)strspn,strcspn,strtok

高级字符串查找strspn():函数返回字符串STR1中第一个不包含于字符串STR2的字符的索引或者理解为STR1包含STR2任一字符的字符长度。strcspn():函数返回STR1开头连续Ñ个字符都不含字符串STR2内字符的字符数或者理解为STR1不包含STR2任一字符的字符长度。的的strtok():函数返回字符串STR1中紧接“标记”的部分的指针,字符串STR2是作为标记的分隔符...

2018-12-08 15:19:36 527

原创 C语言字符和字符串处理函数(二)strchr,strpbrk,strstr

查找字符或者字符串查找一个字符:和和和strchr()。函数返回一个指向STR中CH首次出现的位置,当没有在STR中找CH就报道查看NULL。查找任意字符:strpbrk() 函数返回一个指针,它指向字符串STR2中任意字符在字符串STR1首次出现的位置,如果不存在返回NULL。查找一个子串:的的的strstr()  函数返回一个指针,它指向字符串str2中的中首次出现于字...

2018-12-08 14:34:00 575

原创 C语言字符串处理基础函数(一)

1.strlen()函数功能:函数返回字符串str 的长度( 即空值结束符之前字符数目,不包括控制结束符)。语法: #include &lt;string.h&gt; size_t strlen( char *str );例子:#include &lt;stdio.h&gt;#include &lt;string.h&gt;int main(){ char *...

2018-12-04 23:07:22 253

原创 自己实现的printf函数

根据上一篇中的  《可变参数列表(非格式化控制)》,今天继续学习:自己写一个函数实现printf功能。1.自己实现的printf函数#include &lt;stdio.h&gt;#include &lt;stdarg.h&gt;void my_printf(const char *str,...){ va_list var; char c = 0; unsigned ...

2018-12-03 20:54:25 2597 5

原创 去掉ubuntu命令行模式提示声

安装ubuntu18.04后,用xshell连接后,按Tab键总是有提示声很烦。修改/etc/inputrc去掉 #set bell-style none 的 # ,保存,重启。这个方法终端中的提示声可以去掉。修改成下面的配置vi、vim里的提示声参照https://blog.csdn.net/topasstem8/article/details/6452393...

2018-12-02 21:06:18 896

转载 C语言可变长参数函数与默认参数提升

学习本章内容的时候,首先需要知道可变参数提升相关的知识。原文地址:https://blog.csdn.net/astrotycoon/article/details/82845011、概述C标准中有一个默认参数提升(default argument promotions)规则。默认参数提升有时会给我们带来疑惑。本文结合C语言的可变长参数函数来说明默认参数提升存在的陷阱。2、默认参数提升的...

2018-12-01 22:26:50 789

原创 stdarg.h可变参数列表(非格式控制)

1.C语言也存在可变参数的概念最常见的就是scanf和printf函数:int scanf(const char * restrict format,...);int printf(const char *fmt, ...);你可以输入任意类型的任意个参数,但是必须在格式化字符串中确定输入参数的个数和类型。那么我们如何自定义可变参数函数呢?就需要使用stdarg.h头文件了。std...

2018-12-01 22:12:29 471

转载 内存分配方式详解(堆、栈、自由存储区、全局/静态存储区和常量存储区)

原文地址:https://blog.csdn.net/u013007900/article/details/79338653参考文章:http://www.cnblogs.com/hanyonglu/archive/2011/04/12/2014212.html一、数据结构中的栈和堆虽说我们经常把堆栈放在一起称呼,但是不可否认的是,堆栈实际上是两种数据结构:堆和栈。堆和栈都是一种数据项按序...

2018-12-01 00:36:30 10993 2

原创 C语言指针作为函数参数传递学习(一)

1. 数组或者一维指针做函数形参1.1传入的指针为NULL比如下面的例子,很多人都会理解错:#include &amp;lt;stdio.h&amp;gt;void test(char *string){ string = &quot;hello world&quot;;}int main(){ char *str = NULL; test(str); printf(&quot;str=%s\n&quot;,str); ...

2018-12-01 00:18:34 43000 19

原创 RIB表与FIB表、ARP表与FDB表

1.RIB与FIB的区别:RIB:路由表FIB:转发信息表FIB表更多是出现在需要快速转发的路由器上,这种路由器上的路由表条目通常都达成千上万条,如果按照传统的检索路由表进行转发的方式,其转发效率很低,FIB表作为路由表的一种精简形式出现,通常只记录常用的表项。当需要选路时,先检索FIB表,如果找不到再检索路由表。在大部分路由器中,RIB表现为路由表的形式, FIB则表现为高速缓存的形式,...

2018-11-26 10:05:22 3941

转载 波特率与比特率

转载  原文地址:https://blog.csdn.net/ymdq1113/article/details/69677116 波特率与比特率自己理解了之后写个记录,如果有错,欢迎指正。1.比特率比特率顾名思义,是单位时间内传输了多少位(比特),单位是bit/s。波特率并不是比特率,只是有时候和比特率正好相等而已。2.编码要理解波特率,就要知道编码(调制)。举个简单的例子...

2018-11-04 18:02:14 739

原创 Linux中的动态库和静态库(.a.la.so.o)

​ Linux中的动态库和静态库(.a/.la/.so/.o)原文地址:https://www.cnblogs.com/findumars/p/5421910.html在windows下,一般可以通过文件的后缀名来识别文件的类型。在Linux下大致上也是可以的。但是要明确的一点是,在linux下,文件的后缀与文件的类型是没有必然的联系的。这只是约定俗称的习惯罢了。在lin...

2018-04-21 23:58:33 19917 1

原创 makefile总结

Makefile 使用总结原文地址:https://www.cnblogs.com/wang_yb/p/3990952.html 1. Makefile 简介Makefile 是和 make 命令一起配合使用的.很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很多项目中各种库和代码之间的依赖关系不知会多复杂.Makefile的组织...

2018-04-16 22:14:00 211

原创 centos中echo和printf命令

centos中echo和printf命令1.echo后面的内容直接当做打印信息输出到终端1.1 echo 输出信息不带冒号[yl@centos ~]$ echo 输出信息不带冒号 输出信息不带冒号1.2 echo “输出的信息带冒号”[yl@centos ~]$ echo “输出的信息带冒号” 输出的信息带冒号1.3 echo $(pwd)[yl...

2018-04-15 19:56:46 9227 1

原创 date命令

Linux date命令1.date命令man手册说明DATE(1) FSF DATE(1)NAME date -...

2018-04-15 18:53:52 1119

转载 Centos 修改当前路径显示为全路径

原文地址:https://blog.csdn.net/u014729808/article/details/79714581注意:需要root权限 Centos 修改当前路径显示为全路径 修改/etc/bashrc [ “PS1"&nbsp;=&nbsp;"\\s-\\v\\\$&nbsp;"&nbsp;]&nbsp;&amp;&amp;&nbsp;PS1="[\u@\h&nbsp;\W

2018-04-15 13:38:50 1880

原创 关于Linux编译时的路径一些说明

关于Linux编译时的路径一些说明如果源文件(.c)和头文件(.h)在同一个目录那么就直接包含使用头文件时,就直接包含就行了,不需要路径的说明举例:比如现在有main.c,test.c,test.h三个文件,且都在同一个目录/home/user/code下test.h声明了test.c中的函数main.c需要使用test.c中的函数/*main.c文件*/#i...

2018-04-15 13:35:37 1215

空空如也

空空如也

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

TA关注的人

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