turnOnDigit() function ready
git-svn-id: svn://anubis/misc/parapin-led@49 bd8a9e45-a331-0410-811e-c64571078777
This commit is contained in:
parent
7aad302cb5
commit
f8f1e2c732
45
led.c
45
led.c
@ -1,22 +1,24 @@
|
||||
|
||||
#include <parapin.h>
|
||||
|
||||
#define LED_A 2
|
||||
#define LED_B 3
|
||||
#define LED_C 4
|
||||
#define LED_D 5
|
||||
#define LED_E 6
|
||||
#define LED_F 7
|
||||
#define LED_G 8
|
||||
#define LED_DP 9
|
||||
#define LED_A LP_PIN02
|
||||
#define LED_B LP_PIN03
|
||||
#define LED_C LP_PIN04
|
||||
#define LED_D LP_PIN05
|
||||
#define LED_E LP_PIN06
|
||||
#define LED_F LP_PIN07
|
||||
#define LED_G LP_PIN08
|
||||
#define LED_DP LP_PIN09
|
||||
|
||||
#define LED_1 17
|
||||
#define LED_2 16
|
||||
#define LED_3 14
|
||||
#define LED_1 LP_PIN17
|
||||
#define LED_2 LP_PIN16
|
||||
#define LED_3 LP_PIN14
|
||||
|
||||
#define LED_POSITION_MASK (LED_1 | LED_2 | LED_3)
|
||||
|
||||
#define LED_ALL (LED_A | LED_B | LED_C | LED_D | LED_E | LED_F | LED_G | LED_DP | LED_1 | LED_2 | LED_3)
|
||||
|
||||
int digit2leds[] = {
|
||||
int digit2pins[] = {
|
||||
LED_B | LED_C,
|
||||
LED_A | LED_B | LED_G | LED_E | LED_D,
|
||||
LED_A | LED_B | LED_G | LED_C | LED_D,
|
||||
@ -28,6 +30,14 @@ int digit2leds[] = {
|
||||
LED_A | LED_B | LED_C | LED_D | LED_F | LED_G
|
||||
};
|
||||
|
||||
int position2pins[] = {
|
||||
LED_1,
|
||||
LED_2,
|
||||
LED_3
|
||||
};
|
||||
|
||||
void turnOnDigit(int digitPosition, int value);
|
||||
|
||||
int main
|
||||
{
|
||||
/* initialize the parapin user-land library */
|
||||
@ -36,3 +46,14 @@ int main
|
||||
/* set up pins as output pins */
|
||||
pin_output_mode(LED_ALL);
|
||||
}
|
||||
|
||||
void turnOnDigit(int digitPosition, int value)
|
||||
{
|
||||
/* turn all pins off */
|
||||
clear_pin(LED_ALL);
|
||||
|
||||
/* enable the positional pin */
|
||||
register int pinSet = LED_POSITION_MASK & ~position2pins[digitPosition];
|
||||
pinSet |= digit2pins[value];
|
||||
set_pin(pinSet);
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user