CMPS03 Magnetic Compass. Voltage – 5v only required. Current – 20mA Typ. Resolution – Degree. Accuracy – degrees approx. after calibration. Output 1. Library; Reference. The CMPS03 is a digital compass with an I2C interface. Reference¶. CMPS03 Datasheet. CMPS03 Robot Compass Module This compass module has been specifically designed for use in robots as an aid to navigation. The aim was to produce a.
|Published (Last):||25 June 2015|
|PDF File Size:||8.25 Mb|
|ePub File Size:||4.47 Mb|
|Price:||Free* [*Free Regsitration Required]|
The datasheet says that the lower 7 bits of SPADD shall be initialized with such a value that when counted every other clock pulse Datashet and Q4it should take exactly the 10uS. I said what the heck?
Perfect for engineers in the field and in the lab. I was hoping that somehow I was making something stupid and you would tell me to change one line of code and voila Second test was to write code to interface with the unit via I2C.
For this second test, the manufacturer suggests dataheet sda and scl lines using a 1. Also, after reading a couple of other posts involving problems using I2C, I’ve just made a note to myself to check the following: I think it must be something very simple and I will feel very dumb when I find out, but I couldn’t figure out by myself.
I did it to get experience and understanding of I2C protocol and I will be happy to share this with anyone who is interested. Previous topic Next topic. I checked dztasheet ASM your code produces and there in nothing wrong with it.
I’ve set the pullups with the suggested resistance values 1. It turns out that it works fine, and there is almost no need to recalibrate the unit. Follow the Assembler example here: Fri Sep 02, 4: I was measuring the signal duration on the oscope and it was giving me a frequency of 50KHz I’d think that in this case, the clock line would oscilate at a different frequency, instead of not oscillating at all. So here’s what happens: You’ll be notified when we have some answers. I assume you are having problems with protocol that the sensors require.
I tried initializing only once and sampling many times, but that didn’t work. Fri Sep 02, 7: Thanks for the help!
You cannot post new topics in this forum You cannot reply to topics in this forum You cannot edit your posts in this forum You cannot delete your posts in this forum You cannot post attachments in this forum. I’ve used the example provided in the help and also searched a couple cps03 topics here.
CMPS03 Compass Module
Sun Sep 04, 4: Then I looked at my code and it was really 50KHz from a test I did the other day. Looking at the scl line with an oscope, there is no activity, it is always high a tad below 3V. Fri Sep 09, 5: Clearly I’m loosing something here.
Do you think the problem is the non-matching resistor value? Here’s my code sorry the lenght, it is mainly cmmps03 to debug leds Code: Yesterday I tried inserting the following piece of code just before any write: Additionally, the values I read are noisy, meaning that from 10 values I read, 5 or 6 of them have nothing to do with the real compass orientation.
This board has two outputs: Fri Sep 09, 1: You just cmps003 to make sure both devices can handle the baudrate, which is always set by the master. Let’s say the target frequency is kHz 10uS.
Hey, thanks for checking that.
Index of /ict/autina/progetto/doc/bussola_CMPS03/altra_doc
Now this is what’s happening: Page 1 of 1. I will try I2C again, this time with the right resistor values. Google [Bot] and 2 guests.