Hardware Reference
In-Depth Information
Figure 6-5. Gray code simulation setup
Listing 6-5. Arduino Sensor Code
byte first , second; // order of pin change
boolean click , stateChang;// send click and the state to change to variables
void setup() {
pinMode(2 , INPUT); // encoder down button
pinMode(3 , INPUT); // encoder up button
pinMode(11 , OUTPUT); pinMode(10 , OUTPUT); // encoder outputs
digitalWrite(2 , HIGH); digitalWrite(3 , HIGH); // input pull-up resistors
digitalWrite(10 , HIGH); // initial state
digitalWrite(11 , LOW);
stateChang = true;
}// end void setup()
void loop() {
if (digitalRead(2) == 0 ){ // down
first = 10; second = 11; // pin 10 writen befor pin 11 for down diretion
click = true;
}
if (digitalRead(3) == 0 ){ // up
first = 11; second = 10; // pin 11 written before pin 10 for up direction
click = true;
}
if (click == true ) { // send 1/2 pulse when a button is pressed
stateChang = !stateChang; // flip the state to be written
digitalWrite(first, stateChang); // change 1st pin
delay (2); // delay befor changinng next pin
 
Search WWH ::




Custom Search