Android USB Gadget复合设备驱动(打印机)测试方法

  1. 启动Android打印机设备,并用USB线连接电脑主机及Android打印机。
  2. Android打印机系统启动完成后,在Windows设备管理器中,可以看到Android Phone设备和USB打印支持。
  3. 同时,在打印管理——打印服务器——本地——打印机里可以看到Generic / Text Only打印机。
  4. 修改Generic / Text Only打印机的属性,字体选择中的代码页设置为简体中文(936)。
  5. 在终端(如Xshell)中输入adb shell,并输入cat /dev/ffan_printer。
  6. 在打印管理中,选择Generic / Text Only打印机,右键弹出菜单,并点击菜单项打印测试页,在终端(如Xshell)中即可看到打印机测试页的信息。

    说明:

  1. 如果终端(如Xshell)只显示英文字符和数字,而不显示中文,则参考第4步,修改打印机属性字体选择中的代码页。
  2. 如果终端(如Xshell)中文显示为乱码,则需要设置终端显示的编码为简体中文。
  3. 如果使用串口终端打开ffan_printer设备,需使用后台运行的方式,命令为cat /dev/ffan_printer &,避免Ctrl-C后再次打开/dev/ffan_printer时出现"cat: /dev/ffan_printer: Device or resource busy"的错误。
时间: 2024-11-05 20:43:30

Android USB Gadget复合设备驱动(打印机)测试方法的相关文章

USB gadget 驱动 printer.c 分析

1. modprobe g_printer idVendor=0x0525 idProduct=0xa4a8 modprobe后面也可以加模块参数 2. prn_example从stdout获取数据然后通过USB发送出去,下面让他将文件中的内容发送出去: # cat data_file | prn_example -write_data 3.pdev = device_create(usb_gadget_class, NULL, devt, NULL, "g_printer%d", d

CVE-2016-2502-drivers/usb/gadget/f_serial.c in the Qualcomm USB driver in Android. Buffer Overflow Vulnerability reported by #plzdonthackme, Soctt.

CVE-2016-2502-drivers/usb/gadget/f_serial.c in the Qualcomm USB driver in Android.Buffer Overflow Vulnerability reported by #plzdonthackme, Soctt. struct ioctl_smd_write_arg_type { char *buf; unsigned int size; }; #define GSERIAL_BUF_LEN 256 char smd

Android 开发之 ---- 底层驱动开发(一)

驱动概述 说到 Android 驱动是离不开 Linux 驱动的.Android 内核采用的是 Linux2.6 内核 (最近Linux 3.3 已经包含了一些 Android 代码).但 Android 并没有完全照搬 Linux 系统内核,除了对Linux 进行部分修正,还增加了不少内容.android 驱动 主要分两种类型:Android 专用驱动 和 Android 使用的设备驱动(linux). Android 专有驱动程序: 1)Android Ashmem 匿名共享内存: 为用户空

Android系统移植:驱动篇

[导语]在Android系统移植中,有很重要的一个部分工作,就是为新平台上的硬件设备移植驱动程序.因为Android系统是基于Linux kernel内核构建,所以这里说的移植驱动程序,其实就是基于Android系统平台开发适应移动设备的Linux内核驱动程序. 一. Android系统中Linux内核与设备驱动 Android系统中使用了Linux内核作为自己的操作系统,除了linux的通用代码之外,主要还包含三个方面的东西: 体系结构和处理器 体系结构处理器和标准的设备驱动程序这两个方面是和

Android USB大容量存储时SD卡状态监听(转)

对SD卡状态监听,到现在为止我知道的有两种方式: 1.注册StorageEventListener来监听sd卡状态 StorageEventListener中有onStorageStateChanged()方法,当sd卡状态改变时,此方法会调用,对各状态的判断一般会用到Environment类,此类中包含的有关sd卡状态的常量有: MEDIA_BAD_REMOVAL:表明SDCard 被卸载前己被移除 MEDIA_CHECKING:表明对象正在磁盘检查 MEDIA_MOUNTED:表明sd对象是

第十八篇:融汇贯通--谈USB Video Class驱动

USB Video Class驱动是WINDOWS系统包含的一个针对于USB VIDEO 类的驱动程序. 好多工程师都做过USB VIDEO设备端的开发, 主要的工作内容为: 使用FIRMWARE,或者LIINUX GADGET驱动程序, 构建USB VIDEO设备的描述符, 通过这些描述符的TOPOLOGY关系, 让系统了解,设备所支持的某些控制, 支持的视频格式, 系统驱动通过对这些描述符的解释, 构建自己的KS, FILTER, NODE, PIN网络, 属性, 方法, 最终, 又由这些F

Linux USB gadget 网络体验

平台:Mini2440 系统:linux-2.6.32.2 主机:Windows 配置USB gadget功能中的usbnet时,主要工作是加载g_ether.ko模块,但是试了好几次插到电脑上,都是没反应,windows识别不到设备,查 阅资料后才知道是USB接口的上拉问题,mini2440通过GPC5来上拉USB接口,只有这样主机才能识别到设备并提示安装设备.整合了资料后解决了 问题,步骤: 打开mach-mini2440.c添加代码: [html] view plaincopy stati

翻译Android USB HOST API

翻译Android USB HOST API 源码地址:http://developer.android.com/guide/topics/connectivity/usb/host.html 译者注:翻译的好不好不是太重要,重点是在翻译的过程中会把每句话都看认真看一遍,或者说是抱着翻译的思想来完成一个读懂的目的. USB Host通信 当你的可供电Android设备处理USB host模式时,它担任着为USB总线供电,枚举连接的USB从设备等等一个主设备应用的工作.Android 3.1及以后

android usb adb流程[转]

android adb 概述 android adb的代码分为两部分: kernel层的代码在如下路径: drivers/usb/gadget/f_adb.c drivers/usb/gadget/android.c 他吐给上层应用的是如下的设备节点:/dev/android_adb 应用层的代码在如下路径: system/core/adb目录 针对device,该目录编译的输出是adbd 控制台上手动启动平板adb的功能的方法如下: step1:在init.rc中申明adbd服务 [cpp]