Hi Graham,

I tried long long and uint64_t, and ULL. They all compile but in the end are still only 4 bytes. There are some online posts to the contrary but I couldn't get more than 4 bytes.

I don't have any Arduinos any more but I tested some simple code on a Teensy2 which is still a 328 processor and the Arduino IDE.

It prints the sizeof a uint32_t variable as 8. The problem you can run into with uint64_t is when you try to print it because the serial class only handles 32-bit integers. You have to print the variable in two pieces as shown in this simple sketch:

volatile uint64_t testing_i;
void setup(void)
{
  Serial.begin(9600);
  while(!Serial);
  delay(1000);

  Serial.print("Sizeof uint64_t = ");
  Serial.println(sizeof(testing_i));

  testing_i ^= 0xffffffff12345678ULL;
  Serial.print((uint32_t)(testing_i >> 32)&0xffffffff,HEX);
  Serial.println((uint32_t)testing_i&0xffffffff,HEX);
}

void loop(void)
{
}


BUT CQ VE3GHM FN25 gets truncated and drops the 5

That string is 14 characters long, which suggests that it is being truncated to 13 characters as if it was free text.

73 de Pete VE5VA


_______________________________________________
wsjt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wsjt-devel

Reply via email to