18#ifndef neorv32_neoled_h
19#define neorv32_neoled_h
29typedef volatile struct __attribute__((packed,aligned(4))) {
35#define NEORV32_NEOLED ((neorv32_neoled_t*) (NEORV32_NEOLED_BASE))
83void neorv32_neoled_setup(uint32_t prsc, uint32_t t_total, uint32_t t_high_zero, uint32_t t_high_one,
int irq_mode);
#define NEORV32_NEOLED
Definition neorv32_neoled.h:35
void neorv32_neoled_write_blocking(uint32_t data)
Definition neorv32_neoled.c:193
void neorv32_neoled_set_mode(uint32_t mode)
Definition neorv32_neoled.c:130
int neorv32_neoled_available(void)
Definition neorv32_neoled.c:26
void neorv32_neoled_strobe_blocking(void)
Definition neorv32_neoled.c:142
void neorv32_neoled_enable(void)
Definition neorv32_neoled.c:171
uint32_t neorv32_neoled_get_buffer_size(void)
Definition neorv32_neoled.c:210
void neorv32_neoled_disable(void)
Definition neorv32_neoled.c:180
NEORV32_NEOLED_CTRL_enum
Definition neorv32_neoled.h:38
@ NEOLED_CTRL_T_ONE_H_4
Definition neorv32_neoled.h:67
@ NEOLED_CTRL_T_ZERO_H_4
Definition neorv32_neoled.h:61
@ NEOLED_CTRL_PRSC1
Definition neorv32_neoled.h:43
@ NEOLED_CTRL_PRSC0
Definition neorv32_neoled.h:42
@ NEOLED_CTRL_TX_HALF
Definition neorv32_neoled.h:71
@ NEOLED_CTRL_T_ZERO_H_1
Definition neorv32_neoled.h:58
@ NEOLED_CTRL_TX_EMPTY
Definition neorv32_neoled.h:70
@ NEOLED_CTRL_T_ONE_H_3
Definition neorv32_neoled.h:66
@ NEOLED_CTRL_IRQ_CONF
Definition neorv32_neoled.h:69
@ NEOLED_CTRL_BUFS_0
Definition neorv32_neoled.h:46
@ NEOLED_CTRL_PRSC2
Definition neorv32_neoled.h:44
@ NEOLED_CTRL_T_TOT_4
Definition neorv32_neoled.h:55
@ NEOLED_CTRL_T_TOT_2
Definition neorv32_neoled.h:53
@ NEOLED_CTRL_STROBE
Definition neorv32_neoled.h:41
@ NEOLED_CTRL_T_TOT_0
Definition neorv32_neoled.h:51
@ NEOLED_CTRL_T_ONE_H_2
Definition neorv32_neoled.h:65
@ NEOLED_CTRL_TX_BUSY
Definition neorv32_neoled.h:73
@ NEOLED_CTRL_T_ZERO_H_0
Definition neorv32_neoled.h:57
@ NEOLED_CTRL_T_ONE_H_0
Definition neorv32_neoled.h:63
@ NEOLED_CTRL_T_ZERO_H_2
Definition neorv32_neoled.h:59
@ NEOLED_CTRL_T_ZERO_H_3
Definition neorv32_neoled.h:60
@ NEOLED_CTRL_MODE
Definition neorv32_neoled.h:40
@ NEOLED_CTRL_BUFS_3
Definition neorv32_neoled.h:49
@ NEOLED_CTRL_T_TOT_3
Definition neorv32_neoled.h:54
@ NEOLED_CTRL_TX_FULL
Definition neorv32_neoled.h:72
@ NEOLED_CTRL_T_TOT_1
Definition neorv32_neoled.h:52
@ NEOLED_CTRL_BUFS_2
Definition neorv32_neoled.h:48
@ NEOLED_CTRL_T_ONE_H_1
Definition neorv32_neoled.h:64
@ NEOLED_CTRL_BUFS_1
Definition neorv32_neoled.h:47
@ NEOLED_CTRL_EN
Definition neorv32_neoled.h:39
void neorv32_neoled_strobe_nonblocking(void)
Definition neorv32_neoled.c:157
void neorv32_neoled_setup(uint32_t prsc, uint32_t t_total, uint32_t t_high_zero, uint32_t t_high_one, int irq_mode)
Definition neorv32_neoled.c:47
void neorv32_neoled_write_nonblocking(uint32_t data)
Definition neorv32_neoled.h:102
void neorv32_neoled_setup_ws2812(int irq_mode)
Definition neorv32_neoled.c:71
Definition neorv32_neoled.h:29
uint32_t DATA
Definition neorv32_neoled.h:31
uint32_t CTRL
Definition neorv32_neoled.h:30