📄 1632_h_v_c_e.c
字号:
{
while(x--);
}
void func_whole_buffer_clear(void)//全清除
{
unsigned char i;
for(i=0;i<64;i++)
{
BufferDisp[i]=0;
}
}
void func_whole_buffer_clear_x_H(void)//清除数字H
{
unsigned char i;
for(i=16;i<64;i++)
{
BufferDisp[i]=0;
}
}
void func_whole_buffer_clear_x_V(void)//清除数字V
{
unsigned char i;
for(i=32;i<64;i++)
{
BufferDisp[i]=0;
}
}
void func_write_arrow_H(unsigned char x)//写箭头H
{
unsigned char i;
for(i=0;i<16;i++)
{
BufferDisp[i]=BufferArrow_H[x][i];
}
}
void func_write_arrow_V(unsigned char x)//写箭头V
{
unsigned char i;
for(i=0;i<32;i++)
{
BufferDisp[i]=BufferArrow_V[x][i];
}
}
void func_fill_letter_to_buffer_x_H(unsigned char let,unsigned char pos)//有、无箭头写数字的位置H
{
unsigned char i;
for(i=0;i<16;i++)
{
BufferDisp[pos+i]=BufferLetter_H[let][i];
}
}
void func_fill_letter_to_buffer_x_V(unsigned char let,unsigned char pos)//有、无箭头双数字V
{
unsigned char i;
for(i=0;i<16;i++,pos++)
{
BufferDisp[pos]=BufferLetter_V[let][i];
pos++;
}
}
void func_fill_letter_to_buffer_x_one_V(unsigned char let,unsigned char pos)//有、无箭头单数字V
{
unsigned char i,buf;
for(i=0;i<16;i++)
{
buf=BufferLetter_V[let][i];
BufferDisp[pos]=buf>>4; pos++;
BufferDisp[pos]=buf<<4; pos++;
}
}
void func_disp_roll_H(unsigned char x)//箭头滚动H
{
unsigned char i,temp,buff;
if(x==1)
{
for(i=2;i<16;)
{
temp=BufferDisp[i];
buff=temp;
buff<<=1;
if(BufferDisp[i+1]&0x80)
buff|=0x01;
BufferDisp[i]=buff;
buff=BufferDisp[i+1];
buff<<=1;
if(temp&0x80)
buff|=0x01;
BufferDisp[i+1]=buff;
i+=2;
}
}
if(x==2)
{
for(i=2;i<16;)
{
temp=BufferDisp[i];
buff=temp;
buff>>=1;
if(BufferDisp[i+1]&0x01)
buff|=0x80;
BufferDisp[i]=buff;
buff=BufferDisp[i+1];
buff>>=1;
if(temp&0x01)
buff|=0x80;
BufferDisp[i+1]=buff;
i+=2;
}
}
}
void func_disp_roll_V(unsigned char x)//箭头滚动V
{
unsigned char i;
unsigned char d0,d1;
if(x==1)//down
{
d0=BufferDisp[30];
d1=BufferDisp[31];
for(i=31;i>1;i--)
{
BufferDisp[i]=BufferDisp[i-2];
}
BufferDisp[0]=d0;
BufferDisp[1]=d1;
}
if(x==2)//up
{
d0=BufferDisp[0];
d1=BufferDisp[1];
for(i=0;i<30;i++)
{
BufferDisp[i]=BufferDisp[i+2];
}
BufferDisp[30]=d0;
BufferDisp[31]=d1;
}
}
void func_serious_init(void)//串口初始化
{
TMOD=0X20;
TL1=0Xe8; //f3
TH1=0Xe8; //1200
EA=1;
ES=0;
TR1=1;
SCON=0X50;
ES=1;
}
void initT0(void)//初始化定时器0
{
TH0=0x00;
TL0=0x00;
ET0=1;
TR0=1;
EA=1;
}
void int_to(void) interrupt 1 //定时器0中断
{
TF0=0;
TH0=0x00;
TL0=0x00;
used_time++;
if(++no_time>=150)
{
no_time=0;
if(up_dn)
{
shu++;
staute=0x08;
if(shu>=62)
{
up_dn=0;
staute=0x00;
}
}
else
{
shu--;
staute=0x04;
if(shu<=0)
{
up_dn=1;
staute=0x00;
}
}
FlagChanged=0;km=0;
ten=shu/10;
single=shu%10;
}
}
void func_long_disp_H(void)//长时间显示H
{
unsigned char i;
for(i=0;i<24;i++)
{
func_display_H();
}
}
void func_long_disp_V(void)//长时间显示V
{
unsigned char i;
for(i=0;i<24;i++)
{
func_display_V();
}
}
void func_out_of_service_H(void)//暂停显示H
{
unsigned char i;
for(i=0;i<64;i++)
{
BufferDisp[i]=BufferZT_H[i];
}
while(out)
{
func_display_H();
}
}
void func_out_of_service_C_E_H(void)//中英文暂停显示H
{
unsigned char i,k=64;
for(i=0;i<64;i++)
{
BufferDisp[i]=BufferZT_C_E_H[i];
}
while(out)
{
for(i=0;i<62;i++)
{
BufferDisp[i]=BufferDisp[i+2];
}
BufferDisp[62]=BufferZT_C_E_H[k];
k++;
BufferDisp[63]=BufferZT_C_E_H[k];
k++;
if(k>=160)k=0;
if(!out)return;
func_long_disp_H();
}
}
void func_out_of_service_V(void)//英文暂停显示V
{
unsigned char i,k=64;
for(i=0;i<64;i++)
{
BufferDisp[i]=BufferZT_V[i];
}
while(out)
{
for(i=0;i<62;i++)
{
BufferDisp[i]=BufferDisp[i+2];
}
BufferDisp[62]=BufferZT_V[k];
k++;
BufferDisp[63]=BufferZT_V[k];
k++;
if(k>=128)k=0;
if(!out)return;
func_long_disp_V();
}
}
void func_out_of_service_C_E_V(void)//中英文暂停显示V
{
unsigned char i,k=64;
for(i=0;i<64;i++)
{
BufferDisp[i]=BufferZT_C_E_V[i];
}
while(out)
{
for(i=0;i<62;i++)
{
BufferDisp[i]=BufferDisp[i+2];
}
BufferDisp[62]=BufferZT_C_E_V[k];
k++;
BufferDisp[63]=BufferZT_C_E_V[k];
k++;
if(k>=192)k=0;
if(!out)return;
func_long_disp_V();
}
}
void func_preselect_disp_H(void)//层选显示H
{
unsigned char i;
if(arriver_arrow==0)
return;
func_whole_buffer_clear();
for(i=0;i<32;i++)
{
BufferDisp[i+16]=BufferPreArrow_H[arriver_arrow-1][i];
}
FlagChanged=1;
tone1=1;tone2=1;
if(arriver_arrow==0x01)
{
tone1=0;
}
if(arriver_arrow==0x02)
{
tone2=0;
}
if(arriver_arrow==0x03)
{
tone1=0;tone2=0;
}
func_display_H();
tone1=1;tone2=1;
FlagChanged=1;
while(FlagChanged && (!select))
{
func_display_H();
}
}
void func_preselect_disp_V(void)//层选显示V
{
unsigned char i;
if(arriver_arrow==0)
return;
for(i=0;i<64;i++)
{
BufferDisp[i]=BufferPreArrow_V[arriver_arrow-1][i];
}
tone1=1;tone2=1;
if(arriver_arrow==0x01)
{
tone1=0;
}
if(arriver_arrow==0x02)
{
tone2=0;
}
if(arriver_arrow==0x03)
{
tone1=0;tone2=0;
}
func_display_V();
tone1=1;tone2=1;
FlagChanged=1;
while(FlagChanged && (!select))
{
func_display_V();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -