Project Hall Sensor

From LinkSprite Playgound
Jump to: navigation, search

<syntaxhighlight lang="c">

/*

 Analog input, digital output, serial output
Reads an analog input pin; T000070 Hall Sensor connected to I0 reacts 
to the magnet direction and uses the result to light up a T010111 LED Module connected on O0.
Also prints the value of the Hall Sensor to the serial monitor.
created on 7 Dec 2010
by Davide Gomba 
This example code is in the public domain.
*/
#define O0 11
#define O1 10
#define O2 9
#define O3 6
#define O4 5
#define O5 3
#define I0 A0
#define I1 A1
#define I2 A2
#define I3 A3
#define I4 A4
#define I5 A5

// These constants won't change. They're used to give names // to the pins used: const int analogInPin = I0; // Analog input pin that the Hall Sensor is attached to const int digitalOutPin= O0; // Digital output pin that the LED is attached to

int sensorValue = 0; // value read from the Linear pot

void setup() {

 // initialize serial communications at 9600 bps:
 Serial.begin(9600); 
 pinMode(digitalOutPin, OUTPUT);

}

void loop() {

 // read the analog in value:
 sensorValue = analogRead(analogInPin);  
 if (sensorValue < 505) { // notice that the normal value of the sensor is 510
  digitalWrite(digitalOutPin, HIGH);
  } else {
  digitalWrite(digitalOutPin, LOW);
  }
 // print the results to the serial monitor:
 Serial.print("Hall Sensor Value = " );                       
 Serial.println(sensorValue);      
 // wait 10 milliseconds before the next loop
 // for the analog-to-digital converter to settle
 // after the last reading:
 delay(10);                     

}


<syntaxhighlight>