📄 led.lst
字号:
C51 COMPILER V7.00 LED 05/16/2007 10:42:12 PAGE 1
C51 COMPILER V7.00, COMPILATION OF MODULE LED
OBJECT MODULE PLACED IN led.OBJ
COMPILER INVOKED BY: D:\Program Files\keil中文版\Keil\C51\BIN\C51.EXE led.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 #include <reg52.h>
2 #include "type.h"
3 #include "led.h"
4
5 UCHAR vBuffer[MAX_LED];
6 UCHAR code LED_Table[]={
7 //0 1 2 3 4 5 6 7 8 9
8 0X3F,0X6,0X5B,0X4F,0X66,0X6D,0X7D,0X7,0X7F,0X6F,
9 //a b c d e f null
10 0X77,0X7C,0X39,0X5E,0X79,0X71,0xff};
11
12
13 void InitLED(void)
14 {
15 1 UCHAR i;
16 1 for ( i = 0 ; i < MAX_LED ; i ++)
17 1 {
18 2 vBuffer[i] = LED_NULL;
19 2 }
20 1 }
21
22 void SetLED(UCHAR idx , UCHAR d)
23 {
24 1 if ( idx >= MAX_LED ) idx = 0;
25 1 vBuffer[idx] = d;
26 1 }
27
28 void ShowByte(UCHAR idx , UCHAR d)
29 {
30 1 if ( idx >= MAX_LED ) idx = 0;
31 1 vBuffer[idx] = d&0x0f;
32 1 idx ++;
33 1 if ( idx >= MAX_LED ) idx = 0;
34 1 vBuffer[idx] = d>>4;
35 1 }
36
37
38 void LED_Server(void)
39 {
40 1 static UCHAR idx;
41 1 UCHAR rt;
42 1 idx ++;
43 1 if ( idx >= MAX_LED )
44 1 {
45 2 idx = 0;
46 2 }
47 1
48 1 #if LED_STYLE == LED_COM_K
49 1 LED_SEG = 0xff;
50 1 LED_IDX = ~(1<<idx);
51 1 rt = vBuffer[MAX_LED - idx - 1];
52 1 if (rt == LED_NULL )
53 1 {
54 2 LED_SEG = 0XFF;
55 2 }
C51 COMPILER V7.00 LED 05/16/2007 10:42:12 PAGE 2
56 1 else
57 1 {
58 2 LED_SEG = ~(LED_Table[rt]);
59 2 }
60 1 #endif
61 1 #if LED_STYLE == LED_COM_A
LED_SEG = 0;
LED_IDX = ~(1<<idx);
rt = vBuffer[MAX_LED - idx - 1];
if (rt == LED_NULL )
{
LED_SEG = 0;
}
else
{
LED_SEG = (LED_Table[rt]);
}
#endif
74 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 122 ----
CONSTANT SIZE = 17 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 5 ----
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 + -