436 lines
7.7 KiB
C
436 lines
7.7 KiB
C
|
|
#include "includes.h"
|
|||
|
|
|
|||
|
|
// <20><>ʾһ<CABE><D2BB>8<EFBFBD><38><EFBFBD><EFBFBD>
|
|||
|
|
// pos: Fld1Ϊ0~3<><33><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ң<EFBFBD><D2A3><EFBFBD>ֵ<EFBFBD><D6B5>1~4)<29><>Fld2Ϊ4~6<><36><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>5~7<><37><EFBFBD><EFBFBD>
|
|||
|
|
// Fld3Ϊ7~9<><39><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>8~10<31><30><EFBFBD><EFBFBD>Fld4Ϊ10~12<31><32><EFBFBD><EFBFBD>ֵ<EFBFBD><D6B5>11~13)
|
|||
|
|
void Disp_DispChar(u8 pos, char c)
|
|||
|
|
{
|
|||
|
|
if(pos == 0)
|
|||
|
|
HT1621_WriteChar(c, 243, 233, 235, 246, 245, 244, 234);
|
|||
|
|
else if(pos == 1)
|
|||
|
|
HT1621_WriteChar(c, 223, 213, 215, 226, 225, 224, 214);
|
|||
|
|
else if(pos == 2)
|
|||
|
|
HT1621_WriteChar(c, 203, 193, 195, 206, 205, 204, 194);
|
|||
|
|
else if(pos == 3)
|
|||
|
|
HT1621_WriteChar(c, 183, 174, 176, 186, 185, 184, 175);
|
|||
|
|
else if(pos == 4)
|
|||
|
|
HT1621_WriteChar(c, 131, 132, 112, 101, 111, 121, 122);
|
|||
|
|
else if(pos == 5)
|
|||
|
|
HT1621_WriteChar(c, 133, 134, 114, 103, 113, 123, 124);
|
|||
|
|
else if(pos == 6)
|
|||
|
|
HT1621_WriteChar(c, 135, 136, 116, 105, 115, 125, 126);
|
|||
|
|
else if(pos == 7)
|
|||
|
|
HT1621_WriteChar(c, 41, 42, 22, 12, 21, 31, 32);
|
|||
|
|
else if(pos == 8)
|
|||
|
|
HT1621_WriteChar(c, 43, 44, 24, 14, 23, 33, 34);
|
|||
|
|
else if(pos == 9)
|
|||
|
|
HT1621_WriteChar(c, 45, 46, 26, 16, 25, 35, 36);
|
|||
|
|
else if(pos == 10)
|
|||
|
|
HT1621_WriteChar(c, 66, 65, 85, 95, 86, 76, 75);
|
|||
|
|
else if(pos == 11)
|
|||
|
|
HT1621_WriteChar(c, 64, 63, 83, 93, 84, 74, 73);
|
|||
|
|
else if(pos == 12)
|
|||
|
|
HT1621_WriteChar(c, 62, 61, 81, 91, 82, 72, 71);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld1Text(s8 *text)
|
|||
|
|
{
|
|||
|
|
u8 len = strlen(text), i = 0, c;
|
|||
|
|
|
|||
|
|
if(len < 4) // ǧλ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(0, c);
|
|||
|
|
|
|||
|
|
if(len < 3) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(1, c);
|
|||
|
|
|
|||
|
|
if(len < 2) // ʮλ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(2, c);
|
|||
|
|
|
|||
|
|
if(len < 1) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(3, c);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>x10
|
|||
|
|
void Disp_Fld1PointMultiOn(u8 posOrMulti)
|
|||
|
|
{
|
|||
|
|
if(posOrMulti < 1 || posOrMulti > 4)
|
|||
|
|
return;
|
|||
|
|
|
|||
|
|
Disp_Fld1PointMultiOff();
|
|||
|
|
|
|||
|
|
if(posOrMulti == 1) // С<><D0A1><EFBFBD><EFBFBD>1λ
|
|||
|
|
HT1621_WriteBuf(236, 1);
|
|||
|
|
else if(posOrMulti == 2) // С<><D0A1><EFBFBD><EFBFBD>2λ
|
|||
|
|
HT1621_WriteBuf(216, 1);
|
|||
|
|
else if(posOrMulti == 3) // С<><D0A1><EFBFBD><EFBFBD>3λ
|
|||
|
|
HT1621_WriteBuf(196, 1);
|
|||
|
|
else // <20><>ʾx10
|
|||
|
|
HT1621_WriteBuf(145, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld1PointMultiOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(236, 0);
|
|||
|
|
HT1621_WriteBuf(216, 0);
|
|||
|
|
HT1621_WriteBuf(196, 0);
|
|||
|
|
HT1621_WriteBuf(145, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld1PointOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(236, 0);
|
|||
|
|
HT1621_WriteBuf(216, 0);
|
|||
|
|
HT1621_WriteBuf(196, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾѹ<CABE><D1B9><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld2Text(s8 *text)
|
|||
|
|
{
|
|||
|
|
u8 len = strlen(text), i = 0, c;
|
|||
|
|
|
|||
|
|
if(len < 3) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(4, c);
|
|||
|
|
|
|||
|
|
if(len < 2) // ʮλ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(5, c);
|
|||
|
|
|
|||
|
|
if(len < 1) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(6, c);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld2PointOn(u8 pos)
|
|||
|
|
{
|
|||
|
|
if(pos == 1)
|
|||
|
|
HT1621_WriteBuf(104, 1);
|
|||
|
|
else if(pos == 2)
|
|||
|
|
HT1621_WriteBuf(102, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld2PointOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(104, 0);
|
|||
|
|
HT1621_WriteBuf(102, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>λ
|
|||
|
|
void Disp_Fld2UnitOn(TPresVacuUnit unit)
|
|||
|
|
{
|
|||
|
|
if(unit == UNIT_PV_PA)
|
|||
|
|
HT1621_WriteBuf(146, 1);
|
|||
|
|
else if(unit == UNIT_PV_MPA)
|
|||
|
|
HT1621_WriteBuf(106, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld2UnitOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(146, 0);
|
|||
|
|
HT1621_WriteBuf(106, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld3Text(s8 *text)
|
|||
|
|
{
|
|||
|
|
u8 len = strlen(text), i = 0, c;
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>λ
|
|||
|
|
if(len < 4)
|
|||
|
|
HT1621_WriteBuf(11, 0);
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(11, 1);
|
|||
|
|
i++;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(len < 3) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(7, c);
|
|||
|
|
|
|||
|
|
if(len < 2) // ʮλ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(8, c);
|
|||
|
|
|
|||
|
|
if(len < 1) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(9, c);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld3PointOn(u8 pos)
|
|||
|
|
{
|
|||
|
|
if(pos == 1)
|
|||
|
|
HT1621_WriteBuf(15, 1);
|
|||
|
|
else if(pos == 2)
|
|||
|
|
HT1621_WriteBuf(13, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld3PointOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(15, 0);
|
|||
|
|
HT1621_WriteBuf(13, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>λ
|
|||
|
|
void Disp_Fld3UnitOn(TPresTempUnit unit)
|
|||
|
|
{
|
|||
|
|
if(unit == UNIT_PT_C)
|
|||
|
|
HT1621_WriteBuf(55, 1);
|
|||
|
|
else if(unit == UNIT_PT_F)
|
|||
|
|
HT1621_WriteBuf(54, 1);
|
|||
|
|
else if(unit == UNIT_PT_MPA)
|
|||
|
|
HT1621_WriteBuf(56, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld3UnitOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(55, 0);
|
|||
|
|
HT1621_WriteBuf(54, 0);
|
|||
|
|
HT1621_WriteBuf(56, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD>¶<EFBFBD><C2B6><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld4Text(s8 *text)
|
|||
|
|
{
|
|||
|
|
u8 len = strlen(text), i = 0, c;
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>λ
|
|||
|
|
if(len < 4)
|
|||
|
|
HT1621_WriteBuf(96, 0);
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(96, 1);
|
|||
|
|
i++;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
if(len < 3) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(10, c);
|
|||
|
|
|
|||
|
|
if(len < 2) // ʮλ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(11, c);
|
|||
|
|
|
|||
|
|
if(len < 1) // <20><>λ
|
|||
|
|
c = ' ';
|
|||
|
|
else
|
|||
|
|
c = text[i++];
|
|||
|
|
Disp_DispChar(12, c);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾС<CABE><D0A1><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Fld4PointOn(u8 pos)
|
|||
|
|
{
|
|||
|
|
if(pos == 1)
|
|||
|
|
HT1621_WriteBuf(92, 1);
|
|||
|
|
else if(pos == 2)
|
|||
|
|
HT1621_WriteBuf(94, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld4PointOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(92, 0);
|
|||
|
|
HT1621_WriteBuf(94, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾ<EFBFBD><CABE>λ
|
|||
|
|
void Disp_Fld4UnitOn(TPresTempUnit unit)
|
|||
|
|
{
|
|||
|
|
if(unit == UNIT_PT_C)
|
|||
|
|
HT1621_WriteBuf(51, 1);
|
|||
|
|
else if(unit == UNIT_PT_F)
|
|||
|
|
HT1621_WriteBuf(52, 1);
|
|||
|
|
else if(unit == UNIT_PT_MPA)
|
|||
|
|
HT1621_WriteBuf(53, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld4UnitOff()
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(51, 0);
|
|||
|
|
HT1621_WriteBuf(52, 0);
|
|||
|
|
HT1621_WriteBuf(53, 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ѹ<EFBFBD><D1B9>ʾ<EFBFBD>л<EFBFBD>
|
|||
|
|
void Disp_SwitchDiffUnit(TDiffUnit unit)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(182, 0); // %
|
|||
|
|
HT1621_WriteBuf(181, 0); // L
|
|||
|
|
HT1621_WriteBuf(171, 0); // m3
|
|||
|
|
HT1621_WriteBuf(173, 0); // kg
|
|||
|
|
HT1621_WriteBuf(172, 0); // kPa
|
|||
|
|
HT1621_WriteBuf(141, 0); // mmH2O
|
|||
|
|
HT1621_WriteBuf(142, 0); // inH2O
|
|||
|
|
HT1621_WriteBuf(144, 0); // PSI
|
|||
|
|
HT1621_WriteBuf(143, 0); // CAL
|
|||
|
|
|
|||
|
|
if(unit == UNIT_CAL)
|
|||
|
|
HT1621_WriteBuf(143, 1);
|
|||
|
|
else if(unit == UNIT_PSI)
|
|||
|
|
HT1621_WriteBuf(144, 1);
|
|||
|
|
else if(unit == UNIT_INH2O)
|
|||
|
|
HT1621_WriteBuf(142, 1);
|
|||
|
|
else if(unit == UNIT_MMH2O)
|
|||
|
|
HT1621_WriteBuf(141, 1);
|
|||
|
|
else if(unit == UNIT_KPA)
|
|||
|
|
HT1621_WriteBuf(172, 1);
|
|||
|
|
else if(unit == UNIT_KG)
|
|||
|
|
HT1621_WriteBuf(173, 1);
|
|||
|
|
else if(unit == UNIT_M3)
|
|||
|
|
HT1621_WriteBuf(171, 1);
|
|||
|
|
else if(unit == UNIT_L)
|
|||
|
|
HT1621_WriteBuf(181, 1);
|
|||
|
|
else // <20>ٷֱ<D9B7>%
|
|||
|
|
HT1621_WriteBuf(182, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><>ʾҺԴ
|
|||
|
|
void Disp_SwitchSource(TDispSource src)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(212, 0);
|
|||
|
|
HT1621_WriteBuf(201, 0);
|
|||
|
|
HT1621_WriteBuf(202, 0);
|
|||
|
|
HT1621_WriteBuf(191, 0);
|
|||
|
|
HT1621_WriteBuf(192, 0);
|
|||
|
|
HT1621_WriteBuf(156, 0);
|
|||
|
|
|
|||
|
|
if(src == SOURCE_LNG)
|
|||
|
|
HT1621_WriteBuf(212, 1);
|
|||
|
|
else if(src == SOURCE_O2)
|
|||
|
|
HT1621_WriteBuf(201, 1);
|
|||
|
|
else if(src == SOURCE_N2)
|
|||
|
|
HT1621_WriteBuf(202, 1);
|
|||
|
|
else if(src == SOURCE_AR)
|
|||
|
|
HT1621_WriteBuf(191, 1);
|
|||
|
|
else if(src == SOURCE_CO2)
|
|||
|
|
HT1621_WriteBuf(192, 1);
|
|||
|
|
else // H2
|
|||
|
|
HT1621_WriteBuf(156, 1);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_WriteNeedle(u8 val)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(256, val >= 1);
|
|||
|
|
HT1621_WriteBuf(255, val >= 2);
|
|||
|
|
HT1621_WriteBuf(254, val >= 3);
|
|||
|
|
HT1621_WriteBuf(253, val >= 4);
|
|||
|
|
HT1621_WriteBuf(252, val >= 5);
|
|||
|
|
HT1621_WriteBuf(251, val >= 6);
|
|||
|
|
HT1621_WriteBuf(241, val >= 7);
|
|||
|
|
HT1621_WriteBuf(242, val >= 8);
|
|||
|
|
HT1621_WriteBuf(232, val >= 9);
|
|||
|
|
HT1621_WriteBuf(231, val >= 10);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// д<><D0B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_WriteBattery(u8 val)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(155, 1);
|
|||
|
|
HT1621_WriteBuf(152, val >= 1);
|
|||
|
|
HT1621_WriteBuf(151, val >= 2);
|
|||
|
|
HT1621_WriteBuf(153, val >= 3);
|
|||
|
|
HT1621_WriteBuf(154, val >= 4);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// д<>ź<EFBFBD>ǿ<EFBFBD><C7BF>
|
|||
|
|
void Disp_WriteStrength(u8 val)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(161, 1);
|
|||
|
|
HT1621_WriteBuf(162, val >= 1);
|
|||
|
|
HT1621_WriteBuf(163, val >= 2);
|
|||
|
|
HT1621_WriteBuf(164, val >= 3);
|
|||
|
|
HT1621_WriteBuf(165, val >= 4);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// дͨѶ״̬
|
|||
|
|
void Disp_WriteCommunication(u8 val)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(166, val != 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// д<>澯״̬
|
|||
|
|
void Disp_WriteAlarm(u8 val)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(221, val != 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// д<><D0B4><EFBFBD><EFBFBD>״̬
|
|||
|
|
void Disp_WriteError(u8 val)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(222, val != 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// д<><D0B4>װ״̬
|
|||
|
|
void Disp_WriteFill(u8 val)
|
|||
|
|
{
|
|||
|
|
HT1621_WriteBuf(211, val != 0);
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD>
|
|||
|
|
void Disp_Clear()
|
|||
|
|
{
|
|||
|
|
memset(&VideoBuf, 0, sizeof(VideoBuf));
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸
|
|||
|
|
void Disp_SetBlinkVisible(u8 visible)
|
|||
|
|
{
|
|||
|
|
VideoBuf.blink_visible = visible;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld1Blink(u8 blink)
|
|||
|
|
{
|
|||
|
|
VideoBuf.fld1_blink = blink;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld2Blink(u8 blink)
|
|||
|
|
{
|
|||
|
|
VideoBuf.fld2_blink = blink;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld3Blink(u8 blink)
|
|||
|
|
{
|
|||
|
|
VideoBuf.fld3_blink = blink;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_Fld4Blink(u8 blink)
|
|||
|
|
{
|
|||
|
|
VideoBuf.fld4_blink = blink;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
void Disp_BatteryBlink(u8 blink)
|
|||
|
|
{
|
|||
|
|
VideoBuf.battery_blink = blink;
|
|||
|
|
}
|