Files
m5-docs/docs/zh_CN/module/usb.md
T
2019-06-14 17:49:23 +08:00

4.2 KiB

Module USB {docsify-ignore-all}


📝描述      :octocat:例程      🔌原理图      🛒购买链接      🎬相关视频

描述

USB 是M5Stack堆叠模块系列中的一款,USB驱动模块.集成了MAX3421E芯片,能够为任何带有SPI的系统添加USB主机或是外设功能接口.如果你想为你的设备添加标准的USB接口,这款USB模块会完美的解决方案.

通讯协议: SPI

产品特性

  • 1x UAB 标准端口 A
  • 10x GPIO 引脚拓展
  • 拓展引脚 3v3, 5v, GND

包含

  • 1x M5Stack USB 模块

应用

  • USB 键盘记录
  • M5Core U盘读写器

相关链接

EasyLoader

点击下载EasyLoader

1.EasyLoader是一个简洁快速的程序烧录器,每一个产品页面里的EasyLoader都提供了一个与产品相关的案例程序.

2.下载软件后,双击运行应用程序,将M5设备通过数据线连接至电脑,选择端口参数,点击 "Burn" 即可开始烧录

!>3.EasyLoader烧录前需要安装有CP210X(USB驱动程序),点击此处查看驱动安装教程

例程

以下代码仅为片段,如需获取完整代码, 请点击此处..

注意: 在编译该程序前,你需要点击此处下载相应的USB库. 并将其解压缩到Arduino库路径中.(C:\Users\<user_name>\Documents\Arduino\libraries)

下载演示程序 usb_mouse.ino 将鼠标接入 USB 模块的 A 端口.

  • 按住左按键拖动绘制白线.

  • 按住右按键拖动绘制绿线.

  • 按中间滚轮按钮清除屏幕.

#include <M5Stack.h>
#include <SPI.h>
#include <Usb.h>
#include <hiduniversal.h>
#include <hidboot.h>
#include <usbhub.h>
#include "M5Mouse.h"

// new objects
USB Usb;
USBHub  Hub(&Usb);
HIDBoot<USB_HID_PROTOCOL_MOUSE> HidMouse(&Usb);
MouseRptParser  Prs;

// initialization
M5.begin();
Usb.Init();
HidMouse.SetReportParser(0,(HIDReportParser*)&Prs);

// handle event coming from usb device
Usb.Task();
if(Usb.getUsbTaskState() == USB_STATE_RUNNING)
{
  Mouse_Pointer(mou_px, mou_py);
  mou_px = 0;
  mou_py = 0;
  /* left button pressed: draw white point */
  if (mou_button == 1)
    M5.Lcd.drawCircle(StaPotX, StaPotY, 1, WHITE);
  /* right button pressed: draw green point */
  if (mou_button == 2)
    M5.Lcd.drawCircle(StaPotX, StaPotY, 1, GREEN);
  /* middle button pressed: clear screen */
  if (mou_button == 4)
    M5.Lcd.fillScreen(BLACK);
}

原理图

相关视频

USB 的案例 - 读取 USB 设备