精华内容
下载资源
问答
  • USBDEBUG

    千次阅读 2013-12-21 08:15:03
    USBDEBUG是一款操作及其简单的USB调试工具软件。它能够快速准确的对USB设备进行数据的读写操作,可以实时监测从USB设备发来的数据。(目前只支持调试Philips公司的PDIUSBD12和ISP1581) 操作步骤介绍如下: 一....

    USBDEBUG是一款操作及其简单的USB调试工具软件。它能够快速准确的对USB设备进行数据的读写操作,可以实时监测从USB设备发来的数据。(目前只支持调试Philips公司的PDIUSBD12和ISP1581)

    操作步骤介绍如下:

    一. 刷新设备列表并选择所要操作的设备
    图 2 获取当前设备列表
    usb_debug_tu2

    如图2所示,在启动软件并插上所要的操作的USB设备后,请点击“刷新设备列表”按钮来获取当前操作系统所能标识出的所有USB设备。这些USB设备的名称将会被添加到设备的下拉框中。如图3所示,这时可以从中选择你所要调试的USB设备。

    图 3 选择USB设备

    usb_debug_tu3
    二. 配置启动参数

    图 4 设置要操作的端点及管道大小
    usb_debug_tu4

    如图4所示,在选择好USB设备后,必须要设置好接收和发送数据端点以及接收和发送管道的大小才能启动监听线程(注:接收和发送管道的大小必须要设置正确,否则不保证能够准确的收发数据,接收和发送管道的大小是由USB设备的固件程序决定的,即通过此端点所能接收或发送最大数据包中的有效数据的长度,比如PDIUSBD12的端点1的接收和发送管道的大小一般设为16字节,端点2的接收和发送管道的大小一般设为64字节)。这时,你可以点击“启动”按钮来启动监听线程,如图5所示。

    usb_debug_tu5

    图 5 已启动监听线程

    三. 设置接收参数

    usb_debug_tu6

    图 6 设置保存的文件路径

    如图6所示,这里可以进行清空接收缓冲区操作,也就是清空接收窗口中的数据。点击“更改路径”按钮设置好所要存储的文件名后,点击“存储”按钮可以把接收窗口中的数据存储到文件中。

    四. 设置发送参数

    图 7 设置导入的文件路径

    usb_debug_tu7

    如图7所示,这里可以进行清空发送缓冲区操作,也就是清空发送窗口中的数据。点击“更改路径”按钮设置好所要导入的文件名后,点击“导入”按钮可以把文件中的数据导入到发送窗口中。文件中的数据格式必须为如图8中的数据格式才能导入(注:每行中的最后一个数据后面还跟有一个空格,千万不能漏掉)。

    图 8 导入文件格式
    usb_debug_tu8
    五. 收发数据窗口

    图 9 数据收发窗口
    usb_debug_tu9

    如图9所示,数据接收窗口实时显示接收到的数据,数据发送窗口显示所要发送的数据。

    usb_debug_tool

    图 1 USBDEBUG初始界面

    展开全文
  • usb调试助手 usb调试助手UsbDebug usb调试助手UsbDebug
  • usb调试助手UsbDebug.exe

    热门讨论 2009-02-10 11:01:42
    usb调试助手,USBDEBUG是一款操作及其简单的USB调试工具软件。它能够快速准确的对USB设备进行数据的读写操作,可以实时监测从USB设备发来的数据。(目前只支持调试Philips公司的PDIUSBD12和ISP1581)
  • usbDebug_V1[1].2.rar

    2011-09-13 10:14:06
    usbDebug_V1[1].2.rar usbDebug_V1[1].2.rar usbDebug_V1[1].2.rar usbDebug_V1[1].2.rar usbDebug_V1[1].2.rar
  • usb debug---usbmon 的使用

    2019-10-28 14:55:08
    usb debug—usbmon 的使用 各个字段的含义 各个字段的含义 usbmon USB ACSII 捕获 内核中开启debug filesystem, 开启usb mon # ls /sys/kernel/debug/usb/usbmon/ 0s 0u 1s 1t 1u 2s 2t 2u # cat 1u > /tmp/tmp....

    usb debug—usbmon 的使用

    各个字段的含义

    各个字段的含义

    usbmon

    在这里插入图片描述在这里插入图片描述

    USB ACSII 捕获

    内核中开启debug filesystem, 开启usb mon

    # ls /sys/kernel/debug/usb/usbmon/
    0s  0u  1s  1t  1u  2s  2t  2u
    # cat 1u > /tmp/tmp.mon
    

    抓到的usb数据是文本格式,是可以通过分析每一个字段来查看每个包的含义。可以直接用vusb-analyzer来分析tmp.mon, 注意文件后缀一定要是mon.
    使用vusb-analyzer查看抓到的usb数据。

    ./vusb-analyzer tmp.mon
    

    在这里插入图片描述

    使用wireshark 分析usbmon binary

    在这里插入图片描述

    参考文档:
    USB_Debugging_and_Profiling_Techniques

    展开全文
  • keil C51中USB Debug Adapter调试器的配置

    千次阅读 2019-07-06 11:02:27
    接手别人的项目,第一次接触USB Debug Adapter调试器,环境配置花了不少时间,在此完整记载一下正确配置方式。 首先USB Debug Adapter的免驱动安装的,连接电脑后,设备管理器->人体输入设备处,增加了一个USB...

    接手别人的项目,第一次接触USB Debug Adapter调试器,环境配置花了不少时间,在此完整记载一下正确配置方式。

    首先USB Debug Adapter的免驱动安装的,连接电脑后,设备管理器->人体输入设备处,增加了一个USB输入设备或者其他,说明调试器和电脑连接没有问题。

    打开KEIL C51软件,对Debug进行配置,选择Silicon Labs C8051Fxxx Driver调试器。当然,你的软件并找不到这个调试器,呵呵。网上搜索sic8051f_uvision.exe驱动下载安装,即可在Debug中找到这个调试器。

    调试器连接电脑以后打开Setting,就会发现中间的调试器选项不再是灰色,选中即可(我现在没连,所以还是灰色无法选中的)。

    此时进行程序调试,不会报错,但是程序烧不进单片机,调试的是之前的程序,需要进行Flash烧写配置。选中Utilities选项卡,按照图中进行配置,即可完成USB Debug Adapter调试器全部配置,开心的进行烧写和调试吧。

    展开全文
  • 通过暗码去打开/关闭usb debug开关 通过暗码去打开/关闭usb debug开关1. Description2. Analysis3. Solution4. Summary 1. Description 通过在dialer输入暗码,打开/关闭usb debug开关。 其实这个功能...

    通过暗码去打开/关闭usb debug开关

    1. Description

    通过在dialer输入暗码,打开/关闭usb debug开关。
    其实这个功能本来在settings下面就有的,如果是正式版的设备需要连续点击几次版本号才能将usb debug开关显示出来,通过暗码来打开估计是为了更加方便后续的操作吧。

    2. Analysis

    1. 首先在dialer处进行逻辑判断,如果接收到的是usb debug开关的暗码,则发送对应的广播。在mtk自带的dialer就有相关的逻辑了,如handleSecretCode方法就会接收*#*#<code>#*#*格式的暗码,然后发送广播,其相关代码如下所示:

      1. static boolean handleSecretCode(Context context, String input) {
      2. // Secret codes are accessed by dialing *#*#<code>#*#*
      3. /// M: add for handle reboot meta secret code @{
      4. if (FK_SUPPORTED.equals(SystemProperties.get(FK_REBOOT_META_SUPPORT))) {
      5. if (handleRebootMetaSecretCode(context, input)) {
      6. return true;
      7. }
      8. }
      9. /// @}
      10. int len = input.length();
      11. if (len <= 8 || !input.startsWith("*#*#") || !input.endsWith("#*#*")) {
      12. return false;
      13. }
      14. String secretCode = input.substring(4, len - 4);
      15. TelephonyManagerCompat.handleSecretCode(context, secretCode);
      16. return true;
      17. }
      18. /*handleSecretCode这个方法在TelephonyManagerCompat.java文件中,它会将输入的暗码以广播的形式发送出去*/
      19. public static void handleSecretCode(Context context, String secretCode) {
      20. // Must use system service on O+ to avoid using broadcasts, which are not allowed on O+.
      21. if (BuildCompat.isAtLeastO()) {
      22. if (!TelecomUtil.isDefaultDialer(context)) {
      23. LogUtil.e(
      24. "TelephonyManagerCompat.handleSecretCode",
      25. "not default dialer, cannot send special code");
      26. return;
      27. }
      28. context.getSystemService(TelephonyManager.class).sendDialerSpecialCode(secretCode);
      29. } else {
      30. // System service call is not supported pre-O, so must use a broadcast for N-.
      31. Intent intent =
      32. new Intent(SECRET_CODE_ACTION, Uri.parse("android_secret_code://" + secretCode));
      33. context.sendBroadcast(intent);
      34. }
      35. }
    2. 在广播接收器中进行对应的逻辑处理:
      usb debug的状态信息是存储在ContentProvider中的,对应的标识:

      1. /**
      2. * Whether ADB is enabled.
      3. */
      4. public static final String ADB_ENABLED = "adb_enabled";

      只要将存储在ContentProvider的状态值拿出来,然后进行判断,如果为0则表示当前usb debug是关闭的,如果为1则表示当前usb debug是打开的。只需要将状态值取反后再存入ContentProvider就可以改变usb debug状态。

    3. Solution

    • 添加USB接收器USBDebugBroadcastReceiver,具体代码如下:
    1. package com.android.settings;
    2. import android.content.BroadcastReceiver;
    3. import android.content.ContentResolver;
    4. import android.content.Context;
    5. import android.content.Intent;
    6. import android.content.res.Resources;
    7. import android.provider.Settings;
    8. import android.util.Log;
    9. import android.widget.Toast;
    10. import com.android.internal.telephony.TelephonyIntents;
    11. public class USBDebugBroadcastReceiver extends BroadcastReceiver {
    12. private static final String TAG="USBDebugBroadcastReceiver";
    13. private Toast debugOpenToast;
    14. @Override
    15. public void onReceive(Context context, Intent intent) {
    16. if(TelephonyIntents.SECRET_CODE_ACTION.equals(intent.getAction()) && "0000".equals(intent.getData().getHost())){
    17. boolean mEnableAdb = false;
    18. final ContentResolver mContentResolver = context.getContentResolver();
    19. mEnableAdb = Settings.Global.getInt(mContentResolver,
    20. Settings.Global.ADB_ENABLED, 0) > 0;
    21. Resources resources=context.getResources();
    22. if (debugOpenToast != null) {
    23. debugOpenToast.cancel();
    24. }
    25. if(!mEnableAdb){
    26. // make sure the ADB_ENABLED setting value matches the current state
    27. try {
    28. Settings.Global.putInt(mContentResolver,
    29. Settings.Global.ADB_ENABLED, 1 );
    30. debugOpenToast = Toast.makeText(context,resources.getString(R.string.enable_adb)+" "+resources.getString(R.string.gadget_state_on)
    31. +" "+resources.getString(R.string.band_mode_succeeded),
    32. Toast.LENGTH_SHORT);
    33. debugOpenToast.show();
    34. } catch (SecurityException e) {
    35. // If UserManager.DISALLOW_DEBUGGING_FEATURES is on, that this setting can't be changed.
    36. Log.d(TAG, "ADB_ENABLED is restricted.");
    37. debugOpenToast = Toast.makeText(context,resources.getString(R.string.enable_adb)+" "+resources.getString(R.string.gadget_state_on)
    38. +" "+resources.getString(R.string.band_mode_failed),
    39. Toast.LENGTH_SHORT);
    40. debugOpenToast.show();
    41. }
    42. }else{
    43. try {
    44. Settings.Global.putInt(mContentResolver,
    45. Settings.Global.ADB_ENABLED, 0 );
    46. debugOpenToast = Toast.makeText(context,resources.getString(R.string.enable_adb)+" "+resources.getString(R.string.gadget_state_off)
    47. +" "+resources.getString(R.string.band_mode_succeeded),
    48. Toast.LENGTH_SHORT);
    49. debugOpenToast.show();
    50. } catch (SecurityException e) {
    51. // If UserManager.DISALLOW_DEBUGGING_FEATURES is on, that this setting can't be changed.
    52. Log.d(TAG, "ADB_DISENABLED is restricted.");
    53. debugOpenToast = Toast.makeText(context,resources.getString(R.string.enable_adb)+" "+resources.getString(R.string.gadget_state_off)
    54. +" "+resources.getString(R.string.band_mode_failed),
    55. Toast.LENGTH_SHORT);
    56. debugOpenToast.show();
    57. }
    58. }
    59. }
    60. }
    61. }
    • 在对应的AndroidManifest.xml中为该接收器进行注册,具体如下:
    1. <receiver android:name=".USBDebugBroadcastReceiver">
    2. <intent-filter>
    3. <action android:name="android.provider.Telephony.SECRET_CODE"/>
    4. <data android:scheme="android_secret_code" android:host="33284"/>
    5. </intent-filter>
    6. </receiver>

    4. Summary

    这个问题相对简单,只要将期望的状态只存入对应的ContentProvider中就可与改变usb debug状态。之所以通过广播来处理,是因为与activity相比,通过intent启动指定activity组件时,如果没有找到合适的activity组件,会导致程序异常中止,但是通过intent启动BroadcastReceiver组件时不会有该问题出现。





    转载于:https://www.cnblogs.com/sayhellowen/p/de6c64f4ebc63352eb3bc3689bea2820.html

    展开全文
  • usb debug上层相关知识

    2015-07-29 17:28:37
    在package目录下的settings中的developmentsettings.java,系统调用了Settings.Global.SetInt...来开启USB Debug,(网上有很多写的是SECURE_ENABLED_ADB这个字段,以及在SystemServer文件中监听,这是4.0之
  • Android4.2 Usb Debug启动流程

    千次阅读 2014-09-22 09:18:11
    最近自己搞的Android项目,发现设置中的Usb Debug无法启动了,于是
  • USB Debug Cable (一)

    2014-12-31 23:16:00
    工作中有无数的调试任务无法继续,因为target是笔记本,没有串口,没有1394,USB Debug是唯一的选择。目前世界上还在公开销售的USB Debug cable似乎只有Ajays Technology NET20DC,网购地址是这里,当然在大陆买这...
  • Linux USB subsystem --- USB Debug File System Initialize [Linux 3.2] [driver/usb/core/usb.c] 首先来分析USB子系统初始化的第一个函数usb_debugfs_init() [cpp] view plaincopy static...
  • Android - source code - "enable USB Debug
  • android usb debug

    2011-08-12 16:29:28
    linux ubuntu10.10下,连接usb 调试
  • dwc3 usb debugfs(otg switch)

    2021-03-10 18:30:17
    driver/usb/dwc3/debugfs.c dwc3_probe ->dwc3_debugfs_init() 2. enable debugfs mount -t debugfs none /sys/kernel/debug 3. user space path # ls /sys/kernel/debug/300000.dwc3/ link_...
  • android ubuntu usb debug

    2014-12-01 17:30:18
    server port how to get usb packet:  # mount -t debugfs none /sys/kernel/debug  # modprobe usbmon ... # cat /sys/kernel/debug/usb/devices if your device is bus1, then you may get
  • 现象:   USB Debug
  • silab cpu usb debug sheet

    2011-05-17 08:46:15
    C8051F3XX系列usb调试手册,包括firmware的使用手册以及上位机软件的使用手册。
  • C8051F 单片机的低价位开发套件是为您提供快速开发应用系统的工具。
  • 不知道是哪位大神整理的,过程写的非常清晰,每一步都有图片,非常用心了,感谢。我只是搬运工,感谢无名英雄!
  • FX3/CX3 USBDebug

    千次阅读 2016-11-21 19:11:34
    /** \brief Log a codified message. **Description**\n This function is used to output a codified log message which ... a four byte parameter.... buffer....在USBDebug工程里有详细说明。
  • 可在android 系统下需要安装调试驱动
  • USB开发调试过程中使用的挺不错的工具,从网上收集来的,用着挺好。。
  • 需求:在 user 版中,插入 usb 连接电脑时,默认只有 mtp (传文件)功能,关闭 adb 功能。在 eng 版中,插入 usb 连接电脑时,默认打开 adb 功能,且兼具 mtp (传文件)功能。 提示: Android 4.4 之后貌似修改...
  • <div><p>Fixed build error with macro usage.</p><p>该提问来源于开源项目:Samsung/TizenRT</p></div>
  • \frameworks\base\services\core\java\com\android\server\pm\PackageManagerService.java private int[] performDexOptUpgrade(List<PackageParser.Package> pkgs, boolean showDialog, fin...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 4,797
精华内容 1,918
关键字:

usbdebug