📄 display_mode.h
字号:
void DISPLAY_KEYDOWN_DRIVE()
// read(last) key
{
unsigned int l;
unsigned char g;
// value=0;
if(RLCD_DISPLAY_STATUS!=DISPLAY_KEY)// status switch
RPOINT_AUTO_DISPLAY=0x00;
RLCD_DISPLAY_STATUS=DISPLAY_KEY;
if(RFLAG_B_A_KU==1)// b ku
{
reference_last();
if(RCURRENT_REFERENCE>END_REFERENCE)
set_reference_value(END_REFERENCE);
if(RCURRENT_REFERENCE<=MIDDLE_REFERENCE)
{// changed
reference_next();// hui fu qian yi ge
//value=1;
RFLAG_B_A_KU=0;
}
}
//else
//value=1;
if(0==RFLAG_B_A_KU)
{
if(RFLAG_DISPLAY_KEY_SET ==0)
{
RPOINT_AUTO_DISPLAY=0x00;
if(RCURRENT_REFERENCE==0)
set_reference_value(MIDDLE_REFERENCE+1);// A+1----> RETURN--->A
reference_last();
if(MIDDLE_REFERENCE<RCURRENT_REFERENCE)
set_reference_value(FIRST_REFERENCE);
}
else
{
data_addr.addri=EP1_KEY_NUM;
if(1==read(EP1,2))
{
l=value_hex_from_bcd(wr_data[0])+100*value_hex_from_bcd(wr_data[1]);
if((l<=0x80)&&(0!=l))
{
if(RPOINT_AUTO_DISPLAY==0)
RPOINT_AUTO_DISPLAY=l-1;
else
RPOINT_AUTO_DISPLAY=RPOINT_AUTO_DISPLAY-1;
g=l-1;
if(RPOINT_AUTO_DISPLAY>g)
RPOINT_AUTO_DISPLAY=0;
data_addr.addri=RPOINT_AUTO_DISPLAY*4+EP1_KEY_ADDR_BLOCKADDR; //zhi xian an jian
display_autokeyuse();
}
}
}
}
if(RCURRENT_REFERENCE>END_REFERENCE)
set_reference_value(0);
SET_LCD_BUFFER_FORM_RCURRENT_REFERENCE();
RDISPLAY_TIMER=180;
}
//OK this
// 2003-3-26
void DISPLAY_OPENCLOSE_DRIVE()
// yao kong qi open close(key)
{ unsigned char *dn3;
unsigned char dn4;
if(RLCD_DISPLAY_STATUS==DISPLAY_CLOSE)
{
RLCD_DISPLAY_STATUS=DISPLAY_LIGHT;
RPOINT_AUTO_DISPLAY=0x00;
set_reference_value(0);
}
else
{
RLCD_DISPLAY_STATUS=DISPLAY_CLOSE;
dn3=&lram0;
for(dn4=0;dn4<24;dn4++)
{
(*dn3)=0x00;
dn3++;
}
}
RDISPLAY_TIMER=value_hex_from_bcd(RAM[R_DISPLAY_TIMER]);
}
//ok this
void display_pointuse()
{
if(RLCD_DISPLAY_STATUS==DISPLAY_AUTO)
if((RFLAG_B_A_KU==1)||(0==RFLAG_DISPLAY_AUTO_SET))
RLCD_DISPLAY_STATUS=DISPLAY_POINT;
// ye jing ping xian shi zhuang tai wei zi dong fan ping zhuang tai shi
// dang qian xian shi zhuang tai zai b ku huo zi dong lun xian mei she zhi
// zhuang tai zhuan huan
if(RLCD_DISPLAY_STATUS==DISPLAY_DATE)// + - zhuang tai zhuan huan
RLCD_DISPLAY_STATUS=DISPLAY_POINT;
}
DISPLAY_POINTADD_DRIVE()
// +key( yao kong qi)
{
unsigned char dn5;
display_pointuse();
switch(RLCD_DISPLAY_STATUS)
{
case DISPLAY_KEY:
DISPLAY_KEY_DRIVE();
break;
default:
// point if other no, else add(a or b)
if(RLCD_DISPLAY_STATUS==DISPLAY_POINT)
{
reference_next();
if(RFLAG_B_A_KU==1)// b ku
{
if(RCURRENT_REFERENCE> END_REFERENCE)
set_reference_value(MIDDLE_REFERENCE+1);
}
else
{
if(RCURRENT_REFERENCE> MIDDLE_REFERENCE)
set_reference_value(0);
}
RDISPLAY_TIMER=180;
SET_LCD_BUFFER_FORM_RCURRENT_REFERENCE();
}
}
}
//ok
void DISPLAY_POINTSUB_DRIVE()
// -key
{
unsigned char dn7;
display_pointuse();
switch(RLCD_DISPLAY_STATUS)
{
case DISPLAY_KEY:
DISPLAY_KEYDOWN_DRIVE();
break;
default:
// point if other no, else add(a or b)
if(RLCD_DISPLAY_STATUS==DISPLAY_POINT)
{
if(RFLAG_B_A_KU==1)
{
if(RCURRENT_REFERENCE<=MIDDLE_REFERENCE+1)
set_reference_value(END_REFERENCE);
else
reference_last();
}
else
{
if(RCURRENT_REFERENCE==0)
set_reference_value(MIDDLE_REFERENCE+1);// a+1----->return a
reference_last();
}
if(RCURRENT_REFERENCE> END_REFERENCE)
set_reference_value(END_REFERENCE);
RDISPLAY_TIMER=180;
SET_LCD_BUFFER_FORM_RCURRENT_REFERENCE();
}
}
}
extern unsigned char shangdian_ack();
void display_mode()
{
unsigned char dn11;
unsigned char *dn12;
if(1==rchange_a_b_display)
{
rchange_a_b_display=0;
if(RFLAG_B_A_KU==1) //b ku
{
set_reference_value(MIDDLE_REFERENCE+1);
RLCD_DISPLAY_STATUS=DISPLAY_AUTO;
RDISPLAY_TIMER=180; // k3minute b_ku
}
else
{//set_reference_value(0);
set_reference_value(END_REFERENCE);
RPOINT_AUTO_DISPLAY=0xff;
DISPLAY_NEXT();
RLCD_DISPLAY_STATUS=DISPLAY_AUTO;
RDISPLAY_TIMER=180;
}
SET_LCD_BUFFER_FORM_RCURRENT_REFERENCE();
}
//ok
// shi jian dao
if(RDISPLAY_MODE_SECOND!=RSOFT_RTC_SECOND)
{
RDISPLAY_MODE_SECOND=RSOFT_RTC_SECOND;
if(light_time!=0)
light_time=light_time-1;
// ting dian shi bei guan bu da kai
if((0==light_time)||(0==shangdian_ack()))
{
pindir_light=1;
pin_light=0;
}
else
{
pindir_light=1;
pin_light=1;
}
// comm character
if(display_comm!=0)
display_comm=display_comm-1;
// display time sub
if(0!=RDISPLAY_TIMER)
RDISPLAY_TIMER=RDISPLAY_TIMER-1;
if(0==RDISPLAY_TIMER)
{
RDISPLAY_TIMER=value_hex_from_bcd(RAM[R_DISPLAY_TIMER]); // g8SECOND
if( RDISPLAY_ENVENT==DISPLAY_ENVENT_NO)
switch(RLCD_DISPLAY_STATUS)
{
case DISPLAY_CLOSE:
RDISPLAY_ENVENT=DISPLAY_ENVENT_OPENCLOSE;
break;
case DISPLAY_AUTO:
DISPLAY_NEXT();
break;
default: // other status -------------->auto
RLCD_DISPLAY_STATUS=DISPLAY_AUTO;
set_reference_value(END_REFERENCE);
RPOINT_AUTO_DISPLAY=0xff;
DISPLAY_NEXT();
break;
}
}
}
//ok
if(1==RFLAG_DISPLAY_05SEC) // SET LRAM IN HALF SECOND
{
// chu li envent
switch(RDISPLAY_ENVENT)
{
case DISPLAY_ENVENT_OPENCLOSE:
DISPLAY_OPENCLOSE_DRIVE();
break;
case DISPLAY_ENVENT_KEY :
DISPLAY_KEY_DRIVE();
break;
case DISPLAY_ENVENT_POINT:
DISPLAY_POINT_DRIVE();
break;
case DISPLAY_ENVENT_POINTADD:
DISPLAY_POINTADD_DRIVE();
break;
case DISPLAY_ENVENT_POINTSUB:
DISPLAY_POINTSUB_DRIVE();
break;
case DISPLAY_ENVENT_DATE:
DISPLAY_DATE_DRIVE();
break;
case DISPLAY_ENVENT_KEYDOWN:
DISPLAY_KEYDOWN_DRIVE();
break;
}
// tong xun ke neng deng dui
RDISPLAY_ENVENT=DISPLAY_ENVENT_NO;
//ok
// 05sec
RFLAG_DISPLAY_05SEC=0;
switch(RLCD_DISPLAY_STATUS)
{
case DISPLAY_DATE :
display_date_use();
break;
default:
if(RLCD_DISPLAY_STATUS==DISPLAY_CLOSE)
{
displayalloroff(0);
}
else
{
if(RLCD_DISPLAY_STATUS==DISPLAY_LIGHT)
{
displayalloroff(0xff);
}
else
// kao lv yi xia pan suo yin hao ju ding
{
SET_LCD_BUFFER_FORM_RCURRENT_REFERENCE();
lcd_display();
}
}
}
}
}
//OK this
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -