同时请参考TI文档:

http://processors.wiki.ti.com/index.php/AM335x_Schematic_Checklist

和在下面链接中的硬件手册。

phyCORE-AM335x

这是我们核心板很重要的文档,做硬件设计请一定仔细阅读


1.硬件设计相关资源

2.上电时序

AM335x SOC有多个需要供电的区域,且对他们的上电顺序有要求。如datasheet的 Figure 6-2。

因此,为了防止在核心板的IO还未上电时,外部器件通过IO口向核心板输出,我们有一个信号

引脚编号引脚名称
X3B6VAUX2_3P3V

来作为参考。该信号在核心板上电完成后输出3.3V,因此就可以用它来控制外部器件,有以下方法可以使用

  1. 使用一个具有OE控制的总线驱动器件。
  2. 直接使用该信号控制所有外部器件的电源。

同时该信号也是一个电源,他作为电源有以下两个用途

  1. 用于给外部器件供电(最大150mA)
  2. 用于作为外部器件与核心板通讯时的参考电压,因为它同时也是核心板的IO口电压。

3.启动配置引脚

  • X_LCD_D[15:0]

这16个引脚在开机时,是作为启动配置的引脚,他们的会在


引脚编号引脚名称
X3A30X_PORZ


引脚上升沿时,被核心板读取,作为启动方式配置到核心板中。

该引脚同时也是CPU的 PWRONRSTn 信号(见上面的时序图),因此 X_PORZ 信号的拉高是发生在 VAUX2_3P3V 已经拉高之后的事件。

核心板板载这16个引脚的配置,因此在没有外部输入的情况下是可以有正常的启动配置的。

因此,对于外设来说如果用到了这几个引脚就要注意在上电时不能驱动这几个引脚,如果将引脚拉到错误的电平,则会导致启动失败。

启动引脚设置信号在开发板硬件手册的 <5 system configuration and booting> 章节中有对应的说明,

      Table 11是各个设备启动引脚的配置。

从表格中可看出需要配置X_LCD_D[4:0]的信号来设置不同的启动源。

PCM-953开发板启动设置原理图

S5即为启动设备配置开关,将DIR设为高电平,X_LCD_D[4:0] 对应BOOTMODE[4:0], 根据1中的Table 11设置 BOOTMODE[4:0]即可。

如果只需要SD卡和NAND启动,则可以使用:

4. 复位信号

引脚编号引脚名称
X3A11
X_PB_RESETn

该信号为复位输入,低有效。

引脚编号引脚名称
X3B13
X_RESET_OUTn

复位输出,复位时输出低。

5.EMU0 & EMU1

根据TI的

SPRZ360 AM335x Sitara™ Processors Silicon Revisions 2.1, 2.0, 1.0 Silicon Errata

文档中的 Advisory 1.0.36 EMU0和EMU1引脚必须在开机时拉高,否则会导致开机故障。

而根据AM335x的datasheet,这两个引脚上电模式是高阻上拉的状态,因此如果不需要使用这两个引脚,直接悬空就可以了。

引脚编号引脚名称CPU信号
X1B20
X_GPIO3_7EMU0
X1B18X_GPIO3_8EMU1

6.USB各个引脚接法

根据TRM,AM335x的USB引脚有

图来自TRM SPRUH73O。

其中USBx_DRVVBUS是用于控制USB设备的电源,该控制逻辑主要发生在HOST-Device转换时,如果只用HOST或Device功能,则不需要在底板实施电源控制电路,默认为高有效,即输出高电平时,期望VBUS有5V供电,低电平时,关闭5V输出。

而如果要实现OTG的功能,自动在HOST和Device之间转换,则需要用这个引脚来控制电源的输出。

USBx_VBUS引脚用于检测5V电压,不管是HOST还是Device都需要接USB的5V电源,且如果做HOST,在底板上需要有一个5V电源来供这个引脚来检测,这个引脚(或者说USB的VBUS)要求有最少150uF的电容,以防止在插入USB设备时,瞬间拉低5V供电导致错误。

如果VBUS相关的上面两个引脚有问题时,则会报类似下面的错误:

[    2.216291] musb-hdrc musb-hdrc.1.auto: VBUS_ERROR in a_wait_vrise (89, <AValid), retry #1, port1 00000104
[    2.368523] musb-hdrc musb-hdrc.1.auto: VBUS_ERROR in a_wait_vrise (81, <SessEnd), retry #2, port1 00000104

USBx_ID引脚用于做HOST-Device判断,如果不需要则可以通过软件设为HOST或Device,则此时该引脚被bypass。

USBx_CE引脚用于使能外部充电器,主要当AM335x为被充电对象时,AM335x会对状况进行判断以配置是否要使能电池充电器,因为某些情况下使能充电器可能会拉垮主机使得usb通讯中断。不使用请悬空。

7. 板载器件导致引脚不能使用的列表

7.1. I2C0

核心板板载的 PMIC,RTC,EEPROM均使用I2C0来通讯,因此如果使用这个接口连接外部I2C器件,请小心使用以避免干扰板载器件工作。

同时,这两个IO口不能用于其它功能。

引脚编号引脚名称
X3A19X_I2C0_SCL
X3A20X_I2C0_SDA

7.2 网络的MII/RMII接口

我们的核心板板载了phy网络接口,而同时CPU与phy之间的通讯接口也有引出,因此如果使用了phy,则需要注意这些引脚不能使用。

核心板phy说明
PCM-051lan8710默认配置为RMII模式

PCM-060

lan8720只支持RMII模式

我们板载的phy默认工作在RMII模式。根据lan7810的说明书第28页:

核心板被占用的引脚为

phy使用的信号核心板引脚名称引脚编号备注
MDIOX_MDIO_CLKX1B3
MDCX_MDIO_DATAX1B2
TXD0X_RMII1_TXD0/_GPIO0_28
X1A11

TXD1

X_RMII1_TXD1/_GPIO0_21
X1A13
TXENX_RMII1_TXEN/_MCASP1_AXR0X1A10

RXER

X_GMII1_RXER/_MCASP1_FSX

X1A1
CRS_DVX_RMII1_CRS/_MCASP1_ACLKXX1A15
RXD0X_RMII1_RXD0/_GPIO2_21X1A3
RXD1X_RMII1_RXD1/_GPIO2_20X1A4
REF_CLKX_RMII1_REFCLK/_GPIO0_29X1A18

PCM-051 NC by J5

PCM-060 NC by J9

7.3 PMIC使用的引脚

PMIC使用的信号核心板引脚名称引脚编号备注
INT1X_MII1_RCTL/_GPIO3_4X1B6
I2C_SCLX_I2C0_SCLX3A19
I2C_SDAX_I2C0_SDAX3A20

7.4 NAND使用的引脚

请参考硬件手册的 Table 12: NAND GPMC Signal Map 来查看被占用的引脚。

注意虽然NAND使用了这些引脚,但GPMC接口依然可以使用片选来接这些引脚到另一个GPMC子设备上。

7.5 Nor Flash使用的引脚

核心板板载一个spi接口的nor flash,使用spi0接口,在片选CS未选中时,这个spi的flash可以忽略。

Flash使用的信号核心板引脚名称引脚编号备注
CLKX_SPI0_SCLKX3A15
DIX_SPI0_D1X3A35
DOX_SPI0_D0X3A34
CSnX_SPI0_CS0X3A17拉低时flash使能

8.phyCORE-AM335x-R2版本的区别

phyCORE-AM335x-R2是Rev2的意思,该版本与phyCORE-AM335x版本pin对pin兼容。

但BSP在编译时,需要选择R2版本。

名称phyCORE-AM335x-R2phyCORE-AM335x
PCB编号1452.x1358.x
LAN芯片LAN8720LAN8710
温度传感器TMP102

9.网口设计

首先阅读之前的网口的引脚占用情况。

请参考对应的phy芯片文档。

等。

参考原理图:

以太网插座原理图(J00-0065NL)

RX/TX的50欧上拉我们在核心板已经有实施,因此在底板不需要加。

LED的这两个引脚在核心板上电时,板载phy会读取这两个引脚的电平来做配置,因此必须在系统复位时,做对应的拉高拉低操作。

参考lan8710/8720的说明书,接led时有相应的要求如下:

引脚编号名称复位时需要芯片自带LED
X3A13X_ETH_LED2/_INTSELn拉高上拉

接阴极

X3A14X_ETH_LED1/_REGOFF拉低下拉

接阳极

也就是说,LED接的方向要注意,使得刚好一个上拉一个下拉。


10.芯片自带触摸屏接口

am335x自带一个电阻触摸屏接口,接触摸屏的线序不能调整,是固定的,如4线接法为:

编号引脚名触摸屏信号
X3B38X_AIN0X+
X3B37X_AIN1X-
X3B35X_AIN2Y+
X3B34X_AIN3Y-

根据

https://e2e.ti.com/support/processors/f/791/t/266323?AM335x-5-wire-touch-screen-connection

5线触摸屏接法:

11.pin mux限制

功能冲突1冲突2
GPMC

A[12..15]与LCD_D[8..11]

可选用mux模式

AD[8..15]与LCD_D[23..16]

可选择RGB565 LCD

12.调试串口

默认的调试串口是uart0,bootloader 和 Linux kernel 都会使用这个接口。

引脚编号引脚名称
X3A32X_UART0_TXD
X3A33X_UART0_RXD

13.EMMC版本的区别

  • 启动引脚配置不同。
  • MMC1被占用。
  • GPMC接口由于AD的低位被用于EMMC因此无法使用。
  • 根据硬件手册L-830e_3,以下引脚在EMMC版本上是NC的
引脚编号引脚名称
X1A23X_GPMC_AD0
X1A24X_GPMC_AD2
X1A25X_GPMC_AD4
X1A26X_GPMC_AD5
X1A28X_GPMC_AD3
X1A29X_GPMC_AD6
X1A30X_GPMC_AD7
X1A34X_GPMC_BE0n_CLE
  • No labels