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.

关于TM4C1294 芯片的MAC地址获取的问题!

哪位知道TM4C1294芯片的MAC地址是怎么分配的,是TI出厂就已经申请并保存在芯片内部的,还是需要我们使用这个芯片的厂家自己去申请MAC地址?

请TI的工作人员能给个回复!谢谢!

  • 出厂就有一个Mac地址的。应该是AC-DE-48-00-00-80这个地址。但是你也可以自己写进去一个的。

  • 请问一下,出厂的这个MAC地址保存在哪里的

  • 保存在寄存器中的

    看看这段描述

    //*****************************************************************************
    //
    //! Gets one of the MAC addresses stored in the Ethernet controller.
    //!
    //! \param ui32Base is the base address of the controller.
    //! \param ui32Index is the zero-based index of the MAC address to return.
    //! \param pui8MACAddr is the pointer to the location in which to store the
    //! array of MAC-48 address octets.
    //!
    //! This function reads the currently programmed MAC address into the
    //! \e pui8MACAddr buffer. The \e ui32Index parameter defines which of the
    //! hardware's MAC addresses to return. The number of MAC addresses supported
    //! by the controller may be queried using a call to EMACNumAddrGet().
    //! Index 0 refers to the MAC address of the local node. Other indices are
    //! used to define MAC addresses when filtering incoming packets.
    //!
    //! The address is written to the pui8MACAddr array ordered with the first byte
    //! to be transmitted in the first array entry. For example, if the address
    //! is written in its usual form with the Organizationally Unique Identifier
    //! (OUI) shown first as:
    //!
    //! AC-DE-48-00-00-80
    //!
    //! the data is returned with 0xAC in the first byte of the array, 0xDE in
    //! the second, 0x48 in the third and so on.
    //!
    //! \return None.
    //
    //*****************************************************************************

  • 谢谢回复,这个我是知道的,但是我项知道的是TI公司有没有给每个芯片申请一个标准的MAC地址;

    还是说需要我们使用芯片的厂家自己去申请标准MAC地址;

    上面苦行曾说有一个出厂的MAC地址,这个地址是保存在什么地方的?
     

  • 我的理解是,这个MAC地址是保存在ram中的,在我上面说的寄存器中存放。出厂的时候寄存器有个默认值,但是用户可以修改。

  • 出厂的MAC地址由TI 向IEEE申请分配的,不用你们申请。通过LM Flash Programmer可以访问和修改

     

  • 使用DK-TM4C129x板子测试网口的数据如下

    1.出厂的时候肯定是有一个Mac地址的,可以从板子上TI贴的标签可以看到。但是我看过几个板子,这个Mac地址应该不是唯一的,因为贴的标签是不同的。

    2.当使用LMflash解锁后,Mac地址恢复了FF了,读到的数据都是FF。Mac地址为FF-FF-FF-FF-FF-FF

    3.可以使用lmflash给芯片烧写新的Mac地址。但是注意这次烧写的Mac地址是暂时的(不使能commit Mac address的时候),当你重新上电的时候,由变成FF了。所以需要板子每次重新上电的时候,分配一个Mac地址给板子。这个时候可见Mac地址是保存在RAM中的,因为他掉电就消失了。

    4.当使能LMflash中的commit Mac address的时候,可以发现,烧写的Mac地址居然不会掉电消失,说明这时候,Mac地址是保存在rom或者eeprom中的。

  • 空的芯片默认的MAC地址是不是可以使用FlashUserGet(&ui32User0, &ui32User1);读取?我使用这个函数读取的MAC地址全部是0XFFFFFFFF;  我一直没搞明白这个芯片的出厂默认MAC地址到底存放在哪里了,使用哪个函数才能正确读取到!!!难道是有的版本的芯片是没有默认出厂MAC地址???我的芯片上面的印字是G4版本;一直也找不到TI的技术人员能给一个详细的说明!我都已经调试了差不多5片了,都是一样的结果,没有看到过什么默认MAC地址

  • 用LM这个软件读取也是一样的吗?新的片子,不要下载程序,不要擦除,先读取Mac试试看看。

  • 你好,

    我读出来的MAC地址也是全FF,试了2块芯片也是FF,没有下载程序,也没有擦除,是先读取MAC的。

    请问下@xyz549040622  你能读出有效默认的MAC地址吗?

  • 我没有新的TM4C129x新的板子了,手头的板子擦除了好几遍,都成0xff了,无法确定实否有默认mac地址这回事。