`

CC2530芯片的IEEE Mac地址

 
阅读更多

        2.4G的CC253X芯片由TI公司生产,可以很容易建立在基于IEEE802.15.4标准协议上面,现今多数Zigbee传感节点都是用CC253X的芯片。

        CC253X的IEEE地址共分为三种:Primary IEEE, Secondary IEEE和Random IEEE。其中Primary IEEE地址在生产时已经由TI预先确定,无法更改,而对于Secondary IEEE地址用户则可以更改,如果无法获取Primary IEEE 和 Secondary IEEE时,则会是用第三种随机地址来代替自己的Mac地址。

 

(1)Primary IEEE

      首先了解一下芯片Flash Information Page ,芯片存储闪存数据信息的起始地址为0x7800,所以在ioCC2530.h头文件中定义的Flash Information Page的起始位置,#define P_INFOPAGE  PXREG( 0X7800 ),

另外,Primary IEEE地址就存储在该page中,其存储的位置偏移量为0xC, 所以要拿到Primary IEEE的地址,只需

 

uint8 *macaddrptr = (uint8 *)(P_INFOPAGE+HAL_INFOP_IEEE_OSET);
for(int i=0;i<8;i++)
{
     devmacaddr[i] = macaddrptr[i];
}

 其中P_INFOPAGE = 0x7800,即存储地址的起始位置,HAL_INFOP_IEEE_OSET为0xC,是地址存放位置的偏移量,因为地址为8个字节,所以读取向后读取8个字节就是其Mac地址。

 

 

(2)Secondary IEEE

       根据CC253X的数据手册,Secondary IEEE存放在flash的最后偏移量为0x18(24)的地方,对于F-256的CC253X,其flash有256K,即246*1024=262144字节,所以其地址存放在262144-24=262120=0x3FFE8的位置,因为地址长度为8个字节,所以地址的范围为0x3FFE8~0x3FFEF。

获取地址的函数:

 

HalFlashRead(HAL_FLASH_IEEE_PAGE, HAL_FLASH_IEEE_OSET, aExtendedAddress, Z_EXTADDR_LEN);

 其中HAL_FLASH_IEEE_PAGE = 127,即最后一页,HAL_FLASH_IEEE_OSET = (2048-16-8)=2024,即偏移量。由于是最后一页,所以要对MEMCTR(存储控制寄存器)进行控制。具体代码如下:

 

void HalFlashRead(uint8 pg, uint16 offset, uint8 *buf, uint16 cnt)
{
  // Calculate the offset into the containing flash bank as it gets mapped into XDATA.
  uint8 *ptr = (uint8 *)(offset + 0x8000) + ((pg % 16) * 2048);//每块的为16页,((pg % 16) *                                                               //  2048)求出最后一块中地址                                                                //所在那一页之前的所有地址,                                                               //加上地址所在那一页的偏移量
  uint8 memctr = MEMCTR;  // Save to restore.

  pg /= HAL_FLASH_PAGE_PER_BANK;  // Calculate the flash bank from the flash page.

  // Calculate and map the containing flash bank into XDATA.
  MEMCTR = (MEMCTR & 0xF8) | pg;   //将存储控制器指向最后一块
  while (cnt--)
  {
    *buf++ = *ptr++;
  }
  MEMCTR = memctr;

}

 

 

 

 

 

 

分享到:
评论

相关推荐

    cc2420无线传感芯片说明手册

    TI公司的无线传感芯片cc2420使用手册 目录参考 Table of contents 1 Abbreviations_________________________________________________________________5 2 References ________________________________________...

    cc2530中文数据手册完全版

    cc2530中文数据手册完全版 非常详细的解释)好东西TEXAS 蜂舞 INSTRUMENTS www.zlgbee-sh.c FENG WI 郑州新双恒 www.ti.com 36寄存器 ∴51 4电源管理和时钟 n52 4.1电源管理简介 53 4.1.1主动和空闲模式 4.1,2PM1.54...

    基于ZIGBEE技术的无线抄表系统的设计【毕业作品】.doc

    关键词:ZIGBEE 抄表 近距离传输 CC2430 Wireless meter reading system based on Zigbee Abstract IEEE802.15.4/ZIGBEE protocol including the standard by the IEEE802.15.4 PHY and MAC layer,ZIGBEE network ...

    通信与网络中的CSMA协议在无线传感器网络中的实现

    CSMA协议是网络中运用得最为广泛的竞争协议,因此无线传感器网络的MAC层大多使用CSMA机制来提供... 本文使用TI公司的MSP4301611超低功耗MCU,以及CC2420射频芯片作为硬件实验平台,充分利用CC2420部分IEEE802.15.4协议

    ZigBee无线通信技术笔记

    第3章 2.4GHz无线收发芯片CC2420 22 3.1 CC2420的主要性能特点 22 3.1.1 引脚分配 23 3.1.2 电路描述 24 3.2 SPI 4线串行配置和数据接口 25 3.2.1 引脚配置 25 3.2.2 寄存器访问 25 3.2.3 状态字节 27 3.2.4 RAM访问...

    基于Z-Stack的ZigBee协议栈分析

    第一章:绪论。简要介绍了无线传感器网络的概念,ZigBee技术的发展、 优点、国内外研究现状及关键技术并指出了本文的研究方向和内容。...计,其中对部分原语的操作实现将利用CC2430射频芯片来完成。

    CSMA协议在无线传感器网络中的实现

    本文使用MSP4301611超低功耗MCU,以及CC2420射频芯片作为硬件实验平台,充分利用CC2420部分IEEE802.15.4协议MAC封装的特性,设计并实现了一个全新的、灵活的CSMA协议。

    论文研究-基于WSN技术油罐区消防报警调度系统的设计.pdf

    针对近年来WSN技术在大规模、自组织性通信方面的发展,以及在油料储备库安全防护的实际需求,设计出了一种新的基于使用嵌入式处理器ARM9、兼容2.4 GHz/IEEE 802.15.4标准的射频芯片CC2420等核心硬件组建而成的消防...

    无线传感器网络CSMA协议的设计与实现

    本文使用TI公司的MSP4301611超低功耗MCU,以及CC2420射频芯片作为硬件实验平台,充分利用CC2420部分IEEE 802.15.4协议MAC封装的特性,设计并实现了一个全新的、灵活的CSMA协议。

    一种无线传感器网络CSMA协议的设计与实现

    本文深入研究了射频芯片CC2420的各种特性,针对其特性设计并实现了一个完善的CSMA机制,包括物理层信道信号强度采样、强度阈值的动态更新以及MAC层的CSMA机制;详细阐述了信道监测中使用的判定规则、各关键阈值参数...

    通信与网络中的家居安防的“左右护法”:GPRS和ZigBee

    它的基础是IEEE802.15.4技术标准,主要规范了物理层和MAC层的协议。ZigBee联盟制定了应用规范层和应用汇聚层。  它的应用方向定位于家庭自动化、楼宇自动化、传感器应用等。该系统的无线网络通信模块采用CC2430,...

    Zigbee 技術及介紹短篇文章綜合PDF檔 (2)

    基於IEEE802.11MAC協議的性能分析與仿真 基於TinyOS的嵌入式無線傳感器網絡設計 基於wsn的井下巷道瓦斯監測系統設計 基於Zigbee 技術的智能家居系統設計 基於ZigBee 技術的路燈無線網絡控制系統設計 基於...

Global site tag (gtag.js) - Google Analytics