📄 ms_func.lst
字号:
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 + -