📄 max7219.lst
字号:
C51 COMPILER V7.09 MAX7219 11/03/2005 12:31:52 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE MAX7219
OBJECT MODULE PLACED IN max7219.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE max7219.c BROWSE DEBUG OBJECTEXTEND
line level source
1
2 #include "zhaobin.h"
3
4 void write_max7219 (unsigned int temp_0)
5 {
6 1 unsigned int temp_int;
7 1 unsigned int temp;
8 1 unsigned char temp_1;
9 1 temp=temp_0;
10 1 load=1; clk_max=0; _nop_ (); _nop_ (); _nop_ ();
11 1 load=0; _nop_ ();
12 1 for (temp_1=0;temp_1<16;temp_1++)
13 1 {
14 2
15 2 temp_int=temp&0x8000;
16 2 if (temp_int==0x8000) din=1;
17 2 else din=0;
18 2 _nop_ ();
19 2 clk_max=1;
20 2 _nop_ (); _nop_ ();
21 2 clk_max=0;
22 2 temp=temp<<1;
23 2 }
24 1 load=1; clk_max=0;
25 1 _nop_ (); _nop_ ();
26 1 // clk_max=1;
27 1 }
28
29 void init_max7219 (void)
30 {
31 1 // unsigned int max_int_data;
32 1 // unsigned char max_data;
33 1 // write_max7219(0x0f00); //Display
34 1 write_max7219(0x0c01); //Shutdown
35 1
36 1 write_max7219(0x0b07); //27/32
37 1 write_max7219(0x0a0f); //Code B decode for digits 7-0
38 1 write_max7219(0x09ff); //Display digits
39 1
40 1
41 1 _nop_ ();
42 1
43 1
44 1 // write_max7219(0x0f00); //Display
45 1 }
46 void display_sec (void)
47 {
48 1 unsigned char ttmp,tnmp;
49 1 ttmp=read_sec ();
50 1 tnmp=ttmp&0x0f;
51 1 write_max7219 (256*8|tnmp);
52 1 tnmp=ttmp&0x70;
53 1 tnmp=tnmp>>4;
54 1 tnmp=0x0f&tnmp;
55 1 write_max7219 (256*7|tnmp);
C51 COMPILER V7.09 MAX7219 11/03/2005 12:31:52 PAGE 2
56 1 }
57
58 void display_min (void)
59 {
60 1 unsigned char ttmp,tnmp;
61 1 ttmp=read_min ();
62 1 tnmp=ttmp&0x0f;
63 1 write_max7219 (256*5|tnmp);
64 1 tnmp=ttmp&0x70;
65 1 tnmp=tnmp>>4;
66 1 tnmp=0x0f&tnmp;
67 1 write_max7219 (256*4|tnmp);
68 1 }
69
70 void display_hour (void)
71 {
72 1 unsigned char ttmp,tnmp;
73 1 ttmp=read_hour ();
74 1 tnmp=ttmp&0x0f;
75 1 write_max7219 (256*2|tnmp);
76 1 tnmp=ttmp&0x70;
77 1 tnmp=tnmp>>4;
78 1 tnmp=0x0f&tnmp;
79 1 write_max7219 (256*1|tnmp);
80 1 }
81
82 void display_date (void)
83 {
84 1 unsigned char ttmp,tnmp;
85 1 ttmp=read_date ();
86 1 tnmp=ttmp&0x0f;
87 1 write_max7219 (256*8|tnmp);
88 1 tnmp=ttmp&0x70;
89 1 tnmp=tnmp>>4;
90 1 tnmp=0x0f&tnmp;
91 1 write_max7219 (256*7|tnmp);
92 1 }
93
94 void display_month (void)
95 {
96 1 unsigned char ttmp,tnmp;
97 1 ttmp=read_month ();
98 1 tnmp=ttmp&0x0f;
99 1 write_max7219 (256*5|tnmp);
100 1 tnmp=ttmp&0x70;
101 1 tnmp=tnmp>>4;
102 1 tnmp=0x0f&tnmp;
103 1 write_max7219 (256*4|tnmp);
104 1 }
105
106 void display_year (void)
107 {
108 1 unsigned char ttmp,tnmp;
109 1 ttmp=read_year ();
110 1 tnmp=ttmp&0x0f;
111 1 write_max7219 (256*2|tnmp);
112 1 tnmp=ttmp&0x70;
113 1 tnmp=tnmp>>4;
114 1 tnmp=0x0f&tnmp;
115 1 write_max7219 (256*1|tnmp);
116 1 }
117
C51 COMPILER V7.09 MAX7219 11/03/2005 12:31:52 PAGE 3
118 void display_day (void)
119 {
120 1 unsigned char ttmp,tnmp;
121 1 ttmp=read_day ();
122 1 tnmp=ttmp&0x0f;
123 1 write_max7219 (0x080a);
124 1 write_max7219 (0x070a);
125 1 write_max7219 (0x060a);
126 1 write_max7219 (0x050a);
127 1 write_max7219 (256*4|ttmp);
128 1 write_max7219 (0x030a);
129 1 write_max7219 (0x020a);
130 1 write_max7219 (0x010a);
131 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 325 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 1
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 + -