/**********************************************************************
* USB眼图
* 说明:
* 对于USB眼图,并不是很清楚这种硬件特性,USB控制器一般本身自带测试
* 模式,所以只需要修改寄存器来发送对应的测试包就行了。USB Hub可以用usb-tools。
*
* 2018-7-11 深圳 宝安西乡 曾剑锋
*********************************************************************/ 一、参考文档:
. USB 眼图测试
https://community.nxp.com/thread/357113
. The solution for the USB test
https://community.nxp.com/thread/321605
. i.MX6Q/eye pattern of USB HS1 setup
https://community.nxp.com/thread/383925
. I.MX6 series USB Certification Guides
https://community.nxp.com/docs/DOC-105609
5. 65.6 USB Core Memory Map/Register Definition
6. https://github.com/felipebalbi/usb-tools
7. USB HOST TEST MODE
http://eagerhsu.blogspot.com/2012/07/usb-host-test-mode.html
8. USB High Speed Electrical Test
https://github.com/MicrochipTech/USB-Hub-Linux-Examples/tree/master/General%20USB%20Examples/USB%20High%20Speed%20Electrical%20Test
二、原理说明:
The USB controller is compliant with the EHCI specification. The test modes are set by the PTC bits in the PORTSC register (bits -). 三、USB_nPORTSC1 field descriptions

四、测试示例:
memtool 0x2184184 //read the register settings, address of the other USB port is 0x2184384
memtool 0x2184184=0x18441205 // Force to output Test Packet for Eye Diagram Test
memtool 0x2184184=0x18411205 //Force to output J_STATE
memtool 0x2184184=0x18421205 // Force to output K_STATE
memtool 0x2184184=0x18431205 // Force to output SE0 (host) / NAK (device)
memtool 0x2184384=0x18001305 // Force to output Reset
memtool 0x2184384=0x18001285 //Ho Force to output Suspend
memtool 0x2184384=0x18001245 // Force to output Resume 五、PORTSCn地址信息:
| Absolute |
| address | | Width |
| (hex) | Register name | (in bits) | Access Reset value
+----------+-----------------------------------------+-----------+-------------------
| 218_4184 | Port Status & Control (USB_UOG_PORTSC1) | | R/W 1000_0000h
+----------+-----------------------------------------+-----------+-------------------
| 218_4384 | Port Status & Control (USB_UH1_PORTSC1) | | R/W 1000_0000h
+----------+-----------------------------------------+-----------+-------------------
| 218_4584 | Port Status & Control (USB_UH2_PORTSC1) | | R/W 1000_0000h
+----------+-----------------------------------------+-----------+-------------------
| 218_4784 | Port Status & Control (USB_UH3_PORTSC1) | | R/W 1000_0000h

USB眼图的更多相关文章

  1. 如何验收安卓PCBA主板的质量和性能

    . 版本:v0.1 作者:河东西望 日期:2022-7-15 . 目录 1 有哪些情况需要验收? 2 有哪些验收测试? 2.1 主板测试 2.2 工程测试 2.3 性能测试 2.4 压力测试 2.5 ...

  2. USB匹配电阻

    做过USB的人都或许有一个纠结,那就是D+和D-上到底要串多大的电阻,串在源端还是终端. 我想说:网络上的说法都不完全正确,首先USB有低速.全速和高速之分,在低速和全速模式下是电压驱动的,驱动电压为 ...

  3. USB 3.0传输规格

    通用序列总线(USB) 从1996问世以来,一统个人电脑外部连接界面,且延伸至各式消费性产品,早已成为现代人生活的一部分.2000年发表的USB 2.0 High-speed规格,提供了480Mbps ...

  4. 新一代的USB 3.0传输规格

    通用序列总线(USB) 从1996问世以来,一统个人电脑外部连接界面,且延伸至各式消费性产品,早已成为现代人生活的一部分.2000年发表的USB 2.0 High-speed规格,提供了480Mbps ...

  5. USB 3.0规范中译本 第6章 物理层

    本文为CoryXie原创译文,转载及有任何问题请联系cory.xie#gmail.com. 6.1 物理层概览 物理层定义超高速总线的信号技术.本章定义超高速物理层的电气要求. 本节定义超高速组件之间 ...

  6. USB 3.0规范中译本 第3章 USB 3.0体系结构概览

    本文为CoryXie原创译文,转载及有任何问题请联系cory.xie#gmail.com. 本章呈现USB 3.0体系结构和关键概念的概览.USB 3.0与前面版本的USB类似,因为它是线缆总线,支持 ...

  7. PCB中的生产工艺、USB布线、特殊部件、蓝牙天线设计

    PCB中的生产工艺.USB布线.特殊部件.蓝牙天线设计 (2016-07-20 11:43:27) 转载▼     PCB生产中Mark点设计 1.pcb必须在板长边对角线上有一对应整板定位的Mark ...

  8. Linux自动共享USB设备:udev+Samba

    一.概述 公司最近要我实现USB设备插入Ubuntu后,自动共享到网络上,能像Windows共享一样(如\\192.168.1.10)访问里面的内容,不需要写入权限.当时听完这需求,我这新人表示惊呆了 ...

  9. OpenWrt中开启usb存储和samba服务

    在从官网安装的WNDR3800 15.05.1版本OpenWrt中, 不带usb存储支持以及samba, 需要另外安装 1. 启用usb支持 USB Basic Support https://wik ...

随机推荐

  1. VCG(VisualCodeGrepper)安装使用教程

    一.说明 代码审计工具看来还是比较难做,一是开源的代码审计工具少,二是原本的一些开源审计工具很多都不更新甚至不能使用了. VCG支持审计C++.Java.C#.PHP和VB,但其“审计”基本相当于函数 ...

  2. wps去除首字母自动大写

    首字母大写功能在不是进行英文编写时是个“自作聪明”的功能,我们可能会想把它关掉.

  3. Java 8 默认方法(Default Methods)

    Java 8 默认方法(Default Methods) Posted by Ebn Zhang on December 20, 2015 Java 8 引入了新的语言特性——默认方法(Default ...

  4. Uboot启动流程分析(转载)

    最近一段时间一直在做uboot移植相关的工作,需要将uboot-2016-7移植到单位设计的ARMv7的处理器上.正好元旦放假三天闲来无事,有段完整的时间来整理下最近的工作成果.之前在学习uboot时 ...

  5. day23 模块02

    核能来袭--模块 2 1.nametuple() 2.os模块 3.sys模块(重点) 4.序列化 (四个函数) 5.pickle(重点) 6.json(重点中的重点) 1.nametuple() 命 ...

  6. python if elif else判断语句

    username = 'jack' password = ' _username = input('username') _password = input('password') if userna ...

  7. C++关于运算符的注意事项

    1.函数调用也是一种特殊的运算符,对运算对象的个数不作限制. 2.几元运算符,是基于作用的对象的数量. 3.不同类型的运算对象进行运算,可能会出现类型转换,一般情况下小整数类型会被转换成较大的整数类型 ...

  8. AngularJs和Vue比较

    http://jimhoskins.com/2012/12/17/angularjs-and-apply.html

  9. spring boot 发邮件

    报错:  Mail server connection failed; nested exception is javax.mail.MessagingException: Could not con ...

  10. C++11智能指针 share_ptr,unique_ptr,weak_ptr用法

    0x01  智能指针简介  所谓智能指针(smart pointer)就是智能/自动化的管理指针所指向的动态资源的释放.它是存储指向动态分配(堆)对象指针的类,用于生存期控制,能够确保自动正确的销毁动 ...