/***************************************************************
INCLUDE FILE
****************************************************************/
#include "Display.h"
/***************************************************************
DEFINE
****************************************************************/
/***************************************************************
MACRO'S
***************************************************************/
/**************************************************************
TYPE DEFINITIONS
**************************************************************/
/**************************************************************
GOLOBAL VARIABLES
**************************************************************/
const unsigned char cCOM0TemperatureDisplayData[17] = {0x00 , 0x00 , 0x00 , 0x00 , 0x40 ,
0x40 , 0xC0 , 0xC0 , 0xC2 , 0xC2 ,
0xC6 , 0xC6 , 0xCE , 0xCE , 0xDE ,
0xDE , 0xFE};
const unsigned char cCOM1TemperatureDisplayData[17] = {0x00 , 0x00 , 0x00 , 0x40 , 0x40 ,
0xC0 , 0xC0 , 0xC2 , 0xC2 , 0xC6 ,
0xC6 , 0xCE , 0xCE , 0xDE , 0xDE ,
0xFE , 0xFE};
const unsigned char cCOM2TemperatureDisplayData[17] = {0x40 , 0x40 , 0x60 , 0x60 , 0x60 ,
0x60 , 0x60 , 0x60 , 0x60 , 0x60 ,
0x60 , 0x60 , 0x60 , 0x60 , 0x60 ,
0x60 , 0x60};
const unsigned char cCOM3TemperatureDisplayData[17] = {0x00 , 0x80 , 0x80 , 0x80 , 0x80 ,
0x80 , 0x80 , 0x80 , 0x80 , 0x80 ,
0x80 , 0x80 , 0x80 , 0x80 , 0x80 ,
0x80 , 0x80};
const unsigned char cCOM0ModeDisplayData[4] = {0x00 , 0x00 , 0x00 , 0x00};
const unsigned char cCOM1ModeDisplayData[4] = {0x00 , 0x00 , 0x00 , 0x00};
const unsigned char cCOM2ModeDisplayData[4] = {0x02 , 0x06 , 0x86 , 0x8E};
const unsigned char cCOM3ModeDisplayData[4] = {0x00 , 0x00 , 0x00 , 0x00};
const unsigned char cCOM0WindSpeedDisplayData[9] = {0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00};
const unsigned char cCOM1WindSpeedDisplayData[9] = {0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00 , 0x00};
const unsigned char cCOM2WindSpeedDisplayData[9] = {0x01 , 0x11 , 0x11 , 0x11 , 0x11 , 0x11 , 0x11 , 0x11 , 0x11};
const unsigned char cCOM3WindSpeedDisplayData[9] = {0x00 , 0x00 , 0x40 , 0x41 , 0x43 , 0x47 , 0x4F , 0x5F , 0x7F};
/**************************************************************
Prototype : void Delay500Ms(void)
Called by : DelayMs();
Preconditions : -
Input parameters : None
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void Delay500Ms(void)
{
unsigned char c500MsCnt;
for(c500MsCnt = 50; c500MsCnt != 0; c500MsCnt--) {
DelayMs(10);
CLRWDT();
}
}
/**************************************************************
Prototype : void Delay200Ms(void)
Called by : DelayMs();
Preconditions : -
Input parameters : None
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void Delay200Ms(void)
{
unsigned char c500MsCnt;
for(c500MsCnt = 20; c500MsCnt != 0; c500MsCnt--) {
DelayMs(10);
CLRWDT();
}
}
/**************************************************************
Prototype : void DisplayUpdata(void)
Called by :
Preconditions : -
Input parameters : LcdData
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void DisplayUpdata(unsigned char cCom0Data,unsigned char cCom1Data,unsigned char cCom2Data,unsigned char cCom3Data)
{
WA = 1;
LCDDATA12 = cCom0Data;
LCDDATA15 = cCom1Data;
LCDDATA18 = cCom2Data;
LCDDATA21 = cCom3Data;
WA = 0;
}
/**************************************************************
Prototype : void DisplayTemperature(void)
Called by :
Preconditions : -
Input parameters : None
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void DisplayTemperature(void)
{
unsigned char cTemperatureDisplayNumber;
for(cTemperatureDisplayNumber = 0; cTemperatureDisplayNumber < 17; cTemperatureDisplayNumber++) {
DisplayUpdata(cCOM0TemperatureDisplayData[cTemperatureDisplayNumber],
cCOM1TemperatureDisplayData[cTemperatureDisplayNumber],
cCOM2TemperatureDisplayData[cTemperatureDisplayNumber],
cCOM3TemperatureDisplayData[cTemperatureDisplayNumber]);
Delay200Ms();
}
}
/**************************************************************
Prototype : void DisplayMode(void)
Called by :
Preconditions : -
Input parameters : None
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void DisplayMode(void)
{
unsigned char cModeDisplayNumber;
for(cModeDisplayNumber = 0; cModeDisplayNumber < 4; cModeDisplayNumber++) {
DisplayUpdata(cCOM0ModeDisplayData[cModeDisplayNumber],
cCOM1ModeDisplayData[cModeDisplayNumber],
cCOM2ModeDisplayData[cModeDisplayNumber],
cCOM3ModeDisplayData[cModeDisplayNumber]);
Delay200Ms();
}
}
/**************************************************************
Prototype : void DisplayWindSpeed(void)
Called by :
Preconditions : -
Input parameters : None
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void DisplayWindSpeed(void)
{
unsigned char cWindSpeedDisplayNumber;
for(cWindSpeedDisplayNumber = 0; cWindSpeedDisplayNumber < 9; cWindSpeedDisplayNumber++) {
DisplayUpdata(cCOM0WindSpeedDisplayData[cWindSpeedDisplayNumber],
cCOM1WindSpeedDisplayData[cWindSpeedDisplayNumber],
cCOM2WindSpeedDisplayData[cWindSpeedDisplayNumber],
cCOM3WindSpeedDisplayData[cWindSpeedDisplayNumber]);
Delay200Ms();
}
}
/**************************************************************
Prototype : void ClearDisplay(void)
Called by :
Preconditions : -
Input parameters : None
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void ClearDisplay(void)
{
WA = 1;
LCDDATA12 = 0;
LCDDATA15 = 0;
LCDDATA18 = 0;
LCDDATA21 = 0;
WA = 0;
Delay500Ms();
}
/**************************************************************
Prototype : void DisplayAllData(void)
Called by :
Preconditions : -
Input parameters : None
outpt parameters : None
Return value : None
Description : .
****************************************************************/
void DisplayAllData(void)
{
WA = 1;
LCDDATA12 = 0xFF;
LCDDATA15 = 0xFF;
LCDDATA18 = 0xFF;
LCDDATA21 = 0xFF;
WA = 0;
Delay500Ms();
Delay500Ms();
Delay500Ms();
}