Phytec中国的wiki
support@phytec.cn
热线:0755-61802110-803
同时请参考TI文档:
http://processors.wiki.ti.com/index.php/AM335x_Schematic_Checklist
和在下面链接中的硬件手册。
这是我们核心板很重要的文档,做硬件设计请一定仔细阅读
1.硬件设计相关资源
- 名称:
- PCM-051 核心板:PCM-051 phyCORE-AM335x
- PCM-051 PCB:1358
- PCM-060 r2核心板:PCM-060 phyCORE-AM335x R2
- PCM-060 PCB:1452
- RDK开发板:PCM-953 Carrier Board for phyCORE-AM335x
- RDK开发板PCB:1359
- Wega开发板:PBA-CD-02 phyBOARD Wega-AM335
- Wega开发板PCB:1405
- 核心板尺寸图:
- 对应底板使用的插座:
- 60pin座子规格书 REF-177862-03 (VM240)
- 50pin座子规格书 REF-177861-03 (VM247)
- 核心板连接器资料 / SOM connector infomation
- 引脚列表:核心板硬件手册 Table 3。
- 引脚顺序/方向:核心板硬件手册 Figure 4。
- phyCORE AM335x 核心板引脚复用、与CPU引脚对照表,可实时搜索
- Altium Designer 器件库
- 核心板贴片图:
- 核心板dxf图/step 3D图
- PCM-060 r2版本
- 3D Step 文件,请右键另存为下载或者用下载工具。
- dxf图
- PCM-051
- 3D Step 文件,请右键另存为下载或者用下载工具。
- dxf图
- PCM-060 r2版本
2.上电时序
AM335x SOC有多个需要供电的区域,且对他们的上电顺序有要求。如datasheet的 Figure 6-2。
因此,为了防止在核心板的IO还未上电时,外部器件通过IO口向核心板输出,我们有一个信号
引脚编号 | 引脚名称 |
---|---|
X3B6 | VAUX2_3P3V |
来作为参考。该信号在核心板上电完成后输出3.3V,因此就可以用它来控制外部器件,有以下方法可以使用
- 使用一个具有OE控制的总线驱动器件。
- 直接使用该信号控制所有外部器件的电源。
同时该信号也是一个电源,他作为电源有以下两个用途
- 用于给外部器件供电(最大150mA)
- 用于作为外部器件与核心板通讯时的参考电压,因为它同时也是核心板的IO口电压。
3.启动配置引脚
- X_LCD_D[15:0]
这16个引脚在开机时,是作为启动配置的引脚,他们的会在
引脚编号 | 引脚名称 |
---|---|
X3A30 | X_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_7 | EMU0 |
X1B18 | X_GPIO3_8 | EMU1 |
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口不能用于其它功能。
引脚编号 | 引脚名称 |
---|---|
X3A19 | X_I2C0_SCL |
X3A20 | X_I2C0_SDA |
7.2 网络的MII/RMII接口
我们的核心板板载了phy网络接口,而同时CPU与phy之间的通讯接口也有引出,因此如果使用了phy,则需要注意这些引脚不能使用。
核心板 | phy | 说明 |
---|---|---|
PCM-051 | lan8710 | 默认配置为RMII模式 |
PCM-060 | lan8720 | 只支持RMII模式 |
我们板载的phy默认工作在RMII模式。根据lan7810的说明书第28页:
核心板被占用的引脚为
phy使用的信号 | 核心板引脚名称 | 引脚编号 | 备注 |
---|---|---|---|
MDIO | X_MDIO_CLK | X1B3 | |
MDC | X_MDIO_DATA | X1B2 | |
TXD0 | X_RMII1_TXD0/_GPIO0_28 | X1A11 | |
TXD1 | X_RMII1_TXD1/_GPIO0_21 | X1A13 | |
TXEN | X_RMII1_TXEN/_MCASP1_AXR0 | X1A10 | |
RXER | X_GMII1_RXER/_MCASP1_FSX | X1A1 | |
CRS_DV | X_RMII1_CRS/_MCASP1_ACLKX | X1A15 | |
RXD0 | X_RMII1_RXD0/_GPIO2_21 | X1A3 | |
RXD1 | X_RMII1_RXD1/_GPIO2_20 | X1A4 | |
REF_CLK | X_RMII1_REFCLK/_GPIO0_29 | X1A18 | PCM-051 NC by J5 PCM-060 NC by J9 |
7.3 PMIC使用的引脚
PMIC使用的信号 | 核心板引脚名称 | 引脚编号 | 备注 |
---|---|---|---|
INT1 | X_MII1_RCTL/_GPIO3_4 | X1B6 | |
I2C_SCL | X_I2C0_SCL | X3A19 | |
I2C_SDA | X_I2C0_SDA | X3A20 |
7.4 NAND使用的引脚
请参考硬件手册的 Table 12: NAND GPMC Signal Map 来查看被占用的引脚。
注意虽然NAND使用了这些引脚,但GPMC接口依然可以使用片选来接这些引脚到另一个GPMC子设备上。
7.5 Nor Flash使用的引脚
核心板板载一个spi接口的nor flash,使用spi0接口,在片选CS未选中时,这个spi的flash可以忽略。
Flash使用的信号 | 核心板引脚名称 | 引脚编号 | 备注 |
---|---|---|---|
CLK | X_SPI0_SCLK | X3A15 | |
DI | X_SPI0_D1 | X3A35 | |
DO | X_SPI0_D0 | X3A34 | |
CSn | X_SPI0_CS0 | X3A17 | 拉低时flash使能 |
8.phyCORE-AM335x-R2版本的区别
phyCORE-AM335x-R2是Rev2的意思,该版本与phyCORE-AM335x版本pin对pin兼容。
但BSP在编译时,需要选择R2版本。
名称 | phyCORE-AM335x-R2 | phyCORE-AM335x |
---|---|---|
PCB编号 | 1452.x | 1358.x |
LAN芯片 | LAN8720 | LAN8710 |
温度传感器 | TMP102 | 无 |
9.网口设计
首先阅读之前的网口的引脚占用情况。
请参考对应的phy芯片文档。
- http://www.microchip.com/wwwproducts/en/LAN8720A
- http://www.microchip.com/wwwproducts/en/LAN8710A
- AN8.13 - Suggested Magnetics
- LAN8720AI QFN Rev A Schematic Checklist
等。
参考原理图:
以太网插座原理图(J00-0065NL)
RX/TX的50欧上拉我们在核心板已经有实施,因此在底板不需要加。
LED的这两个引脚在核心板上电时,板载phy会读取这两个引脚的电平来做配置,因此必须在系统复位时,做对应的拉高拉低操作。
参考lan8710/8720的说明书,接led时有相应的要求如下:
引脚编号 | 名称 | 复位时需要 | 芯片自带 | LED |
---|---|---|---|---|
X3A13 | X_ETH_LED2/_INTSELn | 拉高 | 上拉 | 接阴极 |
X3A14 | X_ETH_LED1/_REGOFF | 拉低 | 下拉 | 接阳极 |
也就是说,LED接的方向要注意,使得刚好一个上拉一个下拉。
10.芯片自带触摸屏接口
am335x自带一个电阻触摸屏接口,接触摸屏的线序不能调整,是固定的,如4线接法为:
编号 | 引脚名 | 触摸屏信号 |
---|---|---|
X3B38 | X_AIN0 | X+ |
X3B37 | X_AIN1 | X- |
X3B35 | X_AIN2 | Y+ |
X3B34 | X_AIN3 | Y- |
根据
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 都会使用这个接口。
引脚编号 | 引脚名称 |
---|---|
X3A32 | X_UART0_TXD |
X3A33 | X_UART0_RXD |
13.EMMC版本的区别
- 启动引脚配置不同。
- MMC1被占用。
- GPMC接口由于AD的低位被用于EMMC因此无法使用。
- 根据硬件手册L-830e_3,以下引脚在EMMC版本上是NC的
引脚编号 | 引脚名称 |
---|---|
X1A23 | X_GPMC_AD0 |
X1A24 | X_GPMC_AD2 |
X1A25 | X_GPMC_AD4 |
X1A26 | X_GPMC_AD5 |
X1A28 | X_GPMC_AD3 |
X1A29 | X_GPMC_AD6 |
X1A30 | X_GPMC_AD7 |
X1A34 | X_GPMC_BE0n_CLE |