mishra12
Advanced Member level 2
- Joined
- Feb 18, 2009
- Messages
- 672
- Helped
- 136
- Reputation
- 272
- Reaction score
- 122
- Trophy points
- 1,323
- Location
- some where left alone
- Activity points
- 4,915
dear
i wan to display cmp03 compass value in lcd can any one suggest how to interface with lcd to show data ?/*
This will display a value of 0 - 359 for a full rotation of the compass.
The SDA line is on analog pin 4 of the arduino and is connected to pin 3 of the CMPS03.
The SCL line is on analog pin 5 of the arduino and is conected to pin 2 of the CMPS03.
Both SDA and SCL are also connected to the +5v via a couple of 1k8 resistors.
A switch to callibrate the CMPS03 can be connected between pin 6 of the CMPS03 and the ground.
*/
#include <Wire.h>
#define address 0x60 //defines address of compass
void setup(){
Wire.begin(); //conects I2C
Serial.begin(9600);
}
void loop(){
byte highByte;
byte lowByte;
Wire.beginTransmission(address); //starts communication with cmps03
Wire.send(2); //Sends the register we wish to read
Wire.endTransmission();
Wire.requestFrom(address, 2); //requests high byte
while(Wire.available() < 2); //while there is a byte to receive
highByte = Wire.receive(); //reads the byte as an integer
lowByte = Wire.receive();
int bearing = ((highByte<<8)+lowByte)/10;
Serial.println(bearing);
delay(100);
}
i wan to display cmp03 compass value in lcd can any one suggest how to interface with lcd to show data ?/*
This will display a value of 0 - 359 for a full rotation of the compass.
The SDA line is on analog pin 4 of the arduino and is connected to pin 3 of the CMPS03.
The SCL line is on analog pin 5 of the arduino and is conected to pin 2 of the CMPS03.
Both SDA and SCL are also connected to the +5v via a couple of 1k8 resistors.
A switch to callibrate the CMPS03 can be connected between pin 6 of the CMPS03 and the ground.
*/
#include <Wire.h>
#define address 0x60 //defines address of compass
void setup(){
Wire.begin(); //conects I2C
Serial.begin(9600);
}
void loop(){
byte highByte;
byte lowByte;
Wire.beginTransmission(address); //starts communication with cmps03
Wire.send(2); //Sends the register we wish to read
Wire.endTransmission();
Wire.requestFrom(address, 2); //requests high byte
while(Wire.available() < 2); //while there is a byte to receive
highByte = Wire.receive(); //reads the byte as an integer
lowByte = Wire.receive();
int bearing = ((highByte<<8)+lowByte)/10;
Serial.println(bearing);
delay(100);
}