TL8263芯片的MAC地址是程序写入的,还是出厂会自带唯一的?
如题“TL8263芯片的MAC地址是程序写入的,还是出厂会自带唯一的?”
我在看TL8263的Beacon代码:
u32 *pmac = (u32 *) CFG_ADR_MAC; //0x3fec
if (*pmac != 0xffffffff)
{
memcpy (tbl_mac, pmac, 6);
updateAdvDataMacAddr();
}
发现MAC地址永远调用的是用户自定义的tbl_mac。
我试着改了tbl_mac,烧录到DEMO板上,也证实了这一问题。
我的问题是:
1、TL8263的芯片出厂时,有没有唯一的MAC地址?如果有,程序要怎么改才能读出和使用这唯一的MAC?
2、如果没有MAC地址,那就意味着大批量时要自己定义不同的MAC,烧录到IC中,这个怎么解决?还有怎么自己定义MAC才能通过认证?
3、TL的其他芯片8266、8267在MAC地址上,是否和8263一样?
2. 你做的修改MAC地址的测试时,需要注意:在擦除flash时是不是把 CFG_ADR_MAC 宏定义的地址上的MAC值擦除掉了。如果被擦除了,在程序初始化时,会读该地址时,就会返回0xffffffff,然后就会使用 tbl_mac 数组中的用户自定义的值。