Last active
December 31, 2015 09:49
-
-
Save lxc-xx/7969253 to your computer and use it in GitHub Desktop.
Pedometer With Aruino
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//IO output for LCD display | |
int _A=1; | |
int _B=2; | |
int _C=3; | |
int _D=4; | |
int _E=5; | |
int _F=6; | |
int _G=7; | |
int _DP=8; | |
/* | |
_B | |
▕▔▏ _C _A | |
▕▔▏ ====》 _D | |
▔▫ _E _G | |
_F _DP | |
*/ | |
int NUM_SEG [ 16 ][ 7 ] = { | |
{ 1,1,1,0,1,1,1 }, | |
{ 1,0,0,0,0,0,1 }, | |
{ 1,1,0,1,1,1,0 }, | |
{ 1,1,0,1,0,1,1 }, | |
{ 1,0,1,1,0,0,1 }, | |
{ 0,1,1,1,0,1,1 }, | |
{ 0,1,1,1,1,1,1 }, | |
{ 1,1,0,0,0,0,1 }, | |
{ 1,1,1,1,1,1,1 }, | |
{ 1,1,1,1,0,1,1 }, | |
{ 1,1,1,1,1,0,1 }, | |
{ 0,0,1,1,1,1,1 }, | |
{ 0,1,1,0,1,1,0 }, | |
{ 1,0,0,1,1,1,1 }, | |
{ 0,1,1,1,1,1,0 }, | |
{ 0,1,1,1,1,0,0 } | |
}; | |
void lit( int segment ) | |
{ | |
digitalWrite (segment,LOW); | |
} | |
void quench ( int segment ) | |
{ | |
digitalWrite ( segment,HIGH ); | |
} | |
void set_segment ( int segment , int sta ) | |
{ | |
if ( sta == 1 ) | |
{ | |
lit ( segment ); | |
} | |
else | |
{ | |
quench ( segment ); | |
} | |
} | |
// display number :num ; if dp == 1 , display point . lasting milisecond :time. | |
void NumDisplay ( int num , int dp , int time) | |
{ | |
time = time / 2; | |
for ( int t = 0 ; t < time ; t++ ) | |
{ | |
for ( int i = 0 ; i < 7 ; i++ ) | |
{ | |
set_segment ( i+1 , NUM_SEG [ num % 16 ][ i ] ); | |
set_segment ( _DP , dp ); | |
} | |
delay ( 1 ); | |
} | |
} | |
void setup() | |
{ | |
int i; | |
for(i=1;i<=8;i++) | |
pinMode(i,OUTPUT);//set 4-11 as output mode | |
} | |
void loop() | |
{ | |
int num = 0; | |
int i = 0; | |
int old = 0; | |
int flag = 0; | |
while(1) | |
{ | |
NumDisplay ( num , 0 , 500 ); | |
old = i; | |
i=analogRead(5) / 100; | |
if ( i != old ) | |
{ | |
num ++; | |
} | |
/* | |
i=analogRead(5);/ | |
if(i>200) | |
{ | |
if( flag == 0 ) | |
{ | |
num++;//turn on led | |
flag = 1; | |
} | |
} | |
else | |
{ | |
flag = 0; | |
} | |
*/ | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment