📄 2.lst
字号:
C51 COMPILER V7.20 2 12/13/2008 19:12:44 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE 2
OBJECT MODULE PLACED IN 2.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 2.c BROWSE DEBUG OBJECTEXTEND
line level source
1 //The Drivers for MAX7219
2 //made by OurWay
3
4 #include<reg52.h>
5 #include<intrins.h>
6
7 //定义显示数字0-9数组
8 code unsigned char LEDcode[]={0x7e,0x50,0x6D,0x79,0x53,0x3B,0x3F,0x70,0x7F,0x7B,0x00};
9 //code unsigned char LEDcode[]={0x7e,0x30,0x6D,0x79,0x33,0x5B,0x5F,0x70,0x7F,0x7B,0x00};
10
11 sbit IO7219=P3^4;
12 sbit CLK7219=P3^6;
13 sbit CS7219=P3^5; //根据实际情况定义
14
15 sbit ACC0=ACC^0;
16 sbit ACC7=ACC^7;
17
18 //Send 8bit data
19 void SendByte7219(unsigned char Dat)
20 {
21 1 unsigned char i;
22 1 ACC=Dat;
23 1 for(i=8;i>0;i--)
24 1 {
25 2 IO7219=ACC7;
26 2 CLK7219=1;
27 2 _nop_();
28 2 _nop_();
29 2 CLK7219=0;
30 2 ACC=ACC<<1;
31 2 }
32 1 }
33
34 //Send Command & Data
35 void Send7219(unsigned char CMD,unsigned char Dat)
36 {
37 1 CLK7219=0;
38 1 CS7219=0;
39 1 IO7219=0;
40 1 SendByte7219(CMD);
41 1 SendByte7219(Dat);
42 1 CS7219=1;
43 1 }
44
45 //The initialation MAX7219
46 void Init7219(void)
47 {
48 1
49 1 Send7219(0x0a,0x08); //Intensity Register Format(31/32)
50 1 Send7219(0x0b,0x03); //Scan-Limit Register Format(Display digits 0 1 2 3 4 5 6 7)
51 1 Send7219(0x09,0x00); //Decode-Mode Register Examples(No decode for digits 7–0)
52 1 Send7219(0x0f,0x00); //Display-Test Register Format(normal operation)
53 1 Send7219(0x0c,0x01); //Shutdown(normal operation)
54 1 }
55
C51 COMPILER V7.20 2 12/13/2008 19:12:44 PAGE 2
56 void Clear7219(void)
57 {
58 1 unsigned char i;
59 1 for(i=8;i>0;i--)
60 1 {
61 2 Send7219(i,0x00);
62 2 }
63 1 }
64 void delay()
65 {
66 1 unsigned int n;
67 1 n=10000;
68 1 while(n--);
69 1 }
70 main()
71 {
72 1 delay();
73 1 Init7219();
74 1 Clear7219();
75 1 //P1|=0x80;
76 1 {
77 2 Send7219(0x01,LEDcode[5]);
78 2 Send7219(0x02,LEDcode[6]+0x80);
79 2 Send7219(0x03,LEDcode[7]);
80 2 Send7219(0x04,LEDcode[9]);
81 2 Send7219(0x05,LEDcode[5]);
82 2 Send7219(0x06,LEDcode[6]+0x80);
83 2 Send7219(0x07,LEDcode[7]);
84 2 Send7219(0x08,LEDcode[8]);
85 2 // Send7219(0x0c,0x01);
86 2 // Clear7219();
87 2 }
88 1 while(1);
89 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 183 ----
CONSTANT SIZE = 11 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
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 + -