char UART_WaitForKeyAndReturnIt(void) { char key = 0; // Wait for a key while(key == 0) { Chip_UART_ReadRB(LPC_USART, &rxring, &key, 1); } return key; } |
uint16_t UART_WaitForValueAndReturnIt(void) { uint16_t value = 0; char key[4]; key[3] = 0; // Wait for a key while(key[3] == 0)//0 here is ASCII, so even if entered value is 0, it will be the ASCII sign '0' = 48 { Chip_UART_ReadRB(LPC_USART, &rxring, &key, 4); } value = (key[3] - 48); value = value + ((key[2] - 48) * 10); value = value + ((key[1] - 48) * 100); value = value + ((key[0] - 48) * 1000); return value; } |