Member Since: October 23, 2008

Country: United States

  • In the application note, it talks about three different timing quantities: signal rate, convergence and sample rate. What I'm interested in is how many measurements can you take per second? I realize that it will vary with the distance being measured, but is there a worst case? Is there a formula for a given distance? Would this sensor work on a target that is constantly moving, but always within the measurement range?

  • I've been soldering these at work. Cut up some 0.1" header pins, and put them in the holes you use to line up the connector to the pad. Soldering becomes much simpler when the work can't move. I had to grind the pins down a little though.

  • If the encoding and decoding are both done on the same processor, it doesn't matter how the compiler maps the bits.
    Write to flash
    Read from flash
    Send to PC

  • I realize that the rocket will never come close to using the full two hours of capacity, but other projects might. You could increase the capacity 60% to just over three hours by encoding your data before you store it.
    Since you're storing 10-bit numbers in two bytes chunks, six out of every sixteen bits are always 0. Thats a waste of 6 Mbits over the entire chip!
    You can store four 10-bit numbers in five bytes using structs and unions:
    struct encoded_data {
    unsigned char encoded_byte_1;
    unsigned char encoded_byte_2;
    unsigned char encoded_byte_3;
    unsigned char encoded_byte_4;
    unsigned char encoded_byte_5;
    struct raw_data {
    unsigned int reading_1:10;
    unsigned int reading_2:10;
    unsigned int reading_3:10;
    unsigned int reading_4:10;
    union {
    struct raw_data raw;
    struct encoded_data encoded;
    placing raw readings in codec.raw produces encoded bytes in codec.encoded.
    placing encoded bytes in codec.encoded produces raw readings in codec.raw

No public wish lists :(