📄 max7219.lst
字号:
C51 COMPILER V7.06 MAX7219 08/04/2008 00:24:33 PAGE 1
C51 COMPILER V7.06, COMPILATION OF MODULE MAX7219
OBJECT MODULE PLACED IN MAX7219.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE MAX7219.c BROWSE DEBUG OBJECTEXTEND
stmt level source
1 /**********************************************
2 * File: MAX7219.C
3 * Description: Tri-Angle
4 * Created Date: 2007-10-01
5 * Last Modified: 2007-10-01
6 * Author: Jeffrey - Schicksal@126.com
7 * Notes: None
8 **********************************************/
9 //#include "Atmel/AT89X51.h"
10 #include "SST89x5x4.H"
11 #include "INTRINS.H"
12 #include "DS1620.h"
13 #include "MAX7219.h"
14
15 /**********************************************
16 * Function: void write_7219(unsigned char a, unsigned char b)
17 * Input Variables: unsigned char a, unsigned char b
18 * Return Variables: None
19 * Usage: Write to 7219
20 **********************************************/
21 void write_7219( unsigned char addr, unsigned char dat )
22 {
23 1 bit t;
24 1
25 1 _7219_CLK = 0;
26 1 _7219_CS = SELECTED;
27 1
28 1 ACC = addr;
29 1 t = 1;
30 1
31 1 WriteLoop:
32 1 _7219_MOSI = ACC_7;
33 1 _7219_CLK = 1;
34 1 _7219_CLK = 0;
35 1
36 1 _7219_MOSI = ACC_6;
37 1 _7219_CLK = 1;
38 1 _7219_CLK = 0;
39 1
40 1 _7219_MOSI = ACC_5;
41 1 _7219_CLK = 1;
42 1 _7219_CLK = 0;
43 1
44 1 _7219_MOSI = ACC_4;
45 1 _7219_CLK = 1;
46 1 _7219_CLK = 0;
47 1
48 1 _7219_MOSI = ACC_3;
49 1 _7219_CLK = 1;
50 1 _7219_CLK = 0;
51 1
52 1 _7219_MOSI = ACC_2;
53 1 _7219_CLK = 1;
54 1 _7219_CLK = 0;
55 1
C51 COMPILER V7.06 MAX7219 08/04/2008 00:24:33 PAGE 2
56 1 _7219_MOSI = ACC_1;
57 1 _7219_CLK = 1;
58 1 _7219_CLK = 0;
59 1
60 1 _7219_MOSI = ACC_0;
61 1 _7219_CLK = 1;
62 1
63 1
64 1 if (t == 1)
65 1 {
66 2 t = 0;
67 2 ACC = dat;
68 2 _7219_CLK = 0;
69 2 goto WriteLoop;
70 2 }
71 1
72 1 //EndWriteLoop:
73 1
74 1 _7219_CS = UNSELECTED;
75 1 _7219_CLK = 0;
76 1 _7219_CLK = 1;
77 1 _7219_CLK = 0;
78 1
79 1 }
80
81 /**********************************************
82 * Function: Init7219()
83 * Input Variables:void
84 * Return Variables: None
85 * Usage: Init 7219
86 **********************************************/
87 void Init7219()
88 {
89 1 write_7219(0x0c,0x00); // 关闭MAX7219,对7219进行配置
90 1 _nop_(); // nop
91 1 _nop_(); // nop
92 1 _nop_(); // nop
93 1 write_7219(0x0a,0x05); // 调整亮度
94 1 write_7219(0x09,0xff); // 模式设置,全部解码操作
95 1 write_7219(1,0x0f); // blank
96 1 write_7219(2,0x0f); // blank
97 1 write_7219(3,0x0f); // blank
98 1 write_7219(4,0x0f); // blank
99 1 write_7219(5,0x0f); // blank
100 1 write_7219(6,0x0f); // 六位数码全部blank
101 1 write_7219(0x0c,0x01); // 启动7219
102 1 write_7219(0x0b,0x05); // 扫描位数 6位
103 1 }
104
105 /**********************************************
106 * Function:void Display_Temp()
107 * Input Variables:void
108 * Return Variables: None
109 * Usage: Display_Temp
110 **********************************************/
111 void Display_Temp()
112 {
113 1 unsigned char LS;
114 1 LS=DS1620read();
115 1 LS/=2;
116 1 if (LS==0)
117 1 {
C51 COMPILER V7.06 MAX7219 08/04/2008 00:24:33 PAGE 3
118 2 write_7219(0x05,0x0a);
119 2 write_7219(0x06,0x0a);
120 2 }
121 1 else
122 1 {
123 2 write_7219(0x05,LS/10);
124 2 write_7219(0x06,LS%10);
125 2 }
126 1 }
127
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 194 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -