You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 lines
844 B
34 lines
844 B
/* profile.h */ |
|
|
|
#ifndef _PROFILE_H_ |
|
#define _PROFILE_H_ |
|
|
|
#include "common.h" |
|
|
|
void set_profile_temperature(temp_t temp); |
|
temp_t get_profile_temperature(uint8_t row); |
|
uint32_t profile_time(uint8_t line); |
|
temp_t temperature_at_time(uint32_t time); |
|
void set_profile_time(uint8_t row, uint16_t time, uint8_t time_units); |
|
uint16_t profile_get_time(uint8_t row); |
|
uint8_t profile_get_time_units(uint8_t row); |
|
void profile_select(uint8_t n); |
|
void profile_save(void); |
|
|
|
typedef struct profile_line { |
|
uint16_t temperature; /* store degrees C * 10 reference to absolute zero */ |
|
unsigned int time:14; |
|
unsigned int time_units:2; |
|
} profile_line_t; |
|
|
|
#define PROFILE_NAME_LENGTH 6 |
|
|
|
typedef struct profile { |
|
char name[PROFILE_NAME_LENGTH]; |
|
uint16_t start_temp; |
|
profile_line_t lines[6]; |
|
} profile_t; |
|
|
|
extern profile_t *profile_p; |
|
|
|
#endif
|
|
|