📄 tv.h
字号:
#define CHUP 0X1e
#define CHDOWN 0X1d
#define VOLUP 0X1b
#define VOLDOWN 0X17
#define STORE 0X0f
#define SMODE 0X15
typedef enum
{
TVSTATUS,
AVSTATUS,
DVDSTATUS
}SYS_STATUS;
SYS_STATUS TV_STATUS;
sbit REM_TV = P1^1;
unsigned char togglebit;
unsigned char code tab_tv[] = {TVPHILIP_TEXT_TIME,TVPHILIP_CCD , TVPHILIP_7 , TVPHILIP_1 , TVPHILIP_TUNE_DOWN , TVPHILIP_10P , TVPHILIP_4 , 0X0FF ,
TVPHILIP_TEXT_TV, TVPHILIP_SEARCH_UP , TVPHILIP_8 , TVPHILIP_2 , TVPHILIP_TUNE_UP , TVPHILIP_0 , TVPHILIP_5 , 0X0FF ,
TVPHILIP_TEXT_MIX,TVPHILIP_MENU, TVPHILIP_9, TVPHILIP_3, TVPHILIP_DOWN, TVPHILIP_UP, TVPHILIP_6, 0XFF,
TVPHILIP_TEXT_PAGE_DOWN,TVPHILIP_RIGHT,TVPHILIP_PP, TVPHILIP_MENU_1, TVPHILIP_TEXT_RESET, TVPHILIP_TV_AV,TVPHILIP_SLEEP,0XFF,
0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,
0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,
0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,
0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,
TVPHILIP_CH_DOWN,0x0ff,0x0ff,0x0ff,0x0ff,TVPHILIP_CH_UP,0X0FF,0x0ff,
0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,
0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,0x0ff,TVPHILIP_MUTE,
TVPHILIP_VOL_DOWN,0x0ff,0x0ff,TVPHILIP_POWER,TVPHILIP_VOL_UP,0x0ff,0x0ff,0x0ff};
/*
void delay50ms()
{unsigned int i;
// EA=0;
for(i=0;i<2000;i++)
delay100us();
// EA=1;
}
void delay200ms()
{ unsigned char i,j;
EA=0;
for(i=0;i<150;i++)
for(j=0;j<120;j++)
{}
EA=1;
}
void delay1s()
{unsigned char i;
EA=0;
for(i=0;i<5;i++)
delay50ms();
EA=1;
}
void delay2s()
{unsigned char i;
// EA=0;
for(i=0;i<10;i++)
delay50ms();
// EA=1;
}
*/
void send_tv(unsigned char datacode)// for RC-5 format add TDA3048
{
unsigned char i,j;
unsigned char systemcode=0x00;
EA=0;
for(i=0;i<2;i++) // start bit
{
REM_TV=1;
for(j=0;j<9;j++)
delay100us();
REM_TV=0;
for(j=0;j<9;j++)
delay100us();
}
if(togglebit)
{
REM_TV=1;
for(j=0;j<9;j++)
delay100us();
REM_TV=0;
for(j=0;j<9;j++)
delay100us();
togglebit=!togglebit;
}
else
{
REM_TV=0;
for(j=0;j<9;j++)
delay100us();
REM_TV=1;
for(j=0;j<9;j++)
delay100us();
togglebit=!togglebit;
}
for(i=0;i<5;i++)// system address
{
if(systemcode&0x10)
{
REM_TV=1;
for(j=0;j<9;j++)
delay100us();
REM_TV=0;
for(j=0;j<9;j++)
delay100us();
}
else
{
REM_TV=0;
for(j=0;j<9;j++)
delay100us();
REM_TV=1;
for(j=0;j<9;j++)
delay100us();
}
systemcode<<=1;
}
for(i=0;i<6;i++)// data code
{
if(datacode&0x20)
{
REM_TV=1;
for(j=0;j<9;j++)
delay100us();
REM_TV=0;
for(j=0;j<9;j++)
delay100us();
}
else
{
REM_TV=0;
for(j=0;j<9;j++)
delay100us();
REM_TV=1;
for(j=0;j<9;j++)
delay100us();
}
datacode<<=1;
}
REM_TV=1;
for(i=0;i<28;i++)
delay100us();
EA=1;
}
void init_tv(void)
{
REM_TV=1;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -