📄 subp.lst
字号:
C51 COMPILER V7.20 SUBP 01/30/2007 16:37:15 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE SUBP
OBJECT MODULE PLACED IN subp.OBJ
COMPILER INVOKED BY: F:\keil\C51\BIN\C51.EXE subp.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <sl811.h>
2 #include <des.h>
3 #include <reg51.h>
4 #include <varial.h>
5
6
7 //--------------------------------
8 // wait usb reset 5ms
9 //-------------------------------
10 void Delay(void)
11 {
12 1 unsigned char i,u;
13 1 for(u=40;u>0;u--)
14 1 {
15 2 i=255;
16 2 while(i--);
17 2 }
18 1 }
19 //*****************************************************************************************
20 // unsigned char Read from SL811H
21 // a = register address
22 // return = data in register
23 //*****************************************************************************************
24 unsigned char SL811Read( unsigned char a)
25 {
26 1 SL811H_ADDR = a;
27 1 return (SL811H_DATA);
28 1 }
29
30 //*****************************************************************************************
31 // unsigned char Write to SL811H
32 // a = register address
33 // d = data to be written to this register address
34 //*****************************************************************************************
35 void SL811Write( unsigned char a, unsigned char d)
36 {
37 1 SL811H_ADDR = a;
38 1 SL811H_DATA = d;
39 1
40 1 }
41
42 //*****************************************************************************************
43 // Buffer Read from SL811H
44 // addr = buffer start address
45 // s = return buffer address where data are to be save/read
46 // c = buffer data length
47 //*****************************************************************************************
48 void SL811BufRead( unsigned char addr, unsigned char *s, unsigned char c)
49 {
50 1 SL811H_ADDR = addr;
51 1 while (c--)
52 1 *s++ = SL811H_DATA;
53 1 }
54
55 //*****************************************************************************************
C51 COMPILER V7.20 SUBP 01/30/2007 16:37:15 PAGE 2
56 // Buffer Write to SL811H
57 // addr = buffer start address
58 // s = buffer address where data are to be written
59 // c = buffer data length
60 //*****************************************************************************************
61 void SL811BufWrite( unsigned char addr, unsigned char *s, unsigned char c)
62 {// unsigned char i;
63 1 SL811H_ADDR = addr;
64 1 while (c--)
65 1 SL811H_DATA = *s++;
66 1
67 1 // for(i=0;i<c;i++)
68 1 // SL811H_DATA = *(s+i);
69 1 }
70
71 //*****************************************************************************************
72 // Swap high and low unsigned char
73 //*****************************************************************************************
74 unsigned short WordSwap(unsigned short input)
75 {
76 1 return(((input&0x00FF)<<8)|((input&0xFF00)>>8));
77 1 }
78
79 //*****************************************************************************************
80 // Audio Control Key Scanning Routine
81 //*****************************************************************************************
82 void audio_key_scan(void)
83 {
84 1 //Audio_Keys = (~P1) & AUDIO_KEYS; // Mute/Vol Up/Vol Down Keys
85 1 // if(Audio_Keys != Prev_Audio_Keys) // Detect for any changes
86 1
87 1 // {
88 1 key_temp=P1;
89 1 if((key_temp&0xff)!=0xff)
90 1 { Delay();
91 2 Delay();
92 2 key_temp=P1;
93 2 if((key_temp&0xff)!=0xff)
94 2 { Delay();
95 3 Delay();
96 3 switch(~key_temp)
97 3 {case 1 : ++kc1;
98 4 if(kc1==1) key[2]=0x01;
99 4 else if(kc1==2) key[2]=0x02;
100 4 else if(kc1==3) key[2]=0x04;
101 4 else if(kc1==4) key[2]=0x08;
102 4 else kc1=0;
103 4 break;
104 4 case 2 : ++kc2;
105 4 if(kc2==1) key[2]=0x10;
106 4 else if(kc2==2) key[2]=0x20;
107 4 else if(kc2==3) key[2]=0x40;
108 4 else if(kc2==4) key[2]=0x80;
109 4 else kc2=0;
110 4 break;
111 4 case 4 : ++kc3;
112 4 if(kc3==1) key[3]=0x01;
113 4 else if(kc3==2) key[3]=0x02;
114 4 else if(kc3==3) key[3]=0x04;
115 4 else if(kc3==4) key[3]=0x08;
116 4 else kc3=0;
117 4 break;
C51 COMPILER V7.20 SUBP 01/30/2007 16:37:15 PAGE 3
118 4 case 8 : ++kc4;
119 4 if(kc4==1) key[3]=0x10;
120 4 else if(kc4==2) key[3]=0x20;
121 4 else if(kc4==3) key[3]=0x40;
122 4 else if(kc4==4) key[3]=0x80;
123 4 else if(kc4==5) key[4]=0x01;
124 4 else if(kc4==6) key[4]=0x02;
125 4 else if(kc4==7) key[4]=0x04;
126 4 else kc4=0;
127 4 break;
128 4 case 0x10 :
129 4 key[6]=0xff;key[7]=0xff;
130 4 break;
131 4 case 0x20 :
132 4 key[6]=0x00;key[7]=0x00;
133 4 break;
134 4 case 0x40 :key[8]=0xff;key[9]=0xff;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -