自己layout了一个T113-S3小系统板子.
usb otg按照阻抗要求做了匹配.但是连接电脑无法枚举成功.
用示波器抓了下波形, 请大佬帮忙分析下是什么原因.
说明, 黄色是D+, 紫色是D-.
通过其它开发板对比, 其它板子D-在Device K Chirp阶段没有这么大的抖动. 不确定是不是这个引起的问题.
以下是从网上找的正常的枚举图
有遇到过的朋友帮忙分析下.谢谢!
另, 不插tf卡, 可以枚举出VID 1F3A,PID EFE8. 因为没有焊接spi flash,所以暂时未测试.
离线
附上usb的dts,
&usbc0 {
device_type = "usbc0";
usb_port_type = <0x0>;
usb_detect_type = <0x0>;
/* usb_detect_mode = <0>;
usb_id_gpio = <&pio PB 8 GPIO_ACTIVE_HIGH>;
enable-active-high;
usb_det_vbus_gpio = <&pio PB 9 GPIO_ACTIVE_HIGH>; */
usb_wakeup_suspend = <0>;
usb_serial_unique = <0>;
usb_serial_number = "20080411";
rndis_wceis = <1>;
status = "okay";
};
离线
测一下Reset引脚电压多少,我这边老遇到上电Reset引脚电压0.3x伏不启动问题,拖焊晶振的那边引脚,洗板水洗得干干净净就能启动,估计跟layout有关
离线
Reset电压1.771, 启动还算稳定.
焊上spi nand测了, 不插tf卡, 烧录也是有问题.
空板子上电启动进入烧录模式,可以识别到VID 1F3A,PID EFE8.
通过PhoeniSuit软件二次启动后, 就又会变成无法获取描述符.
U-Boot 2018.05-g2a1965a (Jul 10 2022 - 02:50:57 +0000) Allwinner Technology
[02.457]CPU: Allwinner Family
[02.460]Model: sun8iw20
[02.462]DRAM: 128 MiB
[02.465]Relocation Offset is: 04ebc000
[02.491]secure enable bit: 0
[02.494]CPU=1008 MHz,PLL6=600 Mhz,AHB=200 Mhz, APB1=100Mhz MBus=300Mhz
[02.500]gic: normal mode
[02.502]flash init start
[02.505]workmode = 16,storage type = 0
try card 2
set card number 2
get card number 2
[02.512][mmc]: mmc driver ver uboot2018:2021-12-20 13:35:00
[02.519][mmc]: Is not Boot mode!
[02.522][mmc]: SUNXI SDMMC Controller Version:0x50310
[02.533][mmc]: ************Try SD card 2************
[02.538][mmc]: mmc 2 cmd timeout 100 status 100
[02.543][mmc]: smc 2 err, cmd 8, RTO
[02.546][mmc]: mmc 2 close bus gating and reset
[02.551][mmc]: mmc 2 cmd timeout 100 status 100
[02.555][mmc]: smc 2 err, cmd 55, RTO
[02.559][mmc]: mmc 2 close bus gating and reset
[02.563][mmc]: ************Try MMC card 2************
[02.572][mmc]: mmc 2 cmd timeout 100 status 100
[02.576][mmc]: smc 2 err, cmd 1, RTO
[02.579][mmc]: mmc 2 close bus gating and reset
[02.583][mmc]: Card did not respond to voltage select!
[02.588][mmc]: ************SD/MMC 2 init error!************
[02.594][mmc]: mmc init product failed
MMC init failed
try emmc fail
[02.600]sunxi-spinand: AW SPINand MTD Layer Version: 1.8 20220106
[02.606]sunxi-spinand-phy: AW SPINand Phy Layer Version: 1.11 20211217
[02.614]sunxi-spinand-phy: request spi0 gpio ok
[02.618]sunxi-spinand-phy: request general tx dma channel ok!
[02.623]sunxi-spinand-phy: request general rx dma channel ok!
[02.629]sunxi-spinand-phy: set spic0 clk to 20 Mhz
[02.633]sunxi-spinand-phy: init spic0 clk ok
[02.637]sunxi-spinand-phy: detect munufacture from id table: Winbond
[02.643]sunxi-spinand-phy: detect spinand id: ff21aaef ffffffff
[02.649]sunxi-spinand-phy: ========== arch info ==========
[02.654]sunxi-spinand-phy: Model: W25N01GVZEIG
[02.659]sunxi-spinand-phy: Munufacture: Winbond
[02.664]sunxi-spinand-phy: DieCntPerChip: 1
[02.669]sunxi-spinand-phy: BlkCntPerDie: 1024
[02.674]sunxi-spinand-phy: PageCntPerBlk: 64
[02.678]sunxi-spinand-phy: SectCntPerPage: 4
[02.682]sunxi-spinand-phy: OobSizePerPage: 64
[02.687]sunxi-spinand-phy: BadBlockFlag: 0x0
[02.692]sunxi-spinand-phy: OperationOpt: 0x7
[02.696]sunxi-spinand-phy: MaxEraseTimes: 65000
[02.701]sunxi-spinand-phy: EccFlag: 0x0
[02.706]sunxi-spinand-phy: EccType: 2
[02.710]sunxi-spinand-phy: EccProtectedType: 3
[02.714]sunxi-spinand-phy: ========================================
[02.720]sunxi-spinand-phy:
[02.723]sunxi-spinand-phy: ========== physical info ==========
[02.728]sunxi-spinand-phy: TotalSize: 128 M
[02.733]sunxi-spinand-phy: SectorSize: 512 B
[02.737]sunxi-spinand-phy: PageSize: 2 K
[02.741]sunxi-spinand-phy: BlockSize: 128 K
[02.745]sunxi-spinand-phy: OOBSize: 64 B
[02.749]sunxi-spinand-phy: ========================================
[02.755]sunxi-spinand-phy:
[02.757]sunxi-spinand-phy: ========== logical info ==========
[02.763]sunxi-spinand-phy: TotalSize: 128 M
[02.767]sunxi-spinand-phy: SectorSize: 512 B
[02.771]sunxi-spinand-phy: PageSize: 4 K
[02.775]sunxi-spinand-phy: BlockSize: 256 K
[02.779]sunxi-spinand-phy: OOBSize: 128 B
[02.784]sunxi-spinand-phy: ========================================
[02.790]sunxi-spinand-phy: W25N01GVZEIG reset rx bit width to 1
[02.795]sunxi-spinand-phy: W25N01GVZEIG reset tx bit width to 1
[02.801]sunxi-spinand-phy: set spic0 clk to 100 Mhz
[02.806]sunxi-spinand-phy: block lock register: 0x00
[02.810]sunxi-spinand-phy: feature register: 0x19
[02.815]sunxi-spinand-phy: sunxi physic nand init end
[02.819]line:703 init_clocks
[02.822]init_clocks:finish
[02.825]Loading Environment from SUNXI_FLASH... OK
[02.829]try to burn key
[02.831]out of usb burn from boot: not need burn key
Hit any key to stop autoboot: 0
sunxi work mode=0x10
run usb efex
delay time 2500
weak:otg_phy_config
usb init ok
相同的SDK开发包, usb这部分没有修改配置, 在开发板上是好的.波形也测了, 是没有这个抖动的.
如下图有一部分模块功能完全没有用到, 所以没有连接,不知道对应的电源或者接口是不是有影响.
离线
我也是这样,第二次识别不到。楼主找到问题了吗?
离线
解决了.
AVCC,AGND需要正常供电接地(因为我之前没有用到audio,所以没有处理)。
虽然手册上写的USB电源域是VCC-IO。
离线
解决了.
AVCC,AGND需要正常供电接地(因为我之前没有用到audio,所以没有处理)。
虽然手册上写的USB电源域是VCC-IO。
原来如此,我去试一试
离线
测试回来了,果然AVCC接上 USB就能正常被识别了,这就离谱
离线
glen4linux 说:解决了.
AVCC,AGND需要正常供电接地(因为我之前没有用到audio,所以没有处理)。
虽然手册上写的USB电源域是VCC-IO。原来如此,我去试一试
AVCC这个引脚是有内部ldo的,正常工作输出1.8v, 如果不用需要电容旁路,AGND是需要连接到GND的。
离线
再问一下各位大神,avcc据原厂说是电源输出口,是不是agnd跟gnd短接,avcc接个电容就行了,avcc不需要再外接1.8V输入吧
离线