SKU: 160

Skladom (2 ks)

Long distance CC2530F256 + PA power amplifier 2.4G wireless module zigbee Internet of things 100mW 20dB

ESP8266Wi-Fi 802.11 b/g/nUART Sériový Most3.3V Logika
15,55 €S DPH

CC2530 Zigbee 2.4 GHz Module Diaľkový CC2530F256 + PA výkonový zosilňovač 2,4G bezdrôtový modul zigbee Internet vecí 100mW 20dB Serial…

Expedícia: Do 24 hodín (Pracovné dni)
Doručenie: 1-2 dni Kuriér / Zásielkovňa
Overená technická špecifikáciaNapájanie, logické úrovne a pinout skontrolované v labe
Reálny kódový príkladFunkčný kód pre Arduino IDE / ESPHome v detaile nižšie
Záruka originálneho moduluPriamy dovoz bez nekvalitných klonov

Popis

CC2530 Zigbee 2.4 GHz Module

Diaľkový CC2530F256 + PA výkonový zosilňovač 2,4G bezdrôtový modul zigbee Internet vecí 100mW 20dB

Serial number parameter name Parameter value description

1 RF chip CC2530 TI

2 Module size 17 * 31.7mm With FCB antenna

3 Module heavy star L-3g With FCB antenna

4 Working frequency 2.394GHz ~ 2.507GHz Can be adjusted by software

5 Production Process No along the process, machine stickers Wireless products must be fixed to ensure consistency and reliability

6 Interface mode 2 * 12 * 1_27mm Patch

7 Supply voltage 2.0 ~ 3. 6 VDC Note: Higher than 3. 6W pressure will cause the module to permanently damage

8 Communication level 0.7VCC ~ 3.6V VCC refers to the module supply voltage

9 Real distance 800m B Chunlang open, maximum power, 5dBi antenna, height 2m, 250k air speed

10 Transmit power Up to 20 dBm About lOOmtf

11 Air rate 250kbps

12 Turn off current 1.luA M sleep, wireless off, vcck3.3v

13 Emission current 175mA0 20dBm Power supply capacity must be greater than 400mA

14 Receive current 36mA average value

15 Communication Interface I / O SCM all 10 lead, see the chip manual

16 Launch length 1 ~ 103 Festival Single number of brochures

17 Receiving length 1 ~ 103 Festival Single education package

18 KSSI support stand by See the chip manual for details

19 Antenna interface PCB / IPEX Pi recognized FCB antenna, 50A characteristic impedance

20 Operating temperature 10 ~ E * 0 Work level

twenty one Working humidity 10% ^ 90% Relative humidity, no condensation

twenty two Save the overflow -10 ~ + 125 * C Work level

Pin number Pin name Pin orientation Pin use

L GHD

Ground, connected to the power supply reference ground

2 VCC

Power supply, must be between 2.0 ~ 3.6V

3 P2.2 Enter / show out Microcontroller OTI0

4 P2.1 Enter / ii out Microcontroller OTI0

5 P2.0 Enter / show out Microcontroller OTI0

6 07.10.21 Enter / ii out Microcontroller OTI0

7 06.10.21 Enter / show out Microcontroller OTI0

8 05.10.21 Enter / ii out Single Chip Microcomputer GPI0

9 04.10.21 Enter / show out Microcontroller OTI0

10 03.10.21 Enter / ii out Microcontroller OTI0

11 02.10.21 Enter / show out Microcontroller OTI0

12 01.10.21 Enter / ii out Microcontroller OTI0

13 P1.0 Enter / show out Microcontroller OTI0

14 P0. 7 Enter / ii out Microcontroller OTI0

15 P0.6 Enter / show out Microcontroller OTI0

16 P0.5 Enter / ii out Microcontroller OTI0

17 P0.4 Enter / show out Microcontroller OTI0

18 P0.3 Enter / ii out Microcontroller OTI0

19 P0.2 Enter / show out Microcontroller OTI0

20 P0.1 Enter / ii out Microcontroller OTI0

twenty one PO.O. Enter / show out Microcontroller OTI0

twenty two RESET enter Summer port

twenty three TXEN

F to control the control

Kapitola 1 Schématická analýza

Na základnej doske CC2530 sú dva kryštálové oscilátory: prvá frekvencia je 32 MHz a druhá frekvencia je 32,768 kHz

Keď CC250 beží normálne, potrebuje vysokofrekvenčný hodinový signál a nízkofrekvenčný hodinový signál.

Vysokofrekvenčný hodinový signál sa dodáva hlavne do CPU, aby sa zabezpečila činnosť programu.

Nízkofrekvenčný hodinový signál je dodávaný hlavne do periférnych zariadení na čipe, ako sú napríklad watchdog a časovač vypnutia.

按键IO口接线(按键是接在底板上的)

Zapojenie LED svetla (LED je pripojená k spodnej doske)

Kapitola 2 Konfigurácia výstupného režimu

Kapitola 3 Príklad kódu konfigurácie LED svetla

Príklad kódu:

Arduino C++ Príklad
#include 

//定义LED灯的端口
#define LED1 P1_2
#define LED2 P1_3

/*

函数功能:LED灯IO口初始化 硬件连接:LED1-->P1_2 , LED2-->P1_3 */ void LED_Init(void) { P1DIR |=0x30;c--) for(b=181;b>0;b--) for(a=14;a>0;a--); }

/*主函数*/ void main(void) { LED_Init();//初始化LED灯控制IO口 while(1) { LED1 = !LED1; LED2 = !LED2; delay200ms(); } }

Funkcia skoku softvéru IAR

Kapitola 4 Generovanie funkcie oneskorenia

Poznámka: Predvolený interný kryštálový oscilátor je 16 MHz .

Kapitola 5 Hodiny CC2530 Úvod

Zavedenie hodinového signálu: Za normálnych okolností potrebuje CC250 vysokofrekvenčný hodinový signál a nízkofrekvenčný hodinový signál. Medzi nimi sa vysokofrekvenčný hodinový signál dodáva hlavne do CPU, aby sa zabezpečila prevádzka programu, zatiaľ čo nízkofrekvenčný hodinový signál sa dodáva hlavne do periférnych zariadení na čipe, ako je watchdog a časovač vypnutia. Vysokofrekvenčný hodinový signál má dva zdroje: 16M RC obvod vo vnútri čipu a druhý je externý 32M kremenný kryštálový oscilátor. Informácia o nízkofrekvenčných hodinách má tiež dva zdroje: jedným je 32K RC obvod vo vnútri čipu, a druhý je externý 32,768K Opatrenia pre kryštálový oscilátor: 1. Keď je čip CC2530 štandardne zapnutý, dva interné RC obvody sa používajú ako vysokofrekvenčné a nízkofrekvenčné zdroje hodín. 2. Keď používate sériový port a bezdrôtovú komunikáciu, musíte použiť 32M kryštálový kryštálový oscilátor ako zdroj vysokofrekvenčných hodín. Vlastnosti vysokofrekvenčných zdrojov hodín: Dva vysokofrekvenčné hodinové zdroje môžu začať generovať vysokofrekvenčné hodinové signály súčasne, zatiaľ čo dva nízkofrekvenčné hodinové zdroje môžu mať iba jeden hodinový zdroj, ktorý začne oscilovať v určitom čase, a tento zdroj hodín sa dodáva k CC2530. Kroky na prepnutie zdroja vysokofrekvenčných hodín systému: 1. Nechajte dva zdroje vysokofrekvenčných hodín začať oscilovať 2. Počkajte, kým cieľový zdroj hodín začne oscilovať a stabilizuje sa 3. Oneskorte krátky časový úsek 63us 4. Výstup bez frekvenčného delenia 5. Vyberte cieľový zdroj vysokofrekvenčných hodín Ako hlavné hodiny systému 6 potvrďte, či aktuálne pracovné systémové hodiny sú zvolené vysokofrekvenčné hodiny, register zahŕňa: SLEEPCMD SLEEPSTA CLKCONCMD CLKCONSTA podrobná obsluha: 7 , nech je druhý bit SLEEPCMD 0 8, šiesty bit registra SLEEPPSIA Bit 1 znamená, že zdroj hodín je stabilný 9, oneskorenie nad 63us 10, žiadny výstup frekvenčného delenia: nastavte tretí bit registra CLKCONCMD na 000 11, vymazať šiesty bit registra CLKCONCMD na 0, nastavte 32M ako hlavné hodiny systému 12, šiesty bit čítacieho registra CLKCONSTA je 0, čo naznačuje, že aktuálny 32M hodinový zdroj bol použitý ako hlavné hodiny aktuálneho systému a program môže bežať smerom nadol

1. Zavedenie režimu nízkej spotreby

Nízka spotreba energie je funkcia, ktorú je potrebné zvážiť pri prenosných a spotrebných zariadeniach, najmä pri zariadeniach napájaných z batérie. Veľmi dôležité je pochopiť spotrebu energie, ktorá priamo ovplyvňuje pohotovostný čas. Napríklad: naše súčasné mobilné telefóny, tablety, firemné notebooky, bezdrôtové náhlavné súpravy a iné spotrebiteľské zariadenia, ako aj inteligentné poklopy, inteligentné pouličné osvetlenie a tieto zariadenia internetu vecí, ktoré nie sú zapojené do elektrickej siete.

CC2530 podporuje konfiguráciu režimu nízkej spotreby energie, ktorú je možné nakonfigurovať úvodom kapitoly registra napájania. Konfigurácia niekoľkých režimov nízkej spotreby CC2530 je predstavená nižšie. Snímka obrazovky pochádza z čínskeho údajového listu CC2530.

2. Nakonfigurujte režim nízkej spotreby energie

Prevádzka s nízkou spotrebou energie je povolená prostredníctvom rôznych prevádzkových režimov (režimy výkonu). Rôzne prevádzkové režimy sa označujú ako aktívny režim, režim nečinnosti a napájanie.

Režimy 1, 2 a 3 (PM1-PM3). Prevádzka s mimoriadne nízkou spotrebou energie sa dosiahne vypnutím napájacích blokov, aby sa predišlo statickej (únikovej) spotrebe energie, a použitím hodinového hradlovania a vypnutím oscilátorov na zníženie dynamickej spotreby energie.

3. Príklad kódu

3.1 Vzorový kód 1

/****************************************************************************** 利用睡眠定时器,实现低功耗 ******************************************************************************/

Arduino C++ Príklad
#include 

#define uint unsigned int
#define uchar unsigned char
#define CC2530_Delay 15000

#define RLED P1_0
#define YLED P1_1 //LED灯控制IO口定义

void CC2530_Delay(void);
void CC2530_Init_IO_AND_LED(void);
void CC2530_SysPowerMode(uchar sel);

/****************************************************************

延时函数 ****************************************************************/ void CC2530_Delay(void) { uint i; for(i = 0;i= 20) { count = 0; RLED = 0; CC2530_SysPowerMode(3); //10次闪烁后进入睡眠状态PM3 } //CC2530_Delay(); CC2530_Delay(); //延时函数无形参,只能通过改变系统时钟频率或DEALY的宏定义 //来改变小灯的闪烁频率 }; } /***************************************** 中断处理函数-系统唤醒 *****************************************/ #pragma vector = P0INT_VECTOR __interrupt void P0_ISR(void) { if(P0IFG>0) { P0IFG = 0; } P0IF = 0; CC2530_SysPowerMode(4); }

3.2 Vzorový kód 2

/****************************************************************************** 利用睡眠定时器实现低功耗 ******************************************************************************/

Arduino C++ Príklad
#include 

/*****************************************
//定义类型
*****************************************/
#define uchar unsigned char
#define uint unsigned int

#define RLED P1_0
#define GLED P1_1
#define CRYSTAL 0
#define RC 1

typedef unsigned char UINT8;
typedef unsigned char INT8U;
typedef unsigned short UINT16;
typedef unsigned short INT16U;
typedef unsigned long UINT32;
typedef unsigned long INT32U;

void CC2530_Set_ST_Period(uint sec);
void CC2530_Init_SLEEP_TIMER(void);
void CC2530_Delay(uint n);
void CC2530_LedGlint(void);

char LEDBLINK;

void CC2530_InitLEDIO(void)
{

P1DIR |= 0x03; //P10、P11定义为输出 RLED = 0; GLED = 0;//LED灯初始化为关 }

/***************************************** 设定系统主时钟函数 *****************************************/ void SET_MAIN_CLOCK(source) { if(source) { CLKCONCMD |= 0x40; /*RC*/ while(!(CLKCONSTA &0X40)); /*待稳*/ } else { CLKCONCMD &= ~0x47; /*晶振*/ while((CLKCONSTA &0X40)); /*待稳*/ } }

/***************************************** 设定系统低速时钟函数 *****************************************/ void SET_LOW_CLOCK(source) { (source==RC)?(CLKCONCMD |= 0X80):(CLKCONCMD &= ~0X80); }

/********************************************************************* //主函数 *********************************************************************/ void main(void) { SET_MAIN_CLOCK(CRYSTAL); SET_LOW_CLOCK(CRYSTAL); CC2530_InitLEDIO(); LEDBLINK = 0; RLED = 1; GLED = 0; CC2530_Init_SLEEP_TIMER(); CC2530_LedGlint(); CC2530_Set_ST_Period(8); while(1) { if(LEDBLINK) { CC2530_LedGlint(); CC2530_Set_ST_Period(8); GLED = !GLED; LEDBLINK = 0; } CC2530_Delay(100); } }

/***************************************** //初始化Sleep Timer *****************************************/ void CC2530_Init_SLEEP_TIMER(void) { ST2 = 0X00; ST1 = 0X0F; ST0 = 0X0F; EA = 1; //开中断 STIE = 1; STIF = 0; } /***************************************** //延时函数 *****************************************/ void CC2530_Delay(uint n) { uint jj; for(jj=0;jj> 16); ST1 = (UINT8)(sleepTimer >> 8); ST0 = (UINT8) sleepTimer; }

#pragma vector = ST_VECTOR __interrupt void ST_ISR(void) { STIF = 0; LEDBLINK = 1; }