These PowerBurst times are used in the sample code referenced in the TMS37157 Development Tool FAQ, but there seems to be no clue as to what these values are. It looks like they are provided by the desktop app, but I only have the binary for that.
struct stLFpacket
{
unsigned short usPowerBurst[4];
...
struct stLFpacket aLFpacket;
...
void DoPowerBurst开发者_运维知识库(char number)
{
if ((command1.field.PPM_PWM == 1) && (number == 2))
SetOutput(&P1OUT, P1_TXCT, HIGH, BLCtimes.usToff, USEC, HALT);
SetOutput(&P1OUT, P1_TXCT, LOW, aLFpacket.usPowerBurst[number-1], MSEC,
HALT);
}
...
void GetPowerBurst(char number, char* Index)
{
if (command1.field.TwoPB_OnePB == ONE_BYTE)
aLFpacket.usPowerBurst[number-1] = USB_Buffer.ucData[*Index];
else
aLFpacket.usPowerBurst[number-1] = 16 * USB_Buffer.ucData[*Index]
+ USB_Buffer.ucData[(*Index)+1];
*Index++;
}
According to support@ti.com,
The power burst times used for TMS37157 should be 15-50ms for PB1 and 50ms for PB2. In the base station source code, dopowerburst(2), dopowerburst(3), dopowerburst(4) appear to be used for wake patterns in some of our other automotive transponders that operate a little different from TMS37157.
精彩评论