This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] CCS/TM4C1294NCPDT:TI-RTOS、HttpGet exemple、Board_initEMAC ()问题

Guru**** 2347070 points
Other Parts Discussed in Thread: UNIFLASH
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/608568/ccs-tm4c1294ncpdt-ti-rtos-httpget-exemple-board_initemac-problem

器件型号:TM4C1294NCPDT
主题中讨论的其他器件:UNIFLASH

工具/软件:Code Composer Studio

大家好、evrybody、

我正在尝试运行为 Tiva C Lunchpad 提供的 HttpGet exemple"processors.wiki.ti.com/.../Tiva_C_Series_TM4C1294_LaunchPad"。

当我尝试在 CCS 上进行调试时、他会记下并允许我在控制台上看到此消息"更改 macAddress 变量以匹配您的板 MAC 贴纸"此消息由功能 EK_TM4C1294XL_initEMAC ()提供

/*
=== EK_TM4C1294XL_initEMAC ===
/void
EK_TM4C1294XL_initEMAC (void)
{
uint32_t ulUser0、ulUser1;

/*获取 MAC 地址*/
FlashUserGet (&ulUser0、&ulUser1);
if ((ulUser0!= 0xffffffff)&&(ulUser1!= 0xffffffff)){
System_printf ("在闪存中使用 MAC 地址\n");
/*
*将24/24拆分 MAC 地址从 NV RAM 转换为32/16拆分 MAC
对硬件寄存器进行编程、然后对 MAC 进行编程所需的*地址
以太网控制器寄存器中的*地址。
*
MacAddress[0]=((ulUser0 >> 0)& 0xff);
MacAddress[1]=((ulUser0 >> 8)& 0xff);
MacAddress[2]=((ulUser0 >> 16)& 0xff);
MacAddress[3]=((ulUser1 >> 0)& 0xff);
MacAddress[4]=((ulUser1 >> 8)& 0xff);
MacAddress[5]=((ulUser1 >> 16)& 0xff);
}
否则、如果(macAddress[0]= 0xff && macAddress[1]= 0xff &&
MacAddress[2]= 0xff && macAddress[3]= 0xff &&
MacAddress[4]= 0xff && macAddress[5]= 0xff){
system_abort ("更改 macAddress 变量以匹配您的板 MAC 贴纸");
}

GPIOPinConfigure (GPIO_PF0_EN0LED0);/* EK_TM4C1294XL_USR_D3 *
GPIOPinConfigure (GPIO_PF4_EN0LED1);/* EK_TM4C1294XL_USR_D4 *
GPIOPinTypeEthernetLED (GPIO_PORTF_BASE、GPIO_PIN_0 | GPIO_PIN_4);


/*调用 EMAC_init 后、无法更改 EMAC_CONFIG */
emac_init();
} 

有人可以告诉我、为什么 Mac 地址的获取效果不好?
或者我出了什么问题?

谢谢、

BR  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

     调用 FlashUserGet 后、您得到了什么值?  它是否与 EK-TM4C1294 LaunchPad 背面显示的 MAC 地址匹配?

     您还可以使用 LM 闪存编程器或 Uniflash 读取 LaunchPad 板的 MAC 地址。 它应与电路板背面标签上的 MAC 地址匹配。

     

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你好,查尔斯!

    调用 FlashUserGet 后,MAC = FF-FF-FF-FF-FF-FF-FF。 当我使用 Uniflash 读取 MAC 时、也是如此、我的 MAC = FF-FF-FF-FF-FF-FF-FF。

    在调用 FlashUserGet 之前 、我看到 ulUser0 0x2000F7C4和 ulUser1=0x00000020。 调用函数后、它们会更改为 ulUser0 0xFFFFFFFF 和 ulUser1=0xFFFFFFFF。

    BR、

    图菲克

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Toufik、
    您说过、即使在下电上电后、您仍将使用 Uniflash 永久读取所有 F 的 MAC?

    是否可以再次使用 Uniflash 重新编程 MAC 地址?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    查尔斯

    使用 Uniflash 更改 MAC 地址的解决方案效果良好。

    非常感谢!!

    图菲克