Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
card10
firmware
Commits
2ae0c8b4
Commit
2ae0c8b4
authored
May 26, 2019
by
schneider
Browse files
feat(leds): support for 15 leds, support to dim per LED
parent
661f6d7c
Changes
3
Show whitespace changes
Inline
Side-by-side
Hello_World/main.c
View file @
2ae0c8b4
...
...
@@ -31,13 +31,23 @@ int main(void)
Paint_DrawImage
(
Heart
,
0
,
0
,
160
,
80
);
LCD_Update
();
for
(
int
i
=
0
;
i
<
11
;
i
++
)
{
leds_set_dim
(
i
,
1
);
}
int
h
=
0
;
while
(
1
)
{
#if 0
leds_set_hsv(0, h, 1., 1.);
leds_set_hsv(1, (h + 90) % 360, 1., 1.);
leds_set_hsv(2, (h + 180) % 360, 1., 1.);
leds_set_hsv(3, (h + 270) % 360, 1., 1.);
#define NUM 15
for(int i=0; i<NUM; i++) {
if(i < 12) {
leds_set_hsv(i, (h + 360/NUM * i) % 360, 1., 1./8);
} else {
leds_set_hsv(i, (h + 360/NUM * i) % 360, 1., 1.);
}
}
leds_update();
TMR_Delay(MXC_TMR0, MSEC(10), 0);
h++;
...
...
lib/card10/leds.c
View file @
2ae0c8b4
...
...
@@ -3,10 +3,11 @@
#include <stdint.h>
#include <string.h>
#define NUM_LEDS 15
static
const
gpio_cfg_t
rgb_dat_pin
=
{
PORT_1
,
PIN_14
,
GPIO_FUNC_OUT
,
GPIO_PAD_NONE
};
static
const
gpio_cfg_t
rgb_clk_pin
=
{
PORT_1
,
PIN_15
,
GPIO_FUNC_OUT
,
GPIO_PAD_NONE
};
static
uint8_t
led_dim
=
8
;
static
uint8_t
leds
[
15
][
3
];
static
uint8_t
leds
[
NUM_LEDS
][
4
];
/***** Functions *****/
// *****************************************************************************
...
...
@@ -159,9 +160,9 @@ static void leds_stop(void)
shift
(
0xFF
);
shift
(
0xFF
);
shift
(
0xFF
);
shift
(
0xFF
);
}
void
leds_set_dim
(
uint8_t
dim
)
void
leds_set_dim
(
uint8_t
led
,
uint8_t
dim
)
{
led
_dim
=
dim
;
led
s
[
led
][
3
]
=
dim
;
}
void
leds_set
(
uint8_t
led
,
uint8_t
r
,
uint8_t
g
,
uint8_t
b
)
...
...
@@ -183,8 +184,8 @@ void leds_set_hsv(uint8_t led, float h, float s, float v)
void
leds_update
(
void
)
{
leds_start
();
for
(
int
i
=
3
;
i
>=
0
;
i
--
)
{
leds_shift
(
leds
[
i
][
0
],
leds
[
i
][
1
],
leds
[
i
][
2
],
led
_dim
);
for
(
int
i
=
NUM_LEDS
-
1
;
i
>=
0
;
i
--
)
{
leds_shift
(
leds
[
i
][
0
],
leds
[
i
][
1
],
leds
[
i
][
2
],
led
s
[
i
][
3
]
);
}
leds_stop
();
}
...
...
@@ -198,7 +199,11 @@ void leds_init(void)
GPIO_OutClr
(
&
rgb_dat_pin
);
memset
(
leds
,
0
,
sizeof
(
leds
));
led_dim
=
8
;
for
(
int
i
=
0
;
i
<
NUM_LEDS
;
i
++
)
{
leds
[
i
][
3
]
=
8
;
}
leds_update
();
}
...
...
lib/card10/leds.h
View file @
2ae0c8b4
...
...
@@ -2,7 +2,7 @@
#include <stdint.h>
void
leds_set_dim
(
uint8_t
dim
);
void
leds_set_dim
(
uint8_t
led
,
uint8_t
dim
);
void
leds_set
(
uint8_t
led
,
uint8_t
r
,
uint8_t
g
,
uint8_t
b
);
void
leds_set_hsv
(
uint8_t
led
,
float
h
,
float
s
,
float
v
);
void
leds_update
(
void
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment