This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Hi Fredrik,
Now I assume the CC2650 control the CC2592 IO are:
PA_EN is on DIO7
LNA_EN is on DIO13
HGM is on DIO9
and I just put the these GPIO initial in
C:\ti\simplelink\ble_cc26xx_2_00_00_42893\Projects\ble\SimpleBLEPeripheral\CC26xx\Source\Application\main.c
What I did that like below:
#include <inc/hw_ioc.h>
#define Board_HGM_PIN IOID_9
PIN_Handle HGM_Handle;
void HGM_io_init(void) {
PIN_State keyPins;
PIN_Config keyPinsCfg[] =
{
Board_HGM_PIN | PIN_GPIO_OUTPUT_EN | PIN_GPIO_HIGH | PIN_PUSHPULL,
PIN_TERMINATE
};
HGM_Handle = PIN_open(&keyPins, keyPinsCfg);
}
void CC2592_io_init (void){
// Map RFC_GPO0 to DIO13
IOCPortConfigureSet(IOID_13, IOC_PORT_RFC_GPO0,IOC_IOMODE_NORMAL);
// Map RFC_GPO1 to DIO7
IOCPortConfigureSet(IOID_7, IOC_PORT_RFC_GPO1,IOC_IOMODE_NORMAL);
HGM_io_init();
}
Void main()
{
PIN_init(BoardGpioInitTable);
//enable iCache prefetching
VIMSConfigure(VIMS_BASE, TRUE, TRUE);
// Enable cache
VIMSModeSet(VIMS_BASE, VIMS_MODE_ENABLED);
#ifndef POWER_SAVING
/* Set constraints for Standby, powerdown and idle mode */
Power_setConstraint(Power_SB_DISALLOW);
Power_setConstraint(Power_IDLE_PD_DISALLOW);
#endif // POWER_SAVING
CC2592_io_init();//I put this init before any Task init. Does it right?
/* Initialize ICall module */
ICall_init();
/* Start tasks of external images - Priority 5 */
ICall_createRemoteTasks();
/* Kick off profile - Priority 3 */
GAPRole_createTask();
SimpleBLEPeripheral_createTask();
#ifdef FEATURE_OAD_BIM
{
uint8_t counter;
uint32_t *vectorTable = (uint32_t*) 0x20000000;
uint32_t *flashVectors = &__vector_table;
// Write image specific interrupt vectors into RAM vector table.
for(counter = 0; counter < 15; ++counter)
{
*vectorTable++ = *flashVectors++;
}
}
#endif //FEATURE_OAD_BIM
/* enable interrupts and start SYS/BIOS */
BIOS_start();
}
and when and where I should control Board_HGM_PIN by manually.
Because the CC2592 has these mode:
PA_EN LNA_EN HGM Mode of Operation
0 0 X Power Down
X 1 0 RX Low-Gain Mode
X 1 1 RX High-Gain Mode
1 0 X TX
Thanks
Hi Fredrik,
Ok I got it.
and the IO is setting ok and work right.
but the CC2650 and CC2592 total power will same with CC2650 only now, does it right?
Sorry ask this again, I just want to make sure this and I can wait for this fun in stack coming in the other days.
Thanks
Hi Yoo,
Have you verified the RF output by measuring with a spectrum analyzer? Have you measured the CC2590 control signals with an oscilloscope? Do you know if your crystal frequency is correct?
Yoo Hsiu Yeh said:- does HGM have to float during TX, so I can't tie it to HIGH?
No, HGM can be tied high during TX (as stated in the datasheet)
Yoo Hsiu Yeh said:- does it have to be DIO7 and DIO13, as in your example, for this to work?
No, any DIO can be used, but make sure you are setting up the correct pins for PA- and LNA- enable
Yoo Hsiu Yeh said:- do I have to call HCI_EXT_ExtendRfRangeCmd() for the code to work now? Maybe the code was updated since you answered the question in March 2015?
No, that is not required
Cheers,
Fredrik