Hi
I have a ez430 RF2500, I managed to write a code for UART communication, learned from the wireless sensor monitor program. However, I can only get letters displayed correctly, while the number displayed as some symbol characters. I have tried to keep things the same, e.g long temp, int degC, char msg, but because I don't need to send those amount of data in that example, so I wrote my own.
__interrupt void Port1_ISR (void)
{
int degC;
long temp;
int results;
char txBuffer[6];
// when switch is pressed
if(P1IFG & BIT2)
{
ADC10CTL0 |= ENC + ADC10SC; // Sampling and conversion start
results = ADC10MEM;
temp = results;
degC = ((temp - 673) * 423) / 1024;
txBuffer[0]= degC &0xFF; ;
txBuffer[1]= (degC>>8)&0xFF;
txBuffer[2]= 'L';
txBuffer[3]= 'O';
txBuffer[4]= '.';
//uartTxString(txBuffer);
TXString(txBuffer, sizeof txBuffer);
P1IFG &= ~0x04;
P1OUT ^= BIT1;
}
}
void TXString( char* string, int length )
{
int pointer;
for( pointer = 0; pointer < length; pointer++)
{
volatile int i;
UCA0TXBUF = string[pointer];
while (!(IFG2&UCA0TXIFG)); // USCI_A0 TX buffer ready?
}
}