有意思,USB资料分享

前几天,有个同学在微信问我 「发哥,能不能给我分享一些USB的资料吗?

-- 然后就有了今天的文章。

我对USB印象很深,源于两个事情

第一件事情是,我有一个大学同学,他的名字里面有一个「发」字,我们同学叫他发哥,因为我的名字里面也有一个「发」,大家就叫我做小发哥,但是因为我还有一个别称「郁闷」,所以有的人会叫我「闷哥」。

发哥在大学的时候也是Linux学习爱好者,当时他的桌面上就有一本书《Linux那些事之我是USB》,他每天都拿着这本书,当时我们一起在创新基地学习,发哥每天用他的车驮着这本书来回于宿舍和创新基地之间,有一次还因为开车不注意撞到了一个妹子。

毕业后,发哥凭借着在书中学到的技术知识,拿到了九州电器的Offer,这家企业大家可以查一下,做路由器的,规模还可以,做路由器的龙头是同洲电子,但是后来同洲电子突然就倒下了。

拿到offer之后,发哥来深圳实习,可能因为不喜欢深圳的环境,又或者是深圳的妹子没有吸引到发哥,发哥回学校后下功夫考事业编制,后面就考进了北海的一家保险公司,经过这些年的磨练,以及从《Linux那些事之我是USB》书籍中学到的技术知识,发哥现在已经晋升为公司中层,我有时候开玩笑说,能不能给我物色个职位让我去北海打打酱油之类的。

后来,发哥因为拿到了北海的offer,就把那本《Linux那些事之我是USB》送给了我,但是这些年来,我一直没怎么翻看,因为每次看到这本书,我总是能想起发哥挑灯夜读,苦练技术的情形,睹物思人估计就是这样子吧。

Linux usb设备模型

第二件事是,参加校招的时候,在桂电的一个教室,我和另一个桂电的同学同时参加面试,那位同学的面试的时候,跟面试官说自己做了一个U盘,然后就在现场演示了他的U盘,当从电脑里看到USB图标,还可以从电脑里看到USB盘符,我是很惊讶的,当打开U盘看到里面的周杰伦歌曲,我觉得更加兴奋了。

这个做法大家可以借鉴一下,面试的时候带上自己的小作品,同时也应该注意下,一个作品,要向一个产品靠拢,为什么乔布斯的手机出来后会如此惊艳,我第一感觉就是足够的小,如果现场演示遥控赛车,或者一些数控开关,或者一个开发板项目,我都会觉得是比较掉分的。现场的项目,最好轻巧,便于你携带,上电方便的,如果不便于携带的,可以做成视频,加上文字和音频讲解,那样可能会更好。

后面我和这位同学都拿到了这家公司的offer。

再后面,我们两个都拒绝了这家公司的offer。

再后来,我小孩出生,刚好这位同学的老婆是在香港做奶粉代购的,我就又跟他联系了下,那时候,他已经不做嵌入式了,在做游戏的后台开发,我很羡慕他,觉得游戏开发应该非常赚钱。然后他跟我说,游戏开发也就头部公司赚钱,下面的很多公司过得也很不好,时间过得很快,不知道他现在过得如何了。

聊了那么多,就为了分享下面的资料

#资料分享

资料主要是USB的一些pdf资料,还有STM32 的一个源码项目,这个项目用flash来模拟存储做成U盘。

资料截图

就酱

公众号后台回复「usb」获取下载链接

#推荐阅读:

    专辑|Linux文章汇总

    专辑|程序人生

    专辑|C语言

嵌入式Linux

微信扫描二维码,关注我的公众号 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/467109.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在已经排好序的线性表中插入一个数,还是升序

在已经排好序的线性表中插入一个数&#xff0c;还是升序#include<stdio.h> #define Maxsize 100 typedef struct s {int elem[Maxsize];int last; }Seqlist; int Locate(Seqlist l,int e)//查找 {int i0;while(i<l.last&&l.elem[i]<e)i;if(il.last)return …

java学习笔记IO之字节输入输出流

IO字节输入输出流 OutputStream:字节输出流 该抽象类是所有字节输出流的超类&#xff1b; 定义了一些共性的成员方法&#xff1a; 1.写入一个字节 void write(int b);//b表示字节 2.写入字节数组 void write(byte[] b);//写入一个字节数组 3.写入字节数组的一部分 void write(…

firefox 和 ie 事件处理的细节,研究,再研究-----书写同时兼容ie和ff的事件处理代码...

在ie中&#xff0c;事件对象是作为一个全局变量来保存和维护的。 所有的浏览器事件,不管是用户触发 的&#xff0c;还是其他事件&#xff0c; 都会更新window.event 对象。 所以在代码中&#xff0c;只要轻松调用 window.event 就可以轻松获取 事件对象&#xff0c; 再 event.s…

不知道的,还以为是555牌香烟

你认为历史上最成功的芯片是什么&#xff1f;就是出货很多很多那种。Intel的酷睿系列&#xff1f;NO&#xff01;AMD&#xff1f;错&#xff01;别猜了&#xff0c;原来是它&#xff01;这就是电工的神器——555定时器&#xff0c;从诞生到现在&#xff0c;销量过百亿&#xff…

异形卵

【问题描述】 我们探索宇宙是想了解浩瀚星空的奥秘&#xff0c;我们却很少意识到宇宙深处藏匿的危险&#xff0c;他们无时无刻不紧盯着我们的地球。如果外星人拜访我们&#xff0c;结果可能与哥伦布当年踏足美洲大陆不会有什么两样&#xff0c;这是历史&#xff0c;也是现实。…

C语言书籍推荐

C语言书籍推荐 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 一、基础 1、《C语言入门很简单》 《零起点学通C语言&#xff08;多媒体范例教学&#xff09;》 《C语言从入门到精通》 2、《C程序设计语言 第2版新版》 《C程序设计语言&#xff08;第2版…

SQLServer技巧

-2.批量更新&#xff1a; UPDATE p_ProductTab SET PC4p.pc4 from (select productid030301102000,pc4423523 union all select productid030301102001,pc4sdgser) as pWHERE p_ProductTab.productidp.productid -1.保留2位小数 Convert(decimal(18,2),字段) 长度为18位&…

Linux操作寄存器前为什么要ioremap

1. 原因这里只考虑有 MMU 的芯片&#xff0c;Linux 为了实现进程虚拟地址空间&#xff0c;在启用 MMU 后&#xff0c;在内核中操作的都是虚拟地址&#xff0c;内核访问不到物理地址。如果在驱动里直接访问物理地址&#xff0c;等于访问了一个非法地址&#xff0c;会导致内核崩溃…

Loading页的实现代码

用了几种Loading页的代码&#xff0c;还是算这个好用了。真的佩服牛人们的思想。有的说用DIV来实现遮盖后面的东西&#xff0c;当FORM加载完后&#xff0c;执行CLOSE()d的JS函数。我试验了几次&#xff0c;效果不是那么好。也主要是由于我吧东西都放在我本地&#xff0c;感觉不…

Fibonacci数列

问题描述Fibonacci数列的递推公式为&#xff1a;FnFn-1Fn-2&#xff0c;其中F1F21。 当n比较大时&#xff0c;Fn也非常大&#xff0c;现在我们想知道&#xff0c;Fn除以10007的余数是多少。 输入格式输入包含一个整数n。输出格式输出一行&#xff0c;包含一个整数&#xff0c;表…

C语言——关键字

C语言——关键字 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 【谨记&#xff1a;尽量不要用printf函数&#xff0c;要去看变量的值&#xff0c;内存的值。】 auto&#xff0c;int&#xff0c;double&#xff0c;long&#xff0c;char&#xff0c;fl…

调色板栅格数据使用GDAL时注意

这几天用GDAL处理DRG数据时发现&#xff0c;有数据被处理成了黑板&#xff0c;什么都没有&#xff0c;发现是因为DRG图像颜色比较简单&#xff0c;使用了调色板的缘故。 使用SetColorTable将调色板写入后&#xff0c;一部分基本正常&#xff0c;但还有些图像还是有黑板的现象。…

jQuery实现表格行上移下移和置顶

<!DOCTYPE HTML> <html> <head> <meta charset"utf-8"> <meta name"viewport" content"widthdevice-width, initial-scale1, maximum-scale1"> <title>jQuery实现表格行上移下移和置顶</title> <m…

做算法,为什么建议你一定要学懂C++?

在工业界&#xff0c;有这样一个规律&#xff1a;“ 但凡能用其他语言的都不会用C&#xff0c;只能用C的必然用C。”但是&#xff0c;C的学习和项目开发都比较困难。一个有经验的老手也经常搞出野指针&#xff0c;内存泄露等bug&#xff0c;包括我自己在学C的时候也非常痛苦。所…

顺序查找法

#include<stdio.h> #define KeyType int #define OtherType int #define List_size 100 typedef struct{KeyType key;OtherType other; }RecordType; typedef struct{RecordType r[List_size];int length; }Recordlist; int SeqSearch(Recordlist l,int k)//没有设置监视…

IT行业专业术语

IT行业专业术语 宗旨&#xff1a;技术的学习是有限的&#xff0c;分享的精神是无限的。 目前比较流行的开发语言有哪些&#xff1f; Java、C#(C Sharp)、C、C、JavaScript、PHP、Ruby、Python等 WEB端有哪些开发技术&#xff1f; Javascript、CSS、HTML、Ajax、Flex等 比较…

AI一键注释代码、阅读整个项目、转换编程语言。已开源!

获取github源码地址和国内url、key方式&#xff1a;在文章底部 大家好今天给大家介绍一款开源项目&#xff0c;这个项目是由渡码维护的&#xff0c;这个项目支持自己的大模型和使用openai两种方式&#xff0c;本文章介绍使用openai的方式&#xff01; 使用过程中发现两个问题…

为什么别人赚钱比自己容易?

之前的文章提到自己的一个同事&#xff0c;在一家公司干了10年&#xff0c;最近跳槽找了份5万薪水的工作&#xff0c;大家都很想听他的故事。为了方便记录&#xff0c;我叫他文哥文哥比我们一般的毕业生厉害&#xff0c;他比我大将近9岁&#xff0c;我在初中的时候他已经是一个…

Linux下遍历目录下的文件

方法1&#xff1a;http://tag.csdn.net/Article/ef431d9b-68b3-419f-9f85-1fb9279f904a.html//ListFile.cpp#include <stdio.h>#include <dirent.h>#include <sys/types.h>intmain(intargc, char*argv[]){ if (2 ! argc){ printf("Usage:ListFileSource…