⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 menu.c

📁 倒车雷达源代码
💻 C
字号:
#include "mtv230m.h"
#include "character.h"

#define background_color 0x00
#define biue 0x01
#define green 0x02
#define cyan 0x03
#define red 0x04
#define magenta 0x05
#define yellow 0x06
#define white 0x07

extern unsigned int xdata bojina;//近距离报警区
extern unsigned int xdata bojinb;//中距离报警
extern unsigned int xdata bojinc;//远距离
extern  char xdata video;//视频切换ON-OFF
extern unsigned char xdata englishchina;//中英切换
extern unsigned char xdata bright;//亮度
extern unsigned char xdata contrast;//对比度
extern unsigned char xdata color;//彩色
extern unsigned char xdata blue;//兰屏
extern unsigned char xdata power;//电源自动光机
extern  char xdata p_n;//P/N
extern unsigned char xdata x;//x
extern unsigned char xdata y;//y

void tuxa_menu(char r);//图像菜单
void gonen_menu(char r);//功能菜单
void jintu(char r);//进度条
void tuxa_su(char r);//图象值
void gonen_su(char r);//功能值
void vol_char();
extern void osd_char_a(unsigned char row,unsigned  char column,//单字符-格式(a)
                           unsigned int char_rom_address, unsigned char color,
                           unsigned char background,//字符颜色,背景颜色,是否闪烁
                                   unsigned char blink);//写入显示字符



extern void osd_char_b(unsigned char row,unsigned char column_start,
                               unsigned char attribute,unsigned int char_p[]) ;

void tuxa_menu(char r)//图像菜单
{
unsigned char as1,as2,as3;
switch(r)
{
case 0: as1=0x56;as2=0x06;as3=0x06;break;
case 1: as1=0x06;as2=0x56;as3=0x06;break;
case 2: as1=0x06;as2=0x06;as3=0x56;break;
default:;
}
if(englishchina!=0)//中文
{
osd_char_b(2,2,0x06,char_sx1);//图象

osd_char_b(4,2,as1,char_sx2);//亮度
osd_char_b(5,2,as2,char_sx3);//对比度
osd_char_b(6,2,as3,char_sx4);//彩色

switch(r)
{
case 0: osd_char_b(9,3,0x06,char_sx5);break;//亮度
case 1: osd_char_b(9,3,0x06,char_sx6);break;//对比度
case 2: osd_char_b(9,3,0x06,char_sx7);break;//彩色
default:;
}
}
else {//英文
osd_char_b(2,2,0x06,char_sx8);//picture

osd_char_b(4,2,as1,char_sx9);//bright
osd_char_b(5,2,as2,char_sx10);//contrast
osd_char_b(6,2,as3,char_sx11);//color

switch(r)
{
case 0: osd_char_b(9,3,0x06,char_sx12);break;//bright
case 1: osd_char_b(9,3,0x06,char_sx13);break;//contrast
case 2: osd_char_b(9,3,0x06,char_sx14);break;//color
default:;
}
}
}

void jintu(char r)//进度条
{
unsigned char i;
 osd_char_a(10, 2, 437, 0x06, 0, 0);//-
            for(i=0;i<=r/12;i++)
                  osd_char_a(10,i+2,438,0x06,0,0);
            if(r%3==1)
              osd_char_a(10,r/12+2,442,0x06,0,0); 
            else  if(r%3==2)
                osd_char_a(10,r/12+2,441,0x06,0,0); 
            else  if(r%3==3)
                osd_char_a(10,r/12+2,440,0x06,0,0); 
            else ;
            for(i=r/12;i<21;i++)
                osd_char_a(10,r/12+2,439,0x06,0,0); 
            
            osd_char_a(10,24,436,0x06,0,0);//+
}

void gonen_menu(char r)//功能菜单
{
unsigned char as1,as2,as3,as4,as5,as6,as7,as8,as9,as10;
switch(r)
{
case 0: as1=0x56;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 1: as1=0x06;as2=0x56;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 2: as1=0x06;as2=0x06;as3=0x56;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 3: as1=0x06;as2=0x06;as3=0x06;as4=0x56;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 4: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x56;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 5: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x56;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 6: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x56;as8=0x06;as9=0x06;as10=0x06;break;
case 7: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x56;as9=0x06;as10=0x06;break;
case 8: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x56;as10=0x06;break;
case 9: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x56;break;
default:;
}
if(englishchina!=0)//中文
{
osd_char_b(1,2,0x06,char_sx15);//功能

osd_char_b(3,2,as1,char_sx16);
osd_char_b(4,2,as2,char_sx17);
osd_char_b(5,2,as3,char_sx18);
osd_char_b(6,2,as4,char_sx19);
osd_char_b(7,2,as5,char_sx20);
osd_char_b(8,2,as6,char_sx21);
osd_char_b(9,2,as7,char_sx22);
osd_char_b(10,2,as8,char_sx23);
osd_char_b(11,2,as9,char_sx24);
osd_char_b(12,2,as10,char_sx25);        
}
else {//英文
osd_char_b(1,2,0x06,char_sx26);//FUNCTION

osd_char_b(3,2,as1,char_sx27);
osd_char_b(4,2,as2,char_sx28);
osd_char_b(5,2,as3,char_sx29);
osd_char_b(61,2,as4,char_sx30);
osd_char_b(7,2,as5,char_sx31);
osd_char_b(8,2,as6,char_sx32);
osd_char_b(9,2,as7,char_sx33);
osd_char_b(10,2,as8,char_sx34);
osd_char_b(11,2,as9,char_sx35);
osd_char_b(12,2,as10,char_sx36); 
}
}  

void tuxa_su(char r)//图象值
{
 unsigned char us;
unsigned char as1,as2,as3;
switch(r)
{
case 0: as1=0x56;as2=0x06;as3=0x06;break;
case 1: as1=0x06;as2=0x56;as3=0x06;break;
case 2: as1=0x06;as2=0x06;as3=0x56;break;
default:;
}
      us=(bright/4)/10;
      if(us==0)
          {
          osd_char_a(4,15,0,0x06,0,0);//亮度值
          if(r==0)
          osd_char_a(9,20,0,0x06,0,0);//亮度值
          }
      else   
         {
          osd_char_a(4,15,us,as1,0,0);//亮度值10位
           if(r==0)
           osd_char_a(9,20,us,0x06,0,0);//亮度值10位
          }
      us=(bright/4)%10;    
          osd_char_a(4,16,us,as1,0,0);//亮度值个位
       if(r==0)
          osd_char_a(9,21,us,0x06,0,0);//亮度值个位

          
      
     us=(contrast/4)/10;
     if(us==0)
       {
         osd_char_a(5,15,0,0x06,0,0);
          if(r==1)
         osd_char_a(9,20,0,0x06,0,0);
       }
     else
       {
        osd_char_a(5,15,us,as2,0,0);//对比度值10位
         if(r==1)
            osd_char_a(9,20,us,0x06,0,0);//对比度值10位  
        }
     us=(contrast/4)%10;    
      osd_char_a(5,16,us,as2,0,0);//对比度值个位
       if(r==1)
        osd_char_a(9,21,us,0x06,0,0);//对比度值个位

        

    us=(color/4)/10;
  if(us==0)
     {
     osd_char_a(6,15,0,0x06,0,0);
      if(r==2)
     osd_char_a(9,20,0,0x06,0,0);
     }
  else
     {
     osd_char_a(6,15,us,as3,0,0);//彩色值
     if(r==2)
     osd_char_a(9,20,us,0x06,0,0);//彩色值
     }
  us=(color/4)%10;
     osd_char_a(6,16,us,as3,0,0);//彩色值
    if(r==2)
    osd_char_a(9,21,us,0x06,0,0);//彩色值
}

void gonen_su(char r)//功能值
{
unsigned char as1,as2,as3,as4,as5,as6,as7,as8,as9,as10;
switch(r)
{
case 0: as1=0x56;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 1: as1=0x06;as2=0x56;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 2: as1=0x06;as2=0x06;as3=0x56;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 3: as1=0x06;as2=0x06;as3=0x06;as4=0x56;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 4: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x56;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 5: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x56;as7=0x06;as8=0x06;as9=0x06;as10=0x06;break;
case 6: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x56;as8=0x06;as9=0x06;as10=0x06;break;
case 7: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x56;as9=0x06;as10=0x06;break;
case 8: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x56;as10=0x06;break;
case 9: as1=0x06;as2=0x06;as3=0x06;as4=0x06;as5=0x06;as6=0x06;as7=0x06;as8=0x06;as9=0x06;as10=0x56;break;
default:;
}
if(englishchina!=0)//中文
{
     if(blue==0)
           osd_char_a(3,18,362,as1,0,0);//兰屏OFF
     else osd_char_a(3,18,393,as1,0,0);//ON
     
      if(power==0)
           osd_char_a(4,18,362, as2, 0, 0);//电源OFF
      else  osd_char_a(4, 18,393,as2, 0, 0);//ON
      
      if(p_n==0)
        osd_char_b(5,18,as3,char_sx37);//自动
    else if(p_n==1)
         osd_char_b(5,18,as3,char_sx38);//PAL
    else  osd_char_b(5,18,as3,char_sx39);//NTSC
    
    if(video==0)
         osd_char_b(6,18,as4,char_sx49);//AV1
    else if(video==1)
         osd_char_b(6,18,as4,char_sx50);//AV2
    else if(video==2)
         osd_char_b(6,18,as4,char_sx51);//AV3
    else  osd_char_b(6,18,as4,char_sx52);//AV4
    
    if(x==0)
        osd_char_a(7, 18, 362,as5,0,0);//X-OFF
        else osd_char_a(7,18,393,as5,0,0);//ON
     if(y==0)
        osd_char_a(8,18,362,as6, 0, 0);//Y-OFF
        else osd_char_a(8,18,393,as6, 0, 0);//ON
        
    if(englishchina==0)
        osd_char_b(9,18,as7,char_sx44);//中英
       else  osd_char_b(9,18,as7,char_sx45);//中英
       
        osd_char_a(10, 18, bojina/100+1, as8, 0, 0);
        osd_char_a(10, 19, 118, as8, 0, 0);
        osd_char_a(10, 20, (bojina%100)/10+1,as8, 0, 0);
        osd_char_a(10, 21, bojina%10+1,as8, 0, 0);
        
        osd_char_a(11, 18, bojinb/100+1, as9, 0, 0);
        osd_char_a(11, 19, 118, as9, 0, 0);
        osd_char_a(11, 20, (bojinb%100)/10+1,as9, 0, 0);
        osd_char_a(11, 21, bojinb%10+1, as9, 0, 0);
        
        osd_char_a(12, 18, bojinc/100+1, as10, 0, 0);
        osd_char_a(12, 19, 118, as10, 0, 0);
        osd_char_a(12, 20, (bojinc%100)/10+1, as10, 0, 0);
        osd_char_a(12, 21, bojinc%10+1,as10, 0, 0);
}
else
{
if(blue==0)
           osd_char_b(3, 18,as1,char_sx46);//兰屏OFF
    else osd_char_b(3, 18,as1,char_sx47);//ON
    
    if(power==0)
            osd_char_b(4, 18,as2, char_sx46);//电源OFF
    else  osd_char_b(4, 18, as2, char_sx47);//ON
    
    if(p_n==0)
        osd_char_b(5,18,as3,char_sx48);//AUTO
    else if(p_n==1)
         osd_char_b(5,18,as3,char_sx38);//PAL
    else  osd_char_b(5,18,as3,char_sx39);//NTSC
    
    if(video==0)
         osd_char_b(6,18,as4,char_sx40);//AV1
    else if(video==1)
         osd_char_b(6,18,as4,char_sx41);//AV2
    else if(video==2)
         osd_char_b(6,18,as4,char_sx42);//AV3
    else  osd_char_b(6,18,as4,char_sx43);//AV4
    
    if(x==0)
        osd_char_b(7, 18,as5 ,char_sx46);//X-OFF
        else osd_char_b(7, 18,as5,char_sx47 );//ON
     if(y==0)
        osd_char_b(8, 18,as5 ,char_sx46);//Y-OFF
        else osd_char_b(8, 18,as5,char_sx47 );//ON
    
      if(englishchina==0)
        osd_char_b(9,18,as7,char_sx44);//中英
       else  osd_char_b(9,18,as7,char_sx45);//中英
        
        osd_char_a(10, 18, bojina/100+1, as8, 0, 0);
        osd_char_a(10, 19, 118, as8, 0, 0);
        osd_char_a(10, 20, (bojina%100)/10+1,as8, 0, 0);
        osd_char_a(10, 21, bojina%10+1,as8, 0, 0);
        
        osd_char_a(11, 18, bojinb/100+1, as9, 0, 0);
        osd_char_a(11, 19, 118, as8, 0, 0);
        osd_char_a(11, 20, (bojinb%100)/10+1,as9, 0, 0);
        osd_char_a(11, 21, bojinb%10+1, as9, 0, 0);
        
        osd_char_a(12, 18, bojinc/100+1, as10, 0, 0);
        osd_char_a(12, 19, 118, as10, 0, 0);
        osd_char_a(12, 20, (bojinc%100)/10+1, as10, 0, 0);
        osd_char_a(12, 21, bojinc%10+1,as10, 0, 0);
}
}

void vol_char()
{
if(englishchina!=0)
osd_char_b(9,5, 0x06, char_sx53);
else osd_char_b(9,5, 0x06, char_sx54);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -