📄 adjust.lst
字号:
C51 COMPILER V8.18 ADJUST 09/29/2009 23:58:04 PAGE 1
C51 COMPILER V8.18, COMPILATION OF MODULE ADJUST
OBJECT MODULE PLACED IN ..\..\1out\Adjust.obj
COMPILER INVOKED BY: d:\Keil\C51\BIN\C51.EXE ..\..\pc\Adjust.c BROWSE INCDIR(..\..\inc) DEBUG OBJECTEXTEND PRINT(..\..\1
-out\Adjust.lst) OBJECT(..\..\1out\Adjust.obj)
line level source
1 #define _ADJUST_C_
2
3 #include <math.h>
4 #include "types.h"
5 #include "board.h"
6 #include "global.h"
7 #include "ms_reg.h"
8 #include "ms_rwreg.h"
9 #include "DEBUG.h"
10 #include "msosd.h"
11 #include "adjust.h"
12 #if VGA_ENABLE
13 void msAdjustHPosition(WORD position)
14 {
15 1 msWriteWord(BK0_08_SPRHST_H, position);
16 1 }
17 void msAdjustVPosition(WORD position)
18 {
19 1 msWriteWord(BK0_06_SPRVST_H, position);
20 1 }
21
22 //=======================================================
23 ////////////////////////////////////////////////////////////////////////
24 // ADC offset control.
25 //
26 // Arguments: ucColor - color selection
27 // (ADC_OFFSET_RED/ADC_OFFSET_GREEN/ADC_OFFSET_BLUE)
28 // ucValue - input value
29 ////////////////////////////////////////////////////////////////////////
30 void msSetAdcOffset(BYTE ucColor, BYTE ucValue)
31 {
32 1 msWriteByte(ucColor, ~ucValue);
33 1 }
34
35 void msAdjustAdcGain(BYTE ucRedValue, BYTE ucGreenValue, BYTE ucBlueValue)
36 {
37 1 BYTE ucBank;
38 1 ucBank = msReadByte( BK0_00_REGBK);
39 1 msWriteByte(BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU); // select register bank ADC/DVI
40 1 msSetAdcOffset(BK1_04_RGAIN_ADC, ucRedValue); // red gain
41 1 msSetAdcOffset(BK1_05_GGAIN_ADC, ucGreenValue); // green gain
42 1 msSetAdcOffset(BK1_06_BGAIN_ADC, ucBlueValue); // blue gain
43 1 msWriteByte(BK0_00_REGBK, ucBank); // select register bank scaler
44 1 }
45 //////////////////////////////////////////////////////////////////////////////
46 // <Name>: msAdjustAdcOffset
47 //
48 // <Description>: Adjust ADC offser.(Switch bank)
49 //
50 // <Parameter>: - <Flow> - <Description>
51 // ---------------------------------------------------------------------------
52 // ucRedValue - In - Set red value.
53 // ucGreenValue - In - Set green value.
54 // ucBlueValue - In - Set blue value.
C51 COMPILER V8.18 ADJUST 09/29/2009 23:58:04 PAGE 2
55 //////////////////////////////////////////////////////////////////////////////
56 void msAdjustAdcOffset(BYTE ucRedValue, BYTE ucGreenValue, BYTE ucBlueValue)
57 {
58 1 BYTE ucBank;
59 1 ucBank = msReadByte( BK0_00_REGBK);
60 1
61 1 msWriteByte(BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU); // select register bank ADC/DVI
62 1 msSetAdcOffset(BK1_07_ROFFS_ADC, ucRedValue); // red offset
63 1 msSetAdcOffset(BK1_08_GOFFS_ADC, ucGreenValue); // green offset
64 1 msSetAdcOffset(BK1_09_BOFFS_ADC, ucBlueValue); // blue offset
65 1
66 1 msWriteByte(BK0_00_REGBK, ucBank); // select register bank scaler
67 1 }
68 //////////////////////////////////////////////////////////////////////////////
69 // <Name>: msAdjustAdcClock
70 //
71 // <Description>: Adjust ADC clock.(Switch bank)
72 //
73 // <Parameter>: - <Flow> - <Description>
74 // ---------------------------------------------------------------------------
75 // wValue - In - Set value.
76 //////////////////////////////////////////////////////////////////////////////
77 void msAdjustAdcClock(WORD wValue)
78 {
79 1 BYTE ucBank; // bank buffer
80 1 ucBank = msReadByte(BK0_00_REGBK); // store bank
81 1
82 1 msWriteByte(BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU); // select register bank ADC/DVI
83 1 wValue -= 3; // actual - 3
84 1 // PLL divider
85 1 msWriteByte(BK1_02_PLLDIVM, wValue >> 4); // b11-4
86 1 msWriteByte(BK1_03_PLLDIVL, (BYTE)wValue << 4); // b3-0
87 1
88 1 msWriteByte(BK0_00_REGBK, ucBank); // recovery bank
89 1 }
90 //////////////////////////////////////////////////////////////////////////////
91 // <Name>: msAdjustAdcPhase
92 //
93 // <Description>: Adjust ADC phase.(Switch bank)
94 //
95 // <Parameter>: - <Flow> - <Description>
96 // ---------------------------------------------------------------------------
97 // ucValue - In - Set value.
98 //////////////////////////////////////////////////////////////////////////////
99 void msAdjustAdcPhase(BYTE ucValue)
100 {
101 1 BYTE ucBank; // bank buffer
102 1 ucBank = msReadByte(BK0_00_REGBK); // store bank
103 1
104 1 msWriteByte(BK0_00_REGBK, REG_BANK1_ADC_ACE_MCU); // select register bank ADC/DVI
105 1 msWriteByte(BK1_10_CLKCTRL1, (ucValue+8)%0x40); // b5-0: clock phase adjust(PHASECC + 8)
106 1 msWriteByte(BK1_11_CLKCTRL2, ucValue); // b5-0: PHASECC(clock phase adjust)
107 1
108 1 msWriteByte(BK0_00_REGBK, ucBank); // recovery bank
109 1 }
110 #endif
111
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 228 ----
CONSTANT SIZE = ---- ----
C51 COMPILER V8.18 ADJUST 09/29/2009 23:58:04 PAGE 3
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 13
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -