USB

PIC32MZ——USB HID通信

在设备通信中,UART非常常见,也是最简单的,但是,PC尤其是笔记本基本都舍弃了传统的UART端口,只能使用usb转UART的IC来做信号转换,这样效率低,而且还要针对IC安装专门的驱动,非常不方便,而在有些特殊设备上,甚至驱动无法安装,是否可以不安装驱动与PC通信呢?

当然可以!

在USB盛行的今天,USB通信变得极其简单,而在USB中有一个重要的通信标准,就是HID(Human Interface Device),常见的鼠标键盘就是采用HID通信。由于它的标准性,几乎所有PC系统(Windows、Linux、OSX)都集成了它的驱动,所以,可以将它看做一个免驱的设备,类似的还有USB大容量存储。下面我们就用PIC32MZ2048EFH芯片实现USB HID的接口(PIC32MZ EF Start Kit开发板),与PC进行通信,PC端采用C#以及C++分别在windows和linux下实现hid读写,本篇不做描述,详细参考我的其它博客,关于两个平台的hid程序。

接口使用的是micro usb(j4接口)。

1、配置时钟(略)

2、配置USB Library,下图中红色部分要修改,其它默认。

基于PIC32嵌入式USB工业U盘系统设计

[导读] 随着自动化技术的不断发展,各种各样的嵌入式控制器获得了日益广泛的应用。一些传统的输入输出设备已经为新型的大容量、智能化的输入输出设备所取代。U盘以其容量大、体积小、价格便宜的众多优点成为了最新的移动存储设备。目前在个人计算机上U盘已经取代了传统的软盘成为广泛使用的移动存储介质。

1应用领域背景

随着自动化技术的不断发展,各种各样的嵌入式控制器获得了日益广泛的应用。一些传统的输入输出设备已经为新型的大容量、智能化的输入输出设备所取代。U盘以其容量大、体积小、价格便宜的众多优点成为了最新的移动存储设备。目前在个人计算机上U盘已经取代了传统的软盘成为广泛使用的移动存储介质。

工业现场一般都需要数据采集器来完成各类数据采集任务。在很多实际应用中,往往要求数据采集器具有工作可靠、成本低廉、操作简单、数据便于收集和计算机分析等特点。如果能在嵌入式数据采集系统中实现USB主机功能,那么嵌入式数据采集器就能像PC机一样方便灵活地利用U盘这类USB存储设备进行数据存储。但是U盘和其他的USB设备一样。是通过PCI总线与PC机内部的数据总线相接,实现数据的传送,这样在一些相对简单的微控制器中将无法实现对U盘的操作。本设计所实现的模块就是为了将U盘应用在PC机不适合的场所而设计的。

2 设计摘要

通过U口走进电脑——29种USB攻击类型

研究人员发现了使用USB设备来入侵用户计算机的29种方式,并依据攻击实施的方式将这29种利用方法划分为4类。

▲ 对USB设备的内部微控制器进行重新编程。这种设备看起来有点像某种USB设备,但是执行的功能却是其他的设备。
▲ 对USB设备的固件进行重新编程,来执行恶意行为,比如恶意文件下载、数据泄露等。
▲ 不对USB设备固件重新编程,但是会利用操作系统与USB协议和标准交互的漏洞。
▲ 基于USB的电力攻击。

USB攻击

对内部微控制器重新编程的USB攻击

1) Rubber Ducky -2010年发布的商业键盘按键注入攻击平台。一旦连接到主机,Rubber Ducky会伪装成电脑病注入预加载的按键序列。

2) PHUKD/URFUKED攻击平台。与Rubber Ducky类似,但是允许攻击者选择注入恶意按键序列的时间。

3) USBdriveby –通过模拟USB键盘和鼠标的操作几秒钟内就可以在解锁的OS X主机上安装后门并覆盖原来的DNS设置。

一文读懂USB3.1、USB Type-C、USB PD到底是什么?

USB3.1、USB Type-C、USB PD这几个英文单词应该是目前与USB接口相关的最热门的英文单词,大家或多或少都会在有意或者无意下接触到与其相关的一些信息,但是相对于大部分人来说也仅仅是知道有这么一个东东,但是对其功能及用途却并不了解,那么USB3.1、USB Type-C、USB PD到底是什么呢?仔细看完这篇文章或许就能得到你想要知道的一切。

一、USB3.1是什么?

一文读懂USB3.1、USB Type-C、USB PD到底是什么?

USB3.1其实跟USB2.0、USB3.0一样都只是USB的一种传输标准,不同的传输标准对应不同的传输速度,就目前来说USB3.1的传输速度要高于USB3.0与USB2.0。USB2.0的最高传输速度可达480Mbit/s,USB3.0的最高传输速度可达5Gbit/s,USB3.1的最高传输速度可达10Gbit/s,USB3.0的传输速度是USB2.0的10倍,USB3.1的传输速度也比USB3.0要快2倍。

网友 巧克力 :pic32 usb电路求助

使用PIC32MZ1024EFH100芯片画电路,不使用USB功能,手册上说不使用要把 USB3V3接地,又再网络上看了一下,有人说接VDD。请教一下应该怎么接。同时 Vbus, usbid, D+, D-应该怎么接

PIC32 USB OTG模块

通用串行总线(Universal Serial Bus,USB)模块包含模拟和数字元件,使用最少量的外部元件即可实现USB 2.0 全速和低速嵌入式主机、全速设备或OTG操作。在主机模式下,此模块旨在用作嵌入式主机,因此并未实现UHCI或OHCI控制器。

USB模块由时钟发生器、USB电压比较器、收发器、串行接口引擎(Serial Interface Engine,SIE)、专用USB DMA控制器、上拉和下拉电阻以及寄存器接口组成。PIC32 USB OTG模块的框图如图10-1所示。

注1: 仅在选择EC模式时,在此引脚上提供PB时钟。
2: 此位域包含在OSCCON寄存器中。
3: 此位域包含在OSCTRM寄存器中。
4: USB PLL UFIN要求:4 MHz。
5: 此位域包含在DEVCFG2寄存器中。
6: USB正常工作需要48 MHz时钟。
7: 当USB模块禁止时或USB使能但DEVCFG3<31:30> = 0b00时,引脚可用作GPIO。

PIC32 USB On-The-Go (OTG)

通用串行总线(Universal Serial Bus,USB)模块包含模拟和数字元件,使用最少量的外部元件即可实现USB 2.0 全速和低速嵌入式主机、全速设备或OTG。在主机模式下,该模块旨在用作嵌入式主机,因此并未实现UHCI 或OHCI 控制器。

USB 模块由时钟发生器、USB 电压比较器、收发器、串行接口引擎(Serial Interface Engine,SIE)、专用USB 总线主控、上拉和下拉电阻以及寄存器接口组成。PIC32MX USB OTG 模块的框图如图27-1 所示

(文章详细内容请下载附件!)

同步内容
--电子创新网--
粤ICP备12070055号