Member #471922

Member Since: September 23, 2013

Country: United States

  • Agreed, there definitely is a market for a cheap serial cmos camera with jpeg compression / video at a resonable transmission rate. Surprised Adafruit/Sparkfun/etc havn't gotten something going yet.

  • The section of code that seems to be some of the most important is relatively unexplained:

    void SendReadDataCmd(){
    MH=i/0x100;
    ML=i%0x100;
    mySerial.write(0x56);
    mySerial.write(ZERO);
    mySerial.write(0x32);
    mySerial.write(0x0c);
    mySerial.write(ZERO);
    mySerial.write(0x0a);
    mySerial.write(ZERO);
    mySerial.write(ZERO);
    mySerial.write(MH);
    mySerial.write(ML);
    mySerial.write(ZERO);
    mySerial.write(high);
    mySerial.write(med);
    mySerial.write(low);
    mySerial.write(ZERO);
    mySerial.write(0x0a);
    i+=low;}
    

    This code works as long as low is less then 255 of course because of byte size. However I have been unable to make the chunk size something larger like 512 without it breaking mainly because I don't understand what is functionally happening and what real maths need to happen for mh and ml. When I change the i+= section to the full chunk size (512 for example) this also doesn't work.

    How can I get information on this statement for communicating with the camera. The section in the documentation says:

    Returning Bytes: 56 00 32 0c 00 0a 00 Addr2 Addr1 Addr0 00 Data2 Data1 Data0 00 0a
    Addr2 Addr1 Addr0 is start Addr of the package
    Data2 Data1 Data0 is package Size package Size is a multiple of 8
    

    Alright so... if package size is 512 how do I express that in two bits and how do I calculate Addr2 Addr1 Addr0

  • Can someone please tell me what MH and ML represent in the code and subsequently what purpose they serve in the SendReadData command? I've pretty much mastered this camera but this is stumping my final hurdle!

No public wish lists :(