自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 USB理论学习之五-----USB主机协议简介

USB主机协议简介 USB开发分为: USB外设开发 USB核心驱动程序和USB主控制器驱动程序开发-----USB系统软件 USB工业标准: 通用式主机控制器接口(UHCI) 开放式主机控制器接口(OHCI) 上述两者均有主机控制器和主机控制器驱动程序组成 主机控制器----面向硬件部分及生产厂商,规定接口,处理各种USB事务的各种功能模块以及给用户使...

2019-02-27 15:22:39 937

原创 USB理论学习之四-----USB数据通信结构

一、协议简介1.主要内容:USB整体通信模型:星型拓扑(以USB主机为核心,建立USB主机与USB设备之间的数据通信),机械层,电气层;USB数据通信协议:以差模串行信号为载体传送二进制代码来传输信号;数据包作为最基本的完整信息单元,包含了一系列数据信息;软硬件结构:包括主机、Hub与设备架构;主机与设备通信流程、步骤;软硬件设计的方法等2.结构概况包:令牌包、握手...

2019-02-19 15:25:08 823

原创 c++程序编译时报"field has incomplete type"问题

在网上找了一下原因,类或结构体的前向声明只能用来定义指针对象或引用,因为编译到这里时还没有发现定义,不知道该类或者结构的内部成员,没有办法具体的构造一个对象,所以会报错。 将类成员改成指针就好了。 程序中使用incomplete type实现前置声明有助与实现数据的隐藏。要求调用对象的程序段只能使用声明对象的引用或者指针。在显式声明异常规范的时候不能使用incomplete type。...

2019-01-11 14:40:14 10294

原创 USB理论学习之三-----设备级USB系统和USB拓扑结构

一、设备级USB系统1.USB Hub提供USB的连接端口,Hub就是能将多个连接线集中在一起的设备USB的体系允许多个Hub之间进行互连 上行端口:用于连接上一级Hub或根Hub下行端口:用于连接下级Hub或USB设备 通过检测USB电缆上的电平变化,USB Hub可以检测出下行端口上USB设备的接入或者移出,同时可以确定设备的速度类型,如低速或者是全速设备 ...

2019-01-08 16:28:55 1551

原创 USB理论学习之二-----基于PC的USB系统

一、PC上的USB系统组成部分硬件:完成物理上的接口和实体功能软件:与操作系统配合管理硬件,完成数据流传输由上图可知PC上的USB主机包含三个部分: USB主控制器/根Hub USB系统软件 用户软件 1).USB主控制器/根Huba.PC硬件,由USB主控制器芯片、USB Hub控制器芯片、USB端口连接件及控制器外围电路等组成;b.USB主控制器提...

2019-01-08 15:52:04 311

原创 USB理论学习之一-----USB的特点及关键字

一、USB特点1.即插即用1)热插拔2)PC对插入的USB设备进行自动识别,甚至对HID设备进行驱动自动安装 2.广泛软硬件支持 3.低功耗1)电气层机制2)自供电和总线供电(不需要任何外接电源) 4.多种速度模式1)低速模式1.5Mbps,适合如键盘、鼠标等对传输速度要求不高但是要求成本低的设备;2)全速模式12Mbps,适合工业和嵌入式领域的...

2019-01-08 11:47:14 995

原创 Ubuntu 在登录用户界面输入正确密码类似于复位重复让我继续输入密码,进不去,已解决

在操作ubuntu操作系统的时候,我切换了tty到命令行界面(CTRL+ATL+F1),然后按startx切换回图形界面,就发生了如上述题目的情况解决:在尝试了网上的各种方法,如:1.清理系统sudo apt-get autoremove 2.重装桌面sudo apt-get install ubuntu-desktop 3.删除隐藏文件(可以解决问题)sudo r...

2019-01-05 15:57:08 1430

原创 面试常客3---变量存储区划清界限

全局初始化变量:数据段全局未初始化变量:数据段(BSS)全局的、静态的(static)、初始化的变量:数据段全局的、静态的、未初始化变量:数据段全局的常量(const):代码段 局部初始化的变量:栈局部未初始化变量:栈局部的、静态的、初始化变量:数据段局部的、静态的、未初始化变量:数据段局部常量:栈 在C语言的程序中,对变量的使用还有以下几点需要注意...

2018-12-14 16:35:58 138

原创 面试常客2---sizeof和strlen的前世今生

char str[20]="0123456789"; int   a=strlen(str); /*a=10;strlen 计算字符串的长度,以\0'为字符串结束标记。 int   b=sizeof(str); /*b=20;sizeof 计算的则是分配的数组str[20] 所占的内存空间的大小,不受里面存储的内容影响 总之,对于指针,sizeof操作符返回这个指针占的空间,一般是...

2018-12-14 16:32:04 124

原创 面试常客1---常见特殊结构的大小

结构体:struct unknown {    int a;    char b;    int c;    long d;    char e;};printf("%lu\n", sizeof(struct unknown)); //output : 32 1、遇到第一个成员变量a,该成员偏移量为0,大小为4,符合偏移规则第一条。2、接下来第二个成员变...

2018-12-14 16:30:36 88

转载 c++primer第五版答案

本文转自:https://blog.csdn.net/misayaaaaa/article/details/53786215第一章 全部题目(第一章基础较多)http://blog.csdn.net/misayaaaaa/article/details/53200001第二章1~10题:http://blog.csdn.net/misayaaaaa/article/detail...

2018-12-12 09:26:58 376

转载 makefile总结

在学习makefile的时候找到这一篇文章,觉得里面分析得很详细,总结得很全面,就记录下来了。附上作者的原文链接:http://www.cnblogs.com/wang_yb/p/3990952.html 1. Makefile 简介Makefile 是和 make 命令一起配合使用的.很多大型项目的编译都是通过 Makefile 来组织的, 如果没有 Makefile, 那很...

2018-12-11 16:25:05 110

转载 makefile中的VPATH

通常程序并不只存放在同一个目录下,例如:├── include│   ├── bar.h│   └── foo.h├── Makefile└── src    ├── bar.c    ├── foo.c    └── main.c代码分别如下:/* bar.h */#ifndef __BAR_H#define __BAR_H extern void bar(void)...

2018-12-11 16:21:45 3755 2

转载 RTP协议分析

转自http://blog.csdn.net/chen495810242/article/details/392073051、RTP 分析 (1)IP是属于网络层部分的,UDP和RTP都是属于传输层部分的。(2)RTP首部 1)        V:RTP协议的版本号,占2位,当前协议版本号为22)        P:填充标志,占1位,如果P=1,则在该报文的尾部填充...

2018-09-11 15:15:22 324

转载 互斥量和信号量的理解

互斥量(Mutex) 互斥量表现互斥现象的数据结构,也被当作二元信号灯。一个互斥基本上是一个多任务敏感的二元信号,它能用作同步多任务的行为,它常用作保护从中断来的临界段代码并且在共享同步使用的资源。 Mutex本质上说就是一把锁,提供对资源的独占访问,所以Mutex主要的作用是用于互斥。Mutex对象的值,只有0和1两个值。这两个值也分别代表了Mutex的两种状态。值为0, 表...

2018-07-29 15:59:56 2898

转载 关于问题 mysql"Access denied for user root@localhost" 的解决办法

1.问题来源:  最近由LAMP转到LNMP,初次使用LNMP,为了快速入门,直接安装LNMP组合安装包。  当启动mysql数据库时,出现如下的错误信息  ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)2.问题分析  错误信息的大意是:用户root没有使用密码访问localhos...

2018-05-02 17:02:51 192

原创 xxx is not the sudoers files.解决办法

1.切换到root用户2.运行visudo3.在文件里面找到root  ALL=(ALL)  ALL4.在该行下面添加一行:    XXX   ALL=(ALL)  ALL这样便可以解决普通用户对sudo使用的问题,XXX表示用户名...

2018-03-19 16:10:26 603

转载 更新顺序文件

  许多系统中的标准输入/输出库都允许程序打开一个文件,同时进行写入和读出的操作:  FILE *fp; fp = fopen(file, "r+"); 上面的例子代码打开了文件名由变量file指定的文件,对于存取权限的设定表明程序希望对这个文件进行输入和输出操作。  编程者也许认为,程序一旦执行上述操作完毕,就可以自由地交错进行读出和写入操作。遗憾的是,事实总难随人所愿,为了保持与过去不能同时进...

2018-02-11 14:06:49 243

原创 操作系统自学笔记(第一至二章)

第一章: OS作为用户与计算机系统之间的的接口,通信方式:命令方式、系统调用、图标-窗口 软硬件资源:处理机、存储器、IO设备、文件 硬件->物理接口->IO软件->文件操作->窗口 OS的基本特性:并发、引入进程、共享、虚拟、异步 OS的主要功能: 处理机:进程控制、进程同步(互斥与同步)、进程通信、调度 存储器:内存分配和回收、内存保护、地址

2018-02-04 20:43:04 424

原创 shell自学笔记

#! xxxx    》》指定脚本的运行环境#xxxx为注释echo:把其参数传递给标准输出,若是字符串的话需要用双引号把它包含起来-n:不换行输出需要给文件赋值权限才能运行$:存取变量时需要的字符如:echo $logps:变量只在该脚本有效source shell脚本文件:强行让一个脚本影响其父shell环境(变量在shell中可见)

2018-02-02 16:17:56 191

转载 关于帧指针和栈指针的定义

关于栈帧结构,先引用网上的一张图:栈的增长方向是向下的。栈有个最大地址,这个地址成为栈底,也是存储栈里面存储第一个元素的位置,随着入栈个数增加,栈顶的地址不断减小。esp寄存器就是专门用来存储栈顶地址的,而栈指针便指向栈顶。函数调用时的内存布局:|-----参数----------||---返回地址--------||

2018-02-01 10:46:07 2514

转载 字符串指针问题

#includevoid copy(char *x,char *y){ for(;*y!='\0';x++,y++) *x=*y; *x='\0'; printf("%s\n",a);}int main(){ char *a="Hello!"; char *b="World!"; copy(a,b); return

2018-01-31 17:09:41 187

转载 void *指针的用法特点

指针有两个属性:指向变量/对象的地址和长度 但是指针只存储地址,长度则取决于指针的类型 编译器根据指针的类型从指针指向的地址向后寻址 指针类型不同则寻址范围也不同,比如: int*从指定地址向后寻找4字节作为变量的存储单元 double*从指定地址向后寻找8字节作为变量的存储单元 1.void指针是一种特别的指针    void *vp    //说它特别是因为

2018-01-31 16:25:53 210

空空如也

空空如也

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

TA关注的人

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