i.MXRT1050 への移植LAN8720A <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
i.MXRT1050 MCUは10M/100MイーサネットMACをサポートします。現在、LAN8720Aは多くのネットワーク設計で使用される非常に一般的なPHYです。このドキュメントでは、i.MXRT1050 で LAN8720A を使用する方法について説明します。 1.概略図 この設計例では、 ENET_RST に接続されています GPIO_AD_B1_04 ENET_INT はGPIO_AD_B0_15に接続されています 2. ソースコードの修正 i.MXRT1050 SDK では、PHY のソース コード ファイルは fsl_phy.c ですとfsl_phy.h.LAN8720Aのレジスタをソースコードに追加する必要があります。以下はLAN8720Aのレジスタです。詳細については、LAN8720Aデータシートを参照してください。 ( 変更されたfsl_phy.cとfsl_phy.hが添付されています) pinmux.c では、ENET_INTとENET_RSTのGPIOマルチプレクサ設定を変更します。 IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B1_04_GPIO1_IO20, 0U); IOMUXC_SetPinMux(IOMUXC_GPIO_AD_B0_15_GPIO1_IO15, 0U); IOMUXC_SetPinConfig(IOMUXC_GPIO_AD_B1_04_GPIO1_IO20, 0xB0A9u); IOMUXC_SetPinConfig(IOMUXC_GPIO_AD_B0_15_GPIO1_IO15, 0xB0A9u); これは、main() 関数で PHY をリセットするためのソースコードの一部です。 gpio_pin_config_t gpio_config = {kGPIO_DigitalOutput, 0, kGPIO_NoIntmode}; GPIO_PinInit(GPIO1, 20, &gpio_config); GPIO_PinInit(GPIO1, 15, &gpio_config); GPIO_WritePinOutput(GPIO1, 15, 1); GPIO_WritePinOutput(GPIO1, 20, 0); delay(); GPIO_WritePinOutput(GPIO1, 20, 1); その他のサンプル・コードについては、i.MXRT SDK パッケージの demo_apps/lwip を参照してください。 参考情報: i.MXRT1050 Webページ: i.MX RT1050 MCU/Applications Crossover Processor |® Arm Cortex-M7® @600 MHz、512KB SRAM |NXPの MCUXpresso SDK web page : MCUXpresso SDK|NXP Re: i.MXRT1050 への LAN8720A の移植 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
公式サイトで提供されているi.MXRT1050 SDKにはLAN8720Aチップのドライバーコードはありません。
查看全文