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.

Wake up MCU with GDO0 when packet received

Other Parts Discussed in Thread: TMS320F28335, CC1101

I want to allow my MCU (TMS320F28335) to go into standby mode if the CC1101 hasn't received a packet in a while and then wake up as soon as the CC1101 receives a packet in order to process it.  I have GDO0 configured (IOCFG0 = 06) such that the pin goes high when the sync word is sent/received and low at the end of the packet.

I can configure my MCU to wakeup from standby by configuring GPIOLPMSEL to wake up when a specified pin is pulled low.  If GDO0 was by default high and dropped to low and back to high when receiving a packet, I would think that this would work perfectly.  Can I just put a NOT Gate on the GDO0 pin and connect the output to one of my other GPIO pins on MCU and configure that GPIO as the wakeup pin?

Any suggestions on a a chip to do this as simply as possible?  I will have two inputs that need to be inverted.

  • Joris,

    There is an even easier solution for you! Each of the GDOx registers contain a bit (INV) which is used to invert the signal, see page 71 in the CC1101 Data Sheet. Please note that If the IOCFGx.GDOx_CFG setting is less than 0x20 (which is the case for you,s ince you are using 0x06) and  IOCFGx_GDOx_INV is  0 (1), the GDO0 and GDO2 pins will be hardwired to 0 (1), and the GDO1 pin will be hardwired to 1 (0) in the SLEEP state. These signals will be hardwired until the  CHIP_RDYn signal goes low. 

    -Jonas

  • Jonas,

    Will try this out!  Thanks for the advice.

    -Joris