1107482_ja-JP

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

1107482_ja-JP

1107482_ja-JP

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.概略図

pastedImage_10.png

pastedImage_11.png

 

pastedImage_12.png

この設計例では、

  • 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データシートを参照してください。

pastedImage_23.png

( 変更された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チップのドライバーコードはありません。

Tags (1)
No ratings
Version history
Last update:
‎01-06-2026 01:57 AM
Updated by: