お世話になっております。
RX71MとLAN8710をRMIIで配線した基板で、TCP/IP M3S-T4-Tinyサンプルプログラムを組み込んだところ、main() -> lan_open()でエラーが返ってきてしまい先に進めなくなってしまいました。
(phy_init関数内でタイムアウトエラーとなっているようでした)
他社製のTCP/IPプロトコルスタックのライブラリを使用したプログラムではRMIIでTCP/IP通信が行えていますので、ハードウェアは問題ないと考えています。
何が原因かわかりますでしょうか?
・サンプルプログラム入手先
https://www.renesas.com/jp/ja/software/D6000791.html
・開発環境
CPU:RX71M 176pin
統合開発環境:e2studio v6.3.0
コンパイラ:CC-RX v2.08.00
デバッガ:E1
・サンプルプログラム変更箇所
\rx71m_rsk\r_config\r_ether_rx_config.hのdefineを変更
#define ETHER_CFG_MODE_SEL 1
#define ETHER_CFG_USE_LINKSTA 0 \rx71m_rsk\r_pincfg\r_pinset.cに以下を追加
#define ETHER_CFG_USE_LINKSTA 0
/************************************************************************************************************************ Function Name: R_ETHER_PinSet_ETHERC0_RMII* Description : This function initializes pins for r_ether_rx module* Arguments : none* Return Value : none***********************************************************************************************************************/void R_ETHER_PinSet_ETHERC0_RMII(){ R_BSP_RegisterProtectDisable(BSP_REG_PROTECT_MPC);
/* Set REF50CK0 pin */ MPC.P76PFS.BYTE = 0x12U; PORT7.PMR.BIT.B6 = 1U;
/* Set RMII0_TXD_EN pin */ MPC.P80PFS.BYTE = 0x12U; PORT8.PMR.BIT.B0 = 1U;
/* Set RMII0_TXD1 pin */ MPC.P82PFS.BYTE = 0x12U; PORT8.PMR.BIT.B2 = 1U;
/* Set RMII0_TXD0 pin */ MPC.P81PFS.BYTE = 0x12U; PORT8.PMR.BIT.B1 = 1U;
/* Set RMII0_RXD1 pin */ MPC.P74PFS.BYTE = 0x12U; PORT7.PMR.BIT.B4 = 1U;
/* Set RMII0_RXD0 pin */ MPC.P75PFS.BYTE = 0x12U; PORT7.PMR.BIT.B5 = 1U;
/* Set RMII0_RX_ER pin */ MPC.P77PFS.BYTE = 0x12U; PORT7.PMR.BIT.B7 = 1U;
/* Set RMII0_CRS_DV pin */ MPC.P83PFS.BYTE = 0x12U; PORT8.PMR.BIT.B3 = 1U;
/* Set ET0_MDC pin */ MPC.P72PFS.BYTE = 0x11U; PORT7.PMR.BIT.B2 = 1U;
/* Set ET0_MDIO pin */ MPC.P71PFS.BYTE = 0x11U; PORT7.PMR.BIT.B1 = 1U;
R_BSP_RegisterProtectEnable(BSP_REG_PROTECT_MPC);}
/************************************************************************************************************************ Function Name: R_ETHER_PinSet_ETHERC1_RMII* Description : This function initializes pins for r_ether_rx module* Arguments : none* Return Value : none***********************************************************************************************************************/void R_ETHER_PinSet_ETHERC1_RMII(){ R_BSP_RegisterProtectDisable(BSP_REG_PROTECT_MPC);
/* Set REF50CK1 pin */ MPC.PG0PFS.BYTE = 0x15U; PORTG.PMR.BIT.B0 = 1U;
/* Set RMII1_TXD_EN pin */ MPC.P60PFS.BYTE = 0x15U; PORT6.PMR.BIT.B0 = 1U;
/* Set RMII1_TXD1 pin */ MPC.PG4PFS.BYTE = 0x15U; PORTG.PMR.BIT.B4 = 1U;
/* Set RMII1_TXD0 pin */ MPC.PG3PFS.BYTE = 0x15U; PORTG.PMR.BIT.B3 = 1U;
/* Set RMII1_RXD1 pin */ MPC.P95PFS.BYTE = 0x15U; PORT9.PMR.BIT.B5 = 1U;
/* Set RMII1_RXD0 pin */ MPC.P94PFS.BYTE = 0x15U; PORT9.PMR.BIT.B4 = 1U;
/* Set RMII1_RX_ER pin */ MPC.PG1PFS.BYTE = 0x15U; PORTG.PMR.BIT.B1 = 1U;
/* Set RMII1_CRS_DV pin */ MPC.P92PFS.BYTE = 0x15U; PORT9.PMR.BIT.B2 = 1U;
/* Set ET1_MDC pin */ MPC.P31PFS.BYTE = 0x14U; PORT3.PMR.BIT.B1 = 1U;
/* Set ET1_MDIO pin */ MPC.P30PFS.BYTE = 0x14U; PORT3.PMR.BIT.B0 = 1U;
jg-san,Hello.
> but I can ping 192.168.0.3Do you mean ping failed??
How about open API?To where you have seen it is working and from where it is not working?
Hi ! ほや ,
CPU:RX64M 176pin
統合開発環境:e2studio v7.0
images are setting and result
jg-san,Thank you.However, it seems too hard to implement the driver all by yourself.Please try using "FIT configurator" as follows:1. Launch e2 studio2. Create a new RX64M project, configure C language spec as C99, remove ./generate/*.c files (need only ./generate/iodefine.h)3. Open FIT Configurator (If no such views, you'll find it in "Renesas Views")4. Add FIT module named r_t4_rx and add all other dependency modules (r_bsp, r_ether_rx, r_sys_time_rx).5. Press "Generate Code" and buildPlease also see related documents found at <project_folder>/r_t4_rx/doc/.Hope it works.
jg-san,
FIT module r_t4_rx doesn't work alone. It works together with other related modules.I don't think you can (and me neither) make it work in main.c.
If you use Smart Configurator, you need to use the way it is, or use FIT configurator as I told.
Hi ほや,
I use FIT and I can't solve this error.
What am I missing api or setting?
thank you for your help.