z-stack mac api & ti cc2530 platform introduction

28
Z-stack MAC API & TI cc2530 platform introduction Speaker: 葉葉葉 Date: 2010/11/16 1

Upload: snow

Post on 13-Jan-2016

237 views

Category:

Documents


1 download

DESCRIPTION

Z-stack MAC API & TI cc2530 platform introduction. Speaker: 葉俊克 Date: 2010/11/16. Outline. ZigBee Architecture MAC Layer Operation Scenarios Introduction to Platform(CC 2530ZDK) Directory Hierarchy in Developing An Application Demo Environment Demo. ZigBee Architecture. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Z-stack MAC API & TI cc2530 platform introduction

Z-stack MAC API & TI cc2530 platform introduction

Speaker: 葉俊克Date: 2010/11/16

1

Page 2: Z-stack MAC API & TI cc2530 platform introduction

Outline

• ZigBee Architecture • MAC Layer Operation Scenarios• Introduction to Platform(CC 2530ZDK)• Directory Hierarchy in Developing An

Application• Demo Environment• Demo

2

Page 3: Z-stack MAC API & TI cc2530 platform introduction

ZigBee Architecture

3

Page 4: Z-stack MAC API & TI cc2530 platform introduction

ZigBee Node Type• ZigBee Node Type :

– Coordinator • Forms network• Routes packets• Security Trust Center• Allows nodes to join network

– Router• Join network• Routes packets• Allows nodes to join network

– End-Device• Join network• Battery operated and may sleep• Smallest code size

4

Page 5: Z-stack MAC API & TI cc2530 platform introduction

MAC APINAME DESCRIPTION

MAC_MlmeResetReq() This direct execute function resets the MAC.

MAC_MlmeScanReq() This function initiates an energy detect, active, passive, or orphan scan on one or more channels.

MAC_MLME_SCAN_CNF Callback Function Event. This event sends data from the MAC to the application.

MAC_MlmeSetReq() This direct execute function sets an attribute value in the MAC PIB.

MAC_MlmeStartReq() This function is called by a coordinator or PAN coordinator to start or reconfigure a network.

MAC_MLME_START_CNF Callback Function Event.

MAC_MlmeAssociateReq() This function sends an associate request to a coordinator device.

MAC_MLME_ASSOCIATE_IND Callback Function Event.

MAC_MlmeAssociateRsp() This function sends an associate response to a device requesting to associate.

MAC_MLME_ASSOCIATE_CNF Callback Function Event. 5

Page 6: Z-stack MAC API & TI cc2530 platform introduction

MAC Layer Operation ScenariosNon Beacon-Enabled Network Start

6

Page 7: Z-stack MAC API & TI cc2530 platform introduction

Non Beacon-enabled Network Scan and Associate

7

Page 8: Z-stack MAC API & TI cc2530 platform introduction

MAC API (Con.)

8

NAME DESCRIPTION

MAC_BEACON_NOTIFY_IND Callback Function Event. This event sends data from the MAC to the application.

MAC_MLME_SYNC_LOSS_IND Callback Function Event.

MAC_MlmeOrphanRsp() This function is called in response to an orphan notification from a peer device.

MAC_McpsDataReq() This function sends application data to the MAC for transmission in a MAC data frame.

MAC_MCPS_DATA_IND This event sends data from the MAC to the application.

MAC_MCPS_DATA_CNF Callback Function Event.

MAC_McpsPollReq() This function is used to request pending data from the coordinator.

MAC_MCPS_POLL_CNF Callback Function Event.

MAC_McpsPurgeReq() This function purges and discards a data request from the MAC data queue.

MAC_MCPS_PURGE_CNF Callback Function Event.

Page 9: Z-stack MAC API & TI cc2530 platform introduction

Beacon-Enabled Network Scan and Sync

9

Page 10: Z-stack MAC API & TI cc2530 platform introduction

Orphan Procedure

10

Page 11: Z-stack MAC API & TI cc2530 platform introduction

Direct Data Transactions

11

Page 12: Z-stack MAC API & TI cc2530 platform introduction

Indirect Data Transactions, Data Poll and Purge

12

Page 13: Z-stack MAC API & TI cc2530 platform introduction

Introduction to Platform

• Devices of TI CC2530 ZDK (zigbee development kit): – 2 Collectors (SmartRF05EB Evaluation Boards)– 5 End-devices (SmartRF05 Battery Boards)– 7 CC2530EM Evaluation Modules– USB Dongle Antennas and batteries IAR EW8051

C-compiler with C-SPY debugger • IAR Embedded Workbench for MCS-51 7.51A

Evaluation

13

Page 14: Z-stack MAC API & TI cc2530 platform introduction

CC2530ZDK

14

Page 15: Z-stack MAC API & TI cc2530 platform introduction

Directory Hierarchy in Developing An Application

HAL ( Hardware (H/W) Abstraction Layer):硬體層目錄,包含有與硬體相關的配置和驅動及操作函數。 

MAC : MAC層目錄,包含了MAC層的參數配置文件及其 MAC 的 LIB庫的函數介面文件。

NWK ( ZigBee Network Layer):網路層目錄,含網路層配置參數文件及網絡層的函數介面文件, APS層的函數介面。

Profile : AF ( Application Framework)層目錄,包含 AF層處理函數文件。

ZDO ( ZigBee Device Objects): ZDO目錄。

Security:安全層目錄,安全層處理函數,比如加密函數等。 

15

Page 16: Z-stack MAC API & TI cc2530 platform introduction

Directory Hierarchy in Developing An Application Con.

APP ( Application Programming):應用層目錄,這是用戶創建各種不同動作的區域,在這個目錄中包含了應用層的內容和這個項目的主要內容。

MT ( Monitor Test):實現通過序列埠可控各層,於各層進行直接溝通。

OSAL ( Operating System (OS) Abstraction Layer ): protocol stack的操作系統。

Services:地址處理函數目錄,包括著地址模式的定義及地址處理函數。 

Tools:工程配置目錄,包括空間劃分及 Z-Stack相關配置信息。

ZMac : MAC層目錄,包括MAC層參數配置及MAC層 LIB API回傳處理。

ZMain:主函數目錄,包括初始化函數及硬件配置。

Output:輸出文件目錄,這個 EW8051 IDE自動生成的。 

16

Page 17: Z-stack MAC API & TI cc2530 platform introduction

Demo Environment

• CC2530ZDK Sensor Demo Software• ZStack-CC2530-2.3.0-1.4.0• SmartRF Flash Programmer(swrc044i)• IAR 8051 7.51A• Zigbee SFTP

– 10.10.59.32

• Driver– C:\Program Files\Texas Instruments\Extras\Drivers

17

Page 18: Z-stack MAC API & TI cc2530 platform introduction

Open WorkspaceIAR Embedded Workbench

18

Page 19: Z-stack MAC API & TI cc2530 platform introduction

Open WorkspaceIAR Embedded Workbench

19

Page 20: Z-stack MAC API & TI cc2530 platform introduction

EDITIAR Embedded Workbench

20

Page 21: Z-stack MAC API & TI cc2530 platform introduction

Set Virtual RegistersIAR Embedded Workbench

21

Page 22: Z-stack MAC API & TI cc2530 platform introduction

Rename and Output FormatIAR Embedded Workbench

22

Page 23: Z-stack MAC API & TI cc2530 platform introduction

Build HexIAR Embedded Workbench

23

Page 24: Z-stack MAC API & TI cc2530 platform introduction

Download hexSmartRF Flash Programmer

24

Page 25: Z-stack MAC API & TI cc2530 platform introduction

Demo 情境 1

• Non enable security over NWK layer• Coordinator– CollectorEB.hex

• Sensor– SensorEB.hex

25

Page 26: Z-stack MAC API & TI cc2530 platform introduction

情境 2

• Enable security over NWK layer• Network key is preconfigured (Set

zgPreConfigkeys = TRUE in ZGlobals.c)• Setting preconfigured Network key ( Defaultkey =

{KEY} in nwk_globals.c)• Coordinator– CollectorEB_ssec.hex

• Sensor– SensorEB_ssec.hex– SensorEB_sseck.hex (different key)

26

Page 27: Z-stack MAC API & TI cc2530 platform introduction

情境 3

• Enable security over NWK layer• Network key is not preconfigured (Set

zgPreConfigkeys = FALSE in ZGlobals.c)• Setting preconfigured Network key ( Defaultkey =

{KEY} in nwk_globals.c)• Coordinator– CollectorEB_ssecf.hex

• Sensor– SensorEB_ssecf.hex

27

Page 28: Z-stack MAC API & TI cc2530 platform introduction

參考資料• TI 802.15.4_MAC_API.pdf • IAR 設定– http://e2e.ti.com/support/low_power_rf/f/160/p

/18242/70813.aspx#70813

28