📄 remote1.c
字号:
while( !display( nextpage,0 ) )
{
readaddr = page_flag * param_size + disp_base_addr + 10*(12+curr_param_file_info.code_length) + 1;
nextpage = FLASH_read_B( readaddr );
clear( );
if( nextpage==0 )
{
display( nextpage,1 );
if(!page_kind)
{
open_cursor();
set_cursor(0,3);
old_key_value = 0;
in_enable = 1;
}
break;
}
}
roll_station = 0xff;
}
else if( page_kind == 0 )
{
clear( );
old_page_flag = page_flag;
if( curr_param_file_info.set_disp_num )
{
display( curr_param_file_info.work_disp_num,0 );
roll_station = 0xff;
}
}
break;
case 0x81://下翻屏
old_page_flag = page_flag;
readaddr = page_flag * param_size + disp_base_addr + 10*(12+curr_param_file_info.code_length) + 1;
nextpage = FLASH_read_B( readaddr );
clear( );
while( !display( nextpage,0 ) )
{
readaddr = page_flag * param_size + disp_base_addr + 10*(12+curr_param_file_info.code_length) + 1;
nextpage = FLASH_read_B( readaddr );
clear( );
}
roll_station = 0xff;
break;
case 0x82://上翻屏
old_page_flag = page_flag;
readaddr = page_flag * param_size + disp_base_addr + 10*(12+curr_param_file_info.code_length) + 2;
nextpage = FLASH_read_B( readaddr );
clear( );
while( !display( nextpage,0 ) )
{
readaddr = page_flag * param_size + disp_base_addr + 10*(12+curr_param_file_info.code_length) + 2;
nextpage = FLASH_read_B( readaddr );
clear( );
}
roll_station = 0xff;
break;
case 0xe1://选择滚动下
if(roll_station==0xff)//when the first for rolling
{
roll_station = 0;
for( ; ;roll_station++ )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
}
if(page_kind)
display_hanzi_str(param[roll_station], roll_station, 0, 1);
else
disp_string(param[roll_station], roll_station, 3, 1);
}
else
{
//when not the first roll key
if(page_kind)
{
display_hanzi_str(param[roll_station], roll_station, 0, 0);
//search for the valid item
if( roll_station==9 )
roll_station = 0;
else
roll_station++;
for( ;roll_station<=9;roll_station++ )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
}
if(roll_station==10)
{
roll_station = 0;
for( ; ;roll_station++ )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
}
}
display_hanzi_str(param[roll_station], roll_station, 0, 1);
}
else
{
disp_string(param[roll_station], roll_station, 3, 0);
//search for the valid item
if( roll_station==9 )
roll_station = 0;
else
roll_station++;
for( ;roll_station<=9;roll_station++ )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
}
if(roll_station==10)
{
roll_station = 0;
for( ; ;roll_station++ )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
}
}
disp_string(param[roll_station], roll_station, 3, 1);
}
}
break;
case 0xe2://选择滚动上
if(roll_station==0xff)
{
roll_station = 9;
for( ; ;roll_station-- )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
}
if(page_kind)
display_hanzi_str(param[roll_station], roll_station, 0, 1);
else
disp_string(param[roll_station], roll_station, 3, 1);
}
else
{
if(page_kind)
{
display_hanzi_str(param[roll_station], roll_station, 0, 0);
if( roll_station==0 )
roll_station = 9;
else
roll_station--;
for( ; ;roll_station-- )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
if(roll_station==0)
roll_station = 10;
}
display_hanzi_str(param[roll_station], roll_station, 0, 1);
}
else
{
disp_string(param[roll_station], roll_station, 3, 0);
if( roll_station==0 )
roll_station = 9;
else
roll_station--;
for( ; ;roll_station-- )
{
for(j=0;j<10;j++)
{
if( (param[roll_station][j]!=0)&&(param[roll_station][j]!=32) )
break;
}
if(j<10)
break;
if(roll_station==0)
roll_station = 10;
}
disp_string(param[roll_station], roll_station, 3, 1);
}
}
break;
case 0xc8://确认键
if( roll_station<10 )
{
if(page_kind)
display_hanzi_str(param[roll_station], roll_station, 0, 0);
else
disp_string(param[roll_station], roll_station, 3, 0);
NumKey_handle( roll_station );
roll_station = 0xff;
}
break;
case 0xe5://输入模式
if(!page_kind)
{
TR0 = 0;
old_key_value = 0;
m = curr_chan/10;
old_page_flag = page_flag;
clear( );
display( m,1 );
open_cursor( );
m = curr_chan%10;
set_cursor( m,3 );
in_enable = 1;
}
break;
case 0xe9://设备选择键
old_page_flag = page_flag;
clear( );
roll_station = 0xff;
dev_select( );
break;
}
}
}
/**************************************************************************\
*
* 函数名 :void NumKey_handle( uint baddr )
*
* 功 能 :key handle
*
* 参 数 :baddr
*
* 返回值 : none
*
\**************************************************************************/
void NumKey_handle( uchar Num )
{
uchar i;
uchar IRcode;
uchar Nmode;
uchar m;
uint readaddr;
uint funcodeaddr;
uint numcodeaddr;
funcodeaddr = curr_device.param_addr + 7;//function key code address
numcodeaddr = curr_device.param_addr + 7 + 10*curr_param_file_info.code_length;//number key code address
readaddr = page_flag * param_size + disp_base_addr;
readaddr = (12+curr_param_file_info.code_length)*Num + 10 + readaddr;
fun_ctrlL = FLASH_read_B( readaddr++ ); //read function contrl infomation
fun_ctrlH = FLASH_read_B( readaddr++ );
if( !page_kind )//when TV select channel display
{
IRcode = FLASH_read_B( readaddr );
curr_chan = IRcode;
if( IRcode/10 ) //when the channel over than 10
{
if( incept_state == 1 )
{
readaddr = funcodeaddr + 6 * curr_param_file_info.code_length;
code_handle( readaddr, curr_param_file_info.code_type );
incept_state = 2;
for(i=0;i<100;i++)
dlms( );
}
readaddr = numcodeaddr + (IRcode/10)* curr_param_file_info.code_length;
code_handle( readaddr, curr_param_file_info.code_type );
for(i=0;i<100;i++)
dlms( );
readaddr = numcodeaddr + (IRcode%10)* curr_param_file_info.code_length;
code_handle( readaddr, curr_param_file_info.code_type );
}
else
{
if( incept_state == 2 )
{
readaddr = funcodeaddr + 6 * curr_param_file_info.code_length;
code_handle( readaddr, curr_param_file_info.code_type );
incept_state = 1;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -