12 #define SIGNAL_PORT PORTA 13 #define SIGNAL_1_MASK 0b00000100 14 #define SIGNAL_2_MASK 0b00001000 58 extern volatile char cmdline[81];
85 #define SCREENABSPAGE_VERSION 128 87 #define ADCVoltsPerLSB (2.56/1024) 88 #define dividerP3 (4.7/(4.7+8.2)) 89 #define dividerP5 (4.7/(4.7+8.2)) 90 #define dividerUnreg (4.7/(4.7+68)) 91 #define dividerSWUnreg (4.7/(4.7+68)) 95 extern volatile uint8_t
tFlags;
102 extern volatile uint8_t
cFlags;
111 extern volatile uint8_t
blFlags;
118 extern volatile uint8_t
dFlags;
displayValues_t displayValues
Holds all values that are used for display.
Definition: display.c:99
static const uint8_t TFLAG_HOUR
Is set once per Hour at Minute 0.
Definition: display.h:98
#define SIGNAL_PORT
Definition: display.h:12
Display is a Winstar WH1602B3 or equivalent.
Definition: display.h:130
static const uint8_t CFLAG_TIMERECEIVED
Received a Travel Time from the Sensor.
Definition: display.h:103
We have no LCD at all, only analog output.
Definition: display.h:132
static const uint8_t CFLAG_CMDRECEIVED
Received the terminating CR of a Command.
Definition: display.h:107
void SetAnalogPerCent(double perCent)
Sets the analog Instrument display.
Definition: display.c:844
void delay10ms(delay_t delay10ms)
Delay for a multiple of 10ms.
Definition: display.c:827
char not10ErrorChar
Character to appear on Position "More or less than 10 Values received".
Definition: display.h:48
uint8_t boCnt
Counts the number of Brown Out Resets.
Definition: display.c:97
RTC is running faster by 1%.
Definition: display.h:70
uint8_t bootLdPage[]
Holds the data for boot loader write/read.
Definition: display.c:116
static void Sig1OFF(void)
Switches Signal Output Optocoupler 1 to OFF.
Definition: display.h:181
uint8_t literUnitChar
Holds a small or capital letter 'L'.
Definition: display.h:36
static void SensorPowerOn(void)
Switches the Sensor Power on.
Definition: display.h:146
void ResetDisplayFlags(void)
Resets the Error Flags in the Display.
Definition: display.c:131
Display is a Winstar WH2004A or equivalent.
Definition: display.h:131
Advance to the next of all available pages.
Definition: display.h:80
LITERS_T liters
The current volume in liters.
Definition: display.h:35
static void SensorPowerOff(void)
Switches the Sensor Power off.
Definition: display.h:153
#define SIGNAL_1_MASK
Definition: display.h:13
uint8_t wdrCnt
Counts the number of Watchdog Resets.
Definition: display.c:96
uint8_t delay_t
Definition: display.h:216
static const uint8_t BOOTLDOK
Boot Loader Data received ("+")
Definition: display.h:114
char parityErrorChar
Character to appear on Position "Parity Error".
Definition: display.h:45
static void Sig1ON(void)
Switches Signal Output Optocoupler 1 to ON.
Definition: display.h:174
char sensorDeadChar
Character to appear on Position "SensorDead".
Definition: display.h:47
RTCAdj_t
Current speed of the RTC (Real Time Clock)
Definition: display.h:67
Do not change the page, just refresh the current one.
Definition: display.h:81
double lastReportedVolume
Last Volume spontaneously reported.
Definition: display.c:108
static const uint8_t TFLAG_DAY
Is set every Day at Midnight.
Definition: display.h:99
displayType_t
Constants for Display Type.
Definition: display.h:128
static bool GetSig1(void)
Gets State of Optocoupler 1 True means Optocoupler is ON.
Definition: display.h:203
displayType_t displayType
static void BluetoothPowerOff(void)
Switches the Bluetooth Power off.
Definition: display.h:167
RTC is running at normal speed (realtime)
Definition: display.h:69
static const uint8_t CFLAG_PARITYERROR
Parity Error in received Byte.
Definition: display.h:105
static const uint8_t CFLAG_TEMPRECEIVED
Received the current Sensor Temperature.
Definition: display.h:104
static const uint8_t CFLAG_CHECKSUMERROR
Checksum Error in received Telegram.
Definition: display.h:106
volatile uint8_t blFlags
Boot Loader Communication Flags.
Definition: display.c:82
#define LCD_MAX_LINES
Maximum allowable numbers of lines for all possible displays.
Definition: lcd.h:16
uint8_t nlitersTemp
Number of values added to liters_temp.
Definition: display.h:44
LITERS_T litersPerHour
The volume change for the running hour.
Definition: display.h:37
LITERS_T litersLastHour
The volume for the last hour.
Definition: display.h:38
int8_t tempSemi
The temperature in 0.5°C-units.
Definition: display.h:42
uint8_t pulseTimeMult
1 or 8 clocks from sensor timer1 prescaler
Definition: display.c:104
#define SIGNAL_2_MASK
Definition: display.h:14
double litersPerCent
Filling of the cistern in percent.
Definition: display.h:41
static bool GetSig2(void)
Gets State of Optocoupler 2 True means Optocoupler is ON.
Definition: display.h:211
double LITERS_T
Remember that liters may go negative.
Definition: display.h:16
static const uint8_t BOOTLDDATA
Boot Loader Data received ("=")
Definition: display.h:113
volatile uint8_t tFlags
Flags set by Timer Interrupt to signal Main Loop.
Definition: display.c:73
volatile uint8_t dFlags
Flags Controlling Debug Output.
Definition: display.c:83
static void BluetoothPowerOn(void)
Switches the Bluetooth Power on.
Definition: display.h:160
LITERS_T litersToday
The volume change for today.
Definition: display.h:39
double speedOfSound
In m/s, temperature calibrated.
Definition: display.c:102
uint8_t width
The width of the display in characters.
Definition: display.h:138
static const uint8_t DFLAG_SENSOR
Gives information about Sensor Communication.
Definition: display.h:120
uint8_t tempRaw
Raw value from the ADC.
Definition: display.c:106
uint16_t bootLdAdr
The address of the page.
Definition: display.c:117
volatile uint8_t hrCnt
Hours of the RTC.
Definition: display.c:64
static const uint8_t DFLAG_ADC
Gives information about ADC MIN/MAX Values.
Definition: display.h:121
LITERS_T litersTemp
For averaging.
Definition: display.h:43
Show a special page. Currently only used for the init-screen.
Definition: display.h:82
Parameters for each of the possible Displays.
Definition: display.h:137
volatile uint8_t secCnt
Seconds of the RTC.
Definition: display.c:62
uint16_t pulseTimeInt
Traveling time of the last pulse in timer1-clocks of the sensor CPU.
Definition: display.c:100
static const uint8_t CFLAG_BYTERECEIVED
Received a Byte from the host.
Definition: display.h:108
static const uint8_t BOOTLDPROTECTED
Boot Loader Protected Area received ("P")
Definition: display.h:116
LITERS_T LitersFromDist(double dist)
Computes the Volume in Liters from the Distance in Meters.
Definition: display.c:458
showScreen_t
Command for ShowScreen()
Definition: display.h:77
Advance to the next page of the frequently used.
Definition: display.h:79
static const uint8_t TFLAG_MIN
Is set once per Minute at Second 0.
Definition: display.h:97
static const uint8_t BOOTLDERROR
Boot Loader Error received ("-")
Definition: display.h:115
volatile uint8_t tickCnt
counter for timer0 interrupts
Definition: display.c:61
const displayMetrics_T displayMetrics[]
Metrics for each of the possible displays.
Definition: display.c:90
volatile uint8_t cFlags
Flags set by Serial Communication with the Sensor.
Definition: display.c:80
static void Sig2ON(void)
Switches Signal Output Optocoupler 2 to ON.
Definition: display.h:188
volatile RTCAdj_t RTCAdj
Soft Adjustment of the RTC (+-1%)
Definition: display.c:65
volatile uint8_t minCnt
Minutes of the RTC.
Definition: display.c:63
static const uint8_t TFLAG_SEC
Is set once per Second.
Definition: display.h:96
static const uint8_t DFLAG_DCF77
Gives information about DCF77 and RTC.
Definition: display.h:119
const char * RTCAdjTxt[]
Human readable interpretation of RTCAdj.
Definition: display.c:66
double pulseTime
In seconds.
Definition: display.c:103
uint8_t deadTime
Received dead time value from the sensor.
Definition: display.c:101
char * error
Pointer to a string describing the most urgent error.
Definition: display.h:49
Holds all values used for Display Purposes.
Definition: display.h:33
static const uint8_t BOOTLDHELLO
Boot Loader Hello received ("*")
Definition: display.h:112
uint8_t nLines
The number of lines.
Definition: display.h:139
char checksumErrorChar
Character to appear on Position "Checksum Error".
Definition: display.h:46
RTC is running slower by 1%.
Definition: display.h:71
volatile char cmdline[81]
Ready to hold 80 chars plus terminating 0.
Definition: display.c:110
static const uint8_t CFLAG_BTRECEIVED
Received a telegram from the Bluetooth-Module.
Definition: display.h:109
LITERS_T litersYesterday
The volume at last midnight.
Definition: display.h:40
static void Sig2OFF(void)
Switches Signal Output Optocoupler 2 to OFF.
Definition: display.h:195
double distance
To the reflecting surface in meters.
Definition: display.c:105