EasyManuals Logo
Home>Texas Instruments>Microcontrollers>CC253x

Texas Instruments CC253x Software Developers Guide

Texas Instruments CC253x
162 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Page #69 background imageLoading...
Page #69 background image
www.ti.com
Configuring Parameters for Custom Hardware
69
SWRU271H–October 2010–Revised April 2019
Submit Documentation Feedback
Copyright © 2010–2019, Texas Instruments Incorporated
Creating a Custom Bluetooth Low Energy Application
Depending on the hardware platform (keyfob, EM, and so forth), the project contains a different board file.
These board files are specific to the given platform and must be adjusted for custom hardware. Some
modifications may include the following:
• Modifying the symbols used by drivers for specific pins (that is, LED1_SBIT)
• Selecting the 32-kHz oscillator source (OSC_32KHZ)
• Initializing input and output pins to safe initialization levels to prevent current leakage
7.6.2 Adjusting for 32-MHz Crystal Stabilization Time
Before entering sleep, the stack sets the sleep timer to wake before the next Bluetooth Low Energy event.
The closer the wakeup is to the event, less power is wasted. If the wakeup is too close to the even, the
sleep time might miss the event.
When the timer wakes, it must wait for the 32-MHz external crystal to stabilize. This stabilization time is
affected by the inherent stabilization time of the crystal, how long the crystal has been off, the
temperature, the voltage, and so forth. You must add a buffer to the wakeup time (that is, start earlier) to
handle this variability in stabilization.
This buffer time is implemented using the HAL_SLEEP_ADJ_TICKS definition where the value of the
definition corresponds to the number of 32-MHz ticks. This definition is set in hal_sleep.c to 25 for the
CC2541 EM and 35 for the CC2540 EM by default. If the value of the definition is larger, the buffer time is
longer and more power is wasted. Calculate this value empirically. If HAL_SLEEP_ADJ_TICKS is set too
low, false advertisement restarts and connection drops occur. If these restarts and drops occur, increase
the definition until they stop.
7.6.3 Setting the Sleep Clock Accuracy
If you must modify the sleep clock accuracy from the default (50 ppm for a master and 40 ppm for a
slave), use the HCI_EXT_SetSCACmd(). For more information, see Appendix G.
7.7 Software Considerations
7.7.1 Memory Management for GATT Notifications and Indications
TI recommends using the SetParameter function (that is, SimpleProfile_SetParameter()) and call
GATTServApp_ProcessCharCfg() to send a GATT notification or indication. If using GATT_Notification()
or GATT_Indication() directly, you require additional memory management. For additional memory
management, do the following:
1. Attempt to allocate memory for the notification or indication using GATT_bm_alloc().
2. If allocation succeeds, send the notification or indication using GATT_Notification()/GATT_Indication().
NOTE: If the return value of the notification or indication is SUCCESS (0x00), the stack freed the
memory.
If the return value is something other than SUCCESS (that is, blePending), free the memory
using GATT_bm_free().

Table of Contents

Other manuals for Texas Instruments CC253x

Questions and Answers:

Question and Answer IconNeed help?

Do you have a question about the Texas Instruments CC253x and is the answer not in the manual?

Texas Instruments CC253x Specifications

General IconGeneral
BrandTexas Instruments
ModelCC253x
CategoryMicrocontrollers
LanguageEnglish

Related product manuals