📄 display.c
字号:
par[0]=TDIG9;
twvfd_6311(); /* 写6311显示内存 */
/*************************************/
tab_bar_do(tdig_offset[22]);
tab_bar_do1(ad_disp_line[22]);
par[0]=TDIG10;
twvfd_6311(); /* 写6311显示内存 */
/*************************************/
tab_bar_do(tdig_offset[23]);
tab_bar_do1(ad_disp_line[23]);
par[0]=TDIG11;
twvfd_6311(); /* 写6311显示内存 */
/*************************************/
tab_bar_do(tdig_offset[24]);
tab_bar_do1(ad_disp_line[24]);
par[0]=TDIG12;
twvfd_6311(); /* 写6311显示内存 */
/*************************************/
}
/*************************************/
else
{
g=DIG1;
i=0;
while(i<23)
{
par[1]=tdig_offset[i]; /*第一片PT6311控制*/
i++;
par[2]=tdig_offset[i]; /* ##### */
i++;
par[0]=g;
g=g-3;
wvfd_6311();
}
par[1]=tdig_offset[i];
i++;
par[2]=tdig_offset[i]; /* ##### */
i++;
par[0]=DIG13;
wvfd_6311();
/************************************** 控制第二片PT6311芯片*/
//tmp if((b_close_mach)&&(auto_select_flg==0)) input_det();
g=TDIG1;
x=0;
while(x<23)
{
par[1]=tdig_offset[i];
i++;
x++;
par[2]=tdig_offset[i]; /* ##### */
i++;
x++;
par[0]=g;
g=g+3;
twvfd_6311();
}
}
}
void tab_bar_do(uchar num)
{ /* 查表得--该频谱的6311显示实数
参数: 格数
par[2] -- 中8位数
par[1] -- 低8位数 */
switch(display_num)
{
case 0:
case 5:
case 6:
par[1]=tab_bar1[num][0];
par[2]=tab_bar1[num][1];
break;
case 1:
case 7:
par[1]=tab_bar2[num][0];
par[2]=tab_bar2[num][1];
break;
case 2:
par[1]=tab_bar4[num][0];
par[2]=tab_bar4[num][1];
break;
case 3:
par[1]=tab_bar5[num][0];
par[2]=tab_bar5[num][1];
break;
case 4:
par[1]=tab_bar6[num][0];
par[2]=tab_bar6[num][1];
break;
}
}
void tab_bar_do1(uchar num)
{
uchar x,y;
if((display_num==5)||(display_num==6)) /*顶点保留*/
{
x=tab_bar4[num][0];
y=tab_bar4[num][1];
par[1]=par[1]|x;
par[2]=par[2]|y;
}
else if(display_num==7)
{
x=tab_bar3[num][0];
y=tab_bar3[num][1];
par[1]=par[1]|x;
par[2]=par[2]|y;
}
}
/****** 复制--表字符串到DIG4-DIG10 的显示字符串寄存数组 ******/
void copy_string(uchar code *tab_p)
{ /* 参数:tab_p 指向表中字符串头的指针 */
uchar j=50; /*一共装7个*/
uchar idata *temp_pp;
temp_pp=&tdig_offset[0];
while(j!=0)
{
*temp_pp=*tab_p; /*把程序空间中的值给RAM单元*/
temp_pp++; /*tab_p程序空间指针变量,temp_p内部数据空间指针变量*/
tab_p++;
j--;
}
}
/****** 查tab_string1表, 输入字串号, 返回表中字串头地址 *****/
uchar code *tab_string1_p(uchar num)
{
uchar code *temp_p; /*程序存储器指针*/
switch(string_num)
{
case 0:
temp_p=&tab_string29[0]; /*静音*/
break;
case 1:
temp_p=&tab_string30[0]; /*静音*/
break;
case 2:
temp_p=&tab_string31[0]; /*静音*/
break;
case 3:
temp_p=&tab_string32[0]; /*静音*/
break;
case 4:
temp_p=&tab_string33[0]; /*静音*/
break;
case 5:
temp_p=&tab_string34[0]; /*静音*/
break;
case 6:
temp_p=&tab_string35[0]; /*静音*/
break;
case 7:
temp_p=&tab_string36[0]; /*静音*/
break;
case 8:
temp_p=&tab_string37[0]; /*静音*/
break;
case 16:
temp_p=&tab_string38[0]; /*静音*/
break;
case 19:
temp_p=&tab_string39[0]; /*静音*/
break;
case 11:
case 9:
temp_p=&tab_string40[0]; /*静音*/
break;
case 17:
case 10:
temp_p=&tab_string41[0]; /*静音*/
break;
case 18:
temp_p=&tab_string42[0]; /*静音*/
break;
case 15:
temp_p=&tab_string43[0]; /*静音*/
break;
case 20:
temp_p=&tab_string44[0]; /*静音*/
break;
case 21:
temp_p=&tab_string3[0]; /*静音*/
break;
case 22:
temp_p=&tab_string22[0]; /*保护*/
break;
case 23:
temp_p=&tab_string26[0]; /*再见*/
break;
case 24:
temp_p=&tab_string27[0]; /*接入*/
break;
case 25:
temp_p=&tab_string28[0]; /*l---r*/
break;
case 26:
temp_p=&tab_string45[0]; /*auto*/
break;
case 27:
temp_p=&tab_string54[0]; /*dsp off*/
break;
case 28:
temp_p=&tab_string55[0]; /*dsp 1*/
break;
case 29:
temp_p=&tab_string56[0]; /*dsp 2*/
break;
case 30:
temp_p=&tab_string57[0]; /*dsp 3*/
break;
case 31:
temp_p=&tab_string58[0]; /*dsp 4*/
break;
case 32:
temp_p=&tab_string59[0]; /*dsp 5*/
break;
case 33:
temp_p=&tab_string60[0]; /*dsp 6*/
break;
case 34:
temp_p=&tab_string61[0]; /*dsp 7*/
break;
case 35:
temp_p=&tab_string62[0]; /*dsp 8*/
break;
case 65:
temp_p=&tab_string65[0]; /*delay*/
break;
default:
break;
}
return temp_p;
}
/****** 8位二进制数 -- 转BCD码及输出到DIG5, DIG4的显示字符寄存数组中 ******/
void dig_bin2bcd1(uchar x)
{ /* 参数:二进制数 */
uchar z,y;
z=x/0x0a; /* BCD -- 十位 */
y=B; /* BCD -- 个位 */
tdig_offset[20]=tab_ascii_1[z][0];
tdig_offset[21]=tab_ascii_1[z][1];
tdig_offset[22]=tab_ascii_1[z][2];
tdig_offset[23]=tab_ascii_1[z][3];
tdig_offset[24]=tab_ascii_1[z][4];
tdig_offset[25]=tab_ascii_1[z][5];
tdig_offset[28]=tab_ascii_1[y][0];
tdig_offset[29]=tab_ascii_1[y][1];
tdig_offset[30]=tab_ascii_1[y][2];
tdig_offset[31]=tab_ascii_1[y][3];
tdig_offset[32]=tab_ascii_1[y][4];
tdig_offset[33]=tab_ascii_1[y][5];
}
/****** 设显示为E R R O R的提示显示 ******/
void dis_seterr(void)
{
screen_num=4; /*ERROR*/
input_data_scroll();
}
/********* 开机走屏显示程序 *****************/
void start_dis(void)
{
string_num=0; /* 第一显示字符的表数组号 */
screen_num=0;
string_scr_step=125;
while (string_scr_do()!=1) /* 移动 */
{
display_do(); /* 单显示字符串 */
tdim_vfd(); /*清除11格,17段数据显示(清荧光屏) */
dim_vfd(); /*清除11格,17段数据显示(清荧光屏) */
if(string_scr_step==121) pub_delay_do(900); /* 停留时间0.06S */
else pub_delay_do(35);
}
}
void video_compare(void) /*频谱比较*/
{
uchar i,j;
for(i=0;i<50;i++)
{
if(tdig_offset[i]>16) tdig_offset[i]=0;
}
tdig_offset[25]=ad_in[0];
tdig_offset[26]=(ad_in[0]+ad_in[1])/2;
tdig_offset[27]=(tdig_offset[25]+tdig_offset[26])/2;
tdig_offset[28]=ad_in[1];
tdig_offset[29]=(ad_in[1]+ad_in[2])/2;
tdig_offset[30]=(tdig_offset[28]+tdig_offset[29])/2;
tdig_offset[31]=ad_in[2];
tdig_offset[32]=(ad_in[2]+ad_in[3])/2;
tdig_offset[33]=(tdig_offset[31]+tdig_offset[32])/2;
tdig_offset[34]=ad_in[3];
tdig_offset[35]=(ad_in[3]+ad_in[4])/2;
tdig_offset[36]=(tdig_offset[34]+tdig_offset[35])/2;
tdig_offset[37]=ad_in[4];
tdig_offset[38]=(ad_in[4]+ad_in[5])/2;
tdig_offset[39]=(tdig_offset[34]+tdig_offset[35])/2;
tdig_offset[40]=ad_in[5];
tdig_offset[41]=(ad_in[5]+ad_in[6])/2;
tdig_offset[42]=(tdig_offset[40]+tdig_offset[41])/2;
tdig_offset[43]=ad_in[6];
tdig_offset[44]=(ad_in[6]+ad_in[7])/2;;
tdig_offset[45]=(tdig_offset[43]+tdig_offset[44])/2;;
tdig_offset[46]=ad_in[7];
tdig_offset[47]=(tdig_offset[43]+tdig_offset[44])/2;
tdig_offset[48]=(tdig_offset[44]+tdig_offset[45])/2;
tdig_offset[49]=(tdig_offset[46]+tdig_offset[47])/2;
tdig_offset[0]=tdig_offset[25];
if(tdig_offset[0]>0) tdig_offset[0]--;
tdig_offset[1]=(tdig_offset[25]+tdig_offset[26])/2;
tdig_offset[2]=tdig_offset[27];
tdig_offset[3]=(tdig_offset[27]+tdig_offset[28])/2;
tdig_offset[4]=tdig_offset[29];
tdig_offset[5]=(tdig_offset[29]+tdig_offset[30])/2;
tdig_offset[6]=tdig_offset[31];
tdig_offset[7]=(tdig_offset[31]+tdig_offset[32])/2;
tdig_offset[8]=tdig_offset[33];
tdig_offset[9]=(tdig_offset[33]+tdig_offset[34])/2;
tdig_offset[10]=tdig_offset[35];
tdig_offset[11]=(tdig_offset[35]+tdig_offset[36])/2;
tdig_offset[12]=tdig_offset[37];
tdig_offset[13]=(tdig_offset[37]+tdig_offset[38])/2;
tdig_offset[14]=tdig_offset[39];
tdig_offset[15]=(tdig_offset[39]+tdig_offset[40])/2;
tdig_offset[16]=tdig_offset[41];
tdig_offset[17]=(tdig_offset[41]+tdig_offset[42])/2;
tdig_offset[18]=tdig_offset[43];
tdig_offset[19]=(tdig_offset[43]+tdig_offset[44])/2;
tdig_offset[20]=tdig_offset[45];
tdig_offset[21]=(tdig_offset[45]+tdig_offset[46])/2;
tdig_offset[22]=tdig_offset[47];
tdig_offset[23]=(tdig_offset[47]+tdig_offset[48])/2;
tdig_offset[24]=tdig_offset[49];
if(tdig_offset[24]>0) tdig_offset[24]--;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -