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

📄 ms_func.lst

📁 MST720-DEMO程序
💻 LST
📖 第 1 页 / 共 5 页
字号:
C51 COMPILER V7.50   MS_FUNC                                                               03/18/2008 22:29:09 PAGE 13  

 733                  
 734          #if USE_ROTATE_OSD
              void mstSetDisplayRotate(BYTE ucStatus)
              {
                      BYTE ucRotateStatus;
                      
                      ucRotateStatus = SET_PTC_MODE2;
                      if(ucStatus != 0)
              #if (PANEL_TYPE_SEL == PNL_LG07_AT)
                              ucRotateStatus ^= 0x0B;
              #else
                              ucRotateStatus ^= 0x0F;
              #endif  
                      mstWriteByte(GEN_00_REGBK, REGBANKADC);
                      mstWriteByte(BK1_D1_PTC_MODE2, ucRotateStatus);
                      mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
              }
              #endif  // USE_ROTATE_OSD
 751          
 752          void mstSetAdcRedGain(BYTE GainValue)
 753          {
 754   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 755   1              mstWriteByte(BK1_04_RGAIN_ADC, GainValue);
 756   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 757   1      }
 758          
 759          void mstSetAdcGreenGain(BYTE GainValue)
 760          {
 761   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 762   1              mstWriteByte(BK1_05_GGAIN_ADC, GainValue);
 763   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 764   1      }
 765          
 766          void mstSetAdcBlueGain(BYTE GainValue)
 767          {
 768   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 769   1              mstWriteByte(BK1_06_BGAIN_ADC, GainValue);
 770   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 771   1      }
 772          
 773          void mstSetAdcRedOffset(BYTE OffsetValue)
 774          {
 775   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 776   1              mstWriteByte(BK1_07_ROFFS_ADC, OffsetValue);
 777   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 778   1      }
 779          
 780          void mstSetAdcGreenOffset(BYTE OffsetValue)
 781          {
 782   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 783   1              mstWriteByte(BK1_08_GOFFS_ADC, OffsetValue);
 784   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 785   1      }
 786          
 787          void mstSetAdcBlueOffset(BYTE OffsetValue)
 788          {
 789   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 790   1              mstWriteByte(BK1_09_BOFFS_ADC, OffsetValue);
 791   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 792   1      }
 793          
 794          void mstSetVcomDC( BYTE DCValue)
C51 COMPILER V7.50   MS_FUNC                                                               03/18/2008 22:29:09 PAGE 14  

 795          {
 796   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 797   1              mstWriteByte(BK1_43_BVOM_DC, DCValue);
 798   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 799   1      }
 800          
 801          void mstSetVcomAC( BYTE ACValue)
 802          {
 803   1              mstWriteByte(GEN_00_REGBK, REGBANKADC);
 804   1              mstWriteByte(BK1_44_BVOM_OUT, ACValue);
 805   1              mstWriteByte(GEN_00_REGBK, REGBANKSCALER);
 806   1      }
 807          
 808          void mstSetSSCStep(BYTE StepValue)
 809          {
 810   1              mstWriteByte(BK0_28_OPL_STEP0, StepValue);
 811   1      }
 812          
 813          void mstSetSSCSpan(BYTE SpanValue)
 814          {
 815   1              mstWriteByte(BK0_2A_OPL_SPAN0, SpanValue);
 816   1      }
 817          
 818          void mstSetVGAGainOffset(void)
 819          {
 820   1              mstSetAdcRedGain(Display.ucVgaRedGain);
 821   1              mstSetAdcGreenGain(Display.ucVgaGreenGain);
 822   1              mstSetAdcBlueGain(Display.ucVgaBlueGain);
 823   1              mstSetAdcRedOffset(Display.ucVgaRedOffset);
 824   1              mstSetAdcGreenOffset(Display.ucVgaGreenOffset);
 825   1              mstSetAdcBlueOffset(Display.ucVgaBlueOffset);
 826   1      
 827   1      }
 828          
 829          void mstSetYPbPrGainOffset(void)
 830          {
 831   1              mstSetAdcRedGain(Display.ucYPbPrPrGain);
 832   1              mstSetAdcGreenGain(Display.ucYPbPrYGain);
 833   1              mstSetAdcBlueGain(Display.ucYPbPrPbGain);
 834   1              mstSetAdcRedOffset(Display.ucYPbPrPrOffset);
 835   1              mstSetAdcGreenOffset(Display.ucYPbPrYOffset);
 836   1              mstSetAdcBlueOffset(Display.ucYPbPrPbOffset);
 837   1      }
 838          
 839          void mstLoadUserSetting(void)
 840          {
 841   1              if (tOSDSourcSELSequence[Display.ucSourceSEL] == VGA)
 842   1              {
 843   2                      if ((g_ucSystemFlag & FIRST_AC_ON_FLAG) != FIRST_AC_ON_FLAG)    //20050908 kevin
 844   2                              mstSetContrast(Display.ucPcContrast);
 845   2                      
 846   2                      mstSetVGAGainOffset();
 847   2              }
 848   1              else
 849   1              {
 850   2                      if ((g_ucSystemFlag & FIRST_AC_ON_FLAG) != FIRST_AC_ON_FLAG)    //20050908 kevin
 851   2                      {
 852   3                              mstSetContrast(Display.ucVedioContrast);
 853   3                              mstSetSaturation(Display.ucSaturation);
 854   3                      }
 855   2      
 856   2                      mstSetHue(Display.ucHue);
C51 COMPILER V7.50   MS_FUNC                                                               03/18/2008 22:29:09 PAGE 15  

 857   2      
 858   2                      if (tOSDSourcSELSequence[Display.ucSourceSEL] == YPBPR)
 859   2                              mstSetYPbPrGainOffset();
 860   2              }
 861   1      
 862   1              msSetCCFLBrightness();  
 863   1              mstSetBrightness(Display.ucBrightness);
 864   1              mstSetGamma(Display.ucGamma);
 865   1              mstSetScalingMode(Display.ucScalingMode);
 866   1                      
 867   1      #if USE_ALLMACEOSD
                      mstSetDLTI(Display.ucDLTI);
                      mstSetDCTI(Display.ucDCTI);
                      mstSetBlackExtension(Display.ucBlackExtension);
                      mstSetWhiteExtension(Display.ucWhiteExtension);
                      mstSetFavorColor(Display.ucFavorColor);
                      mstSetSharpness(Display.ucSharpness);
              #else
 875   1              mstSetMACE(Display.ucMACE);
 876   1      #endif  
 877   1              osdSetTransparency(Display.ucTransparency);
 878   1              mstSetVcomDC(Display.ucVCOMdc);
 879   1              mstSetVcomAC(Display.ucVCOMac);
 880   1              mstSetSSCStep(Display.ucSSCStep);
 881   1              mstSetSSCSpan(Display.ucSSCSpan);
 882   1      
 883   1      }
 884          
 885          
 886          void mstRecallDefaultSetting(void)
 887          {
 888   1              Display.ucPcContrast = DEF_CONTRAST;
 889   1              Display.ucVedioContrast = DEF_CONTRAST;
 890   1              Display.ucBrightness = DEF_BRIGHTNESS;
 891   1              Display.ucHue = DEF_HUE;
 892   1              Display.ucSaturation = DEF_SATURATION;
 893   1              Display.ucGamma = DEF_GAMMA;
 894   1              Display.ucScalingMode= DEF_SCALING;
 895   1              
 896   1      #if USE_ALLMACEOSD
                      Display.ucDLTI = DEF_DLTI;
                      Display.ucDCTI = DEF_DCTI;
                      Display.ucBlackExtension = DEF_BLACK_EX;
                      Display.ucWhiteExtension = DEF_WHITE_EX;
                      Display.ucFavorColor = DEF_FAVOR_COLOR;
                      Display.ucSharpness = DEF_SHARPNESS;
              #else
 904   1              Display.ucMACE = DEF_MACE;
 905   1      #endif  //USE_ALLMACEOSD
 906   1      
 907   1              Display.ucLanguage = DEF_LANGUAGE;
 908   1              Display.ucOSDTimer = DEF_OSD_TIMER;
 909   1              Display.ucTransparency = DEF_TRANSPARENCY;
 910   1              mstLoadUserSetting();
 911   1              mstSaveDisplayData();
 912   1      
 913   1      }
 914          
 915          
 916          #if (RM_EEPROM_TYPE >= RM_TYPE_SST512)
 917          // Save data to Serial Flash (0xE000 ~ 0xE0XX)
 918          #define SFD_ADDRESS             0xE000
C51 COMPILER V7.50   MS_FUNC                                                               03/18/2008 22:29:09 PAGE 16  

 919          
 920          void mstSaveDisplayData(void)
 921          {
 922   1              BYTE i;
 923   1              
 924   1              Display.ucCheckSun = 0;
 925   1              
 926   1              for (i=0 ; i < (sizeof(Display)-1) ; i++)
 927   1              {
 928   2                      Display.ucCheckSun += *(&Display.ucVersion+ i);
 929   2              }
 930   1              
 931   1              // get flash Manufacture ID 
 932   1              MCUXFR_40_SSPI_WD0=0xab;
 933   1              MCUXFR_41_SSPI_WD1=0x00;
 934   1              MCUXFR_42_SSPI_WD2=0x00;
 935   1              MCUXFR_43_SSPI_WD3=0x00;
 936   1              MCUXFR_48_SSPI_TRIG=0xc4;
 937   1              
 938   1              i=MCUXFR_4C_SSPI_RD3; // PMC Manufacture ID =0x9d
 939   1              
 940   1              if (i==0x9d)
 941   1              {
 942   2                      // PMC flash
 943   2                      // 20051207 seven
 944   2                      MCUXFR_40_SSPI_WD0=0x06;  // Write Enable WREN
 945   2                      MCUXFR_48_SSPI_TRIG=0xf8;
 946   2                      // Write Status 0x00
 947   2                      MCUXFR_40_SSPI_WD0=0x01;
 948   2                      MCUXFR_41_SSPI_WD1=0x00;
 949   2                      MCUXFR_48_SSPI_TRIG=0xf9;
 950   2      
 951   2                      // Write Enable WREN + Sector Erase
 952   2                      MCUXFR_40_SSPI_WD0=0x06;  // Write Enable WREN
 953   2                      MCUXFR_48_SSPI_TRIG=0xf8;
 954   2                      MCUXFR_40_SSPI_WD0=0xd7; //  Sector Erase 0x00e000
 955   2                      MCUXFR_41_SSPI_WD1=0x00;
 956   2                      MCUXFR_42_SSPI_WD2=0xe0;
 957   2                      MCUXFR_43_SSPI_WD3=0x00;
 958   2                      MCUXFR_48_SSPI_TRIG=0xfb;
 959   2                      miscDelay1ms(100);
 960   2      
 961   2                      // WREN + Write Byte
 962   2                      for (i=0;i<sizeof(Display);i++)
 963   2                      {
 964   3                              MCUXFR_40_SSPI_WD0=0x06;  // Write Enable WREN
 965   3                              MCUXFR_48_SSPI_TRIG=0xf8;
 966   3                              MCUXFR_40_SSPI_WD0=0x02;  //FlashWriteByte  SST 
 967   3                              MCUXFR_41_SSPI_WD1=0x00;
 968   3                              MCUXFR_42_SSPI_WD2=0xe0;
 969   3                              MCUXFR_43_SSPI_WD3=i;
 970   3                              MCUXFR_44_SSPI_WD4=*(&Display.ucVersion+i);
 971   3                              MCUXFR_48_SSPI_TRIG=0xfc;
 972   3                              miscDelay1ms(5);
 973   3                      }
 974   2                      
 975   2                      MCUXFR_40_SSPI_WD0=0x06;  // Write Enable WREN
 976   2                      MCUXFR_48_SSPI_TRIG=0xf8;
 977   2                      
 978   2                      // Write Status 0x0C    // 20051207 seven
 979   2                      MCUXFR_40_SSPI_WD0=0x01;
 980   2                      MCUXFR_41_SSPI_WD1=0x0C;

⌨️ 快捷键说明

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