Added OLED Display autoscroll during periods of OLED data inactivity (#6546)
* Added OLED Display autoscroll during periods of OLED data inactivity. * Fixing compile errors * Feedback from review
This commit is contained in:
parent
f22c5c17b6
commit
957070a6b5
12 changed files with 72 additions and 46 deletions
|
@ -19,6 +19,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||
#define TIMER_H 1
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#if defined(__AVR__)
|
||||
#include "avr/timer_avr.h"
|
||||
|
@ -46,6 +47,16 @@ uint32_t timer_read32(void);
|
|||
uint16_t timer_elapsed(uint16_t last);
|
||||
uint32_t timer_elapsed32(uint32_t last);
|
||||
|
||||
// Utility functions to check if a future time has expired & autmatically handle time wrapping if checked / reset frequently (half of max value)
|
||||
inline bool timer_expired(uint16_t current, uint16_t last)
|
||||
{
|
||||
return current - last < 0x8000;
|
||||
}
|
||||
|
||||
inline bool timer_expired32(uint32_t current, uint32_t future) {
|
||||
return current - future < 0x80000000;
|
||||
}
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
@ -4,14 +4,13 @@
|
|||
#define __DELAY_BACKWARD_COMPATIBLE__
|
||||
#include <util/delay.h>
|
||||
#include "common/timer.h"
|
||||
#include "Arduino.h"
|
||||
|
||||
|
||||
unsigned long millis()
|
||||
unsigned long millis(void)
|
||||
{
|
||||
return timer_read32();
|
||||
}
|
||||
unsigned long micros()
|
||||
unsigned long micros(void)
|
||||
{
|
||||
return timer_read32() * 1000UL;
|
||||
}
|
||||
|
@ -23,7 +22,7 @@ void delayMicroseconds(unsigned int us)
|
|||
{
|
||||
_delay_us(us);
|
||||
}
|
||||
void init()
|
||||
void init(void)
|
||||
{
|
||||
timer_init();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue