-
Notifications
You must be signed in to change notification settings - Fork 0
/
digits.h
36 lines (25 loc) · 1.15 KB
/
digits.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
/*
* digits.h
*
* Модуль для отрисовки цифр часов и анимации переходов
*
* Author: Погребняк Дмитрий (Pogrebnyak Dmitry, http://aterlux.ru/)
*/
#ifndef DIGITS_H_
#define DIGITS_H_
#include <avr/io.h>
#define DIGIT_EMPTY 255
#define DIGIT_TIME_SEPARATOR 10
#define DIGIT_DATE_SEPARATOR 11
#define DIGIT_WIDTH 16
/* Выбирает начертание цифр */
void digits_select_font(uint8_t font);
/* Возвращает код текущего начертания цифр */
uint8_t digits_current_font();
/* Выводит указанную цифру в указанной горизонтальной позиции */
uint8_t digit_output(uint8_t d, uint8_t x);
uint8_t digit_output_inv(uint8_t d, uint8_t x);
/* Помещает две последние десятичные цифры числа num в два байта, начиная с p_buf.
* Если leading_zero == 0, то для чисел меньше 10 на первой позиции помещает DIGIT_EMPTY*/
uint8_t two_digits(uint8_t num, uint8_t * p_buf, uint8_t leading_zero);
#endif /* DIGITS_H_ */