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

📄 main.c

📁 w77e58 双串口 液晶显示源程序 c语言编写
💻 C
📖 第 1 页 / 共 2 页
字号:
#include "define.c"
#include "fuc.c"
#include "sci.c"

void main(void)
{

    LED=0;
    init_cpu();
    init_data();
    show_log();
    init_lcd();
    EA=1;       //开总中断
    TR0=1;     //启动定时器0
    sys_flag=1;
   while(1)
    {
   if(time_flag)
     {
        time_flag=0;
        time_set();
       }
    switch(sys_flag)
    {
     case 0x00:if(led_flag)
               {if(sys_temp!=0x00)
                   {sys_temp=0x00; write_command(0x01,1);ms_delay(5);}     //清显示屏
                 if(sys_time)
                   {sys_time=0; write_command(0x36,0); us_delay(100);
                   write_command(0x30,0);us_delay(100);write_command(0x30,0);  }
                led_flag=0;GREEN=!GREEN;YELLOW=0;RED=0;} break;
     case 0x01:
       {
        if(led_flag)
           {GREEN=1;YELLOW=0;RED=0;}
       if(sys_temp!=0x01)
           {sys_temp=0x01;write_command(0x01,1);ms_delay(5);dis_flag=1;dis_temp=1;}
        switch(key_flag)
        {
         case 0x01:{key_flag=0;      //esc  key
               light_led();
               switch(dis_temp)
                {
                case 0x01:{dis_temp=2;dis_flag=0x02;key_data=1;} break;
                case 0x02:{dis_temp=1;dis_flag=0x01;ping=0;t_temp=0;} break;
                case 0x03:{dis_temp=2;dis_flag=0x02;key_data=1;} break;
                case 0x04:{dis_temp=2;dis_flag=0x02;key_data=2;} break;
                case 0x05:{dis_temp=2;dis_flag=0x02;key_data=3;} break;
                case 0x06:{dis_temp=5;
                           dis_flag=0x07;
                           switch(key_data)
                           {
                           case 1:{ov_buf[1]=ov_temp[1];ov_buf[2]=ov_temp[2];ov_buf[3]=ov_temp[3];ovv=ovv_val;}break;
                           case 2:{lv_buf[1]=lv_temp[1];lv_buf[2]=lv_temp[2];lv_buf[3]=lv_temp[3];lv=lv_val;}break;
                           case 3:{vot_buf[1]=vot_temp[1];vot_buf[2]=vot_temp[2];vot_buf[3]=vot_temp[3];vot=vot_val;}break;
                           default:break;
                           }}break;
                default:break;}
                } break;
         case 0x02:{key_flag=0;      //up  key
               light_led();
               switch(dis_temp)
                {
                case 0x01:{dis_temp=2;dis_flag=0x02;key_data=1;} break;
                case 0x02:{dis_flag=0x02;
                           if(key_data--==1)
                              key_data=4;} break;
                case 0x03:{} break;
                case 0x04:{} break;
                case 0x05:{
                           dis_flag=0x07;
                           if(--key_data==0)
                             key_data=4;} break;
                case 0x06:{dis_flag=0x07;
                           switch(key_data)
                           {
                           case 0x01:get_ov(0);break;
                           case 0x02:get_lv(0); break;
                           case 0x03:get_vot(0);break;
                           default:break;}
                           }break;
                default:break;}
                } break;
         case 0x03:{key_flag=0;     //down key
               light_led();
               switch(dis_temp)
                {
                case 0x01:{dis_temp=2;dis_flag=0x02;key_data=1;} break;
                case 0x02:{dis_flag=0x02;
                           if(key_data++==4)
                              key_data=1;} break;
                case 0x03:{} break;
                case 0x04:{} break;
                case 0x05:{
                           dis_flag=0x07;
                           if(++key_data==5)
                             key_data=1;} break;
                case 0x06:{dis_flag=0x07;
                           switch(key_data)
                           {case 0x01:get_ov(1);break;
                           case 0x02:get_lv(1); break;
                           case 0x03:get_vot(1);break;
                           default:break;}
                           }break;
                default:break;}
                } break;
          case 0x04:{key_flag=0;      //enter  key
              light_led();
              switch(dis_temp)
               {
               case 0x01:{dis_temp=2;dis_flag=0x02;key_data=1;} break;
               case 0x02:switch(key_data)
                          {
                          case 1:{dis_temp=3;dis_flag=4;} break;
                          case 2:{dis_temp=4;dis_flag=6;} break;
                          case 3:{dis_temp=5;dis_flag=7;key_data=1;} break;
                          case 4:{dis_temp=1;dis_flag=1;ping=0;t_temp=0;} break;
                          default: break;
                          } break;

              case 0x03:{dis_temp=2;dis_flag=2;key_data=1;} break;
              case 0x04:{dis_temp=2;dis_flag=2;key_data=2;} break;
              case 0x05:switch(key_data)
                          {
                          case 1:{dis_temp=6;dis_flag=7;} break;
                          case 2:{dis_temp=6;dis_flag=7;} break;
                          case 3:{dis_temp=6;dis_flag=7;} break;
                          case 4:{dis_temp=2;dis_flag=2;key_data=3;} break;
                          default:break;
                          }  break;
              case 0x06: {dis_temp=5;
                          dis_flag=0x07;
                          switch(key_data)
                          {
                          case 1:{get_setov();
                                  tx1_data1(0x10,tx_mudi); key_err1=0;sci_set1=0;
                                  key_set=1;t_temp3=0;otime_flag=0;
                                  }break;
                          case 2:{get_setlv();
                                  tx1_data1(0x12,tx_mudi); key_err2=0;sci_set2=0;
                                  key_set=2;t_temp3=0;otime_flag=0;
                                  }break;
                          case 3:{get_setvot();
                                  tx1_data1(0x14,tx_mudi); key_err3=0;sci_set3=0;
                                  key_set=3;t_temp3=0;otime_flag=0;
                                  }break;
                          default:break;}
                          }break;
             default:break;}
             }break;
        default:key_flag=0;break;
         }
       switch(dis_flag)
        {
         case 0x01:                        //循环显示
             {
              dis_flag=0;
              dis_oper();
             }  break;
         case 0x02:                       //设置界面
            {
             dis_flag=0;
             dis_set(0x02);
             }   break;
         case 0x03:                     //设置界面撒闪烁
            {
             dis_flag=0;
             switch(set_flag)
                 {
                     case 0x01: {
                                set_flag=5;
                                dis_data(space,1,12,0x81);
                                } break;
                     case 0x02: {
                                set_flag=6;
                                dis_data(space,1,12,0x91);
                                 } break;
                     case 0x03: {
                                set_flag=7;
                                dis_data(space,1,12,0x89);
                                }break;
                     case 0x04: {
                                set_flag=8;
                                dis_data(space,1,12,0x99);
                                }break;
                     case 0x05: {
                                 set_flag=1;
                                 dis_data(set_buf[0],1,12,0x81);
                                 } break;
                     case 0x06: {
                                 set_flag=2;
                                 dis_data(set_buf[1],1,12,0x91);
                                } break;
                     case 0x07:{
                               set_flag=3;
                               dis_data(set_buf[2],1,12,0x89);
                               }break;
                    case 0x08:{
                               set_flag=4;
                               dis_data(set_buf[3],1,12,0x99);
                              }break;
                    default:break;
                 }
             } break;
        case 0x04:{
             dis_flag=0;
             dis_set(0x04);
             } break;
        case 0x05: {
              dis_flag=0;
              if(set_flag2==1)
              {
               set_flag2=0;
               dis_data(back,1,12,0x99);
              }
             else
              {
              set_flag2=1;
              dis_data(space,1,12,0x99);
              }
             }  break;
         case 0x06:{
              dis_flag=0;
              dis_set(0x06);
              }  break;
         case 0x07:{
              dis_flag=0;
              dis_set(0x07);
              }  break;
         case 0x08:                     //设置界面闪烁
            {
             dis_flag=0;
             switch(set_flag)
                 {
                     case 0x01: {
                                set_flag=5;
                                dis_data(space,1,6,0x81);
                                } break;
                     case 0x02: {
                                set_flag=6;
                                dis_data(space,1,6,0x91);
                                 } break;
                     case 0x03: {
                                set_flag=7;
                                dis_data(space,1,8,0x89);
                                }break;
                     case 0x04: {
                                set_flag=8;
                                dis_data(space,1,12,0x99);
                                }break;
                     case 0x05: {
                                 set_flag=1;
                                 dis_data(set_vari[0],1,8,0x81);
                                 } break;
                     case 0x06: {
                                 set_flag=2;
                                 dis_data(set_vari[1],1,8,0x91);

⌨️ 快捷键说明

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