📄 16·16.lst
字号:
C51 COMPILER V7.50 16·16 04/22/2009 22:08:09 PAGE 1
C51 COMPILER V7.50, COMPILATION OF MODULE 16·16
OBJECT MODULE PLACED IN 16·16.OBJ
COMPILER INVOKED BY: D:\Program Files\keil 750\C51\BIN\C51.EXE 16·16.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<reg52.h>
2 sbit CLK1 =P2^0;
3 sbit DATA1 =P2^1;
4 sbit CLK2 =P2^2;
5 sbit DATA2 =P2^3;
6 sbit CLK3 =P2^4;
7 sbit DATA3 =P2^5;
8 sbit CLK4 =P2^6;
9 sbit DATA4 =P2^7;
10 unsigned char *p;
11 unsigned char arry[]={
12 0x00,0x00,0x00,0x08,0x7F,0xFC,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x10,0x3F,0xF8,
13 0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x04,0xFF,0xFE,0x00,0x00,0x00,0x00};
14 void senddata_reg(unsigned char select,unsigned char dat);
15 unsigned char temp;
16 //延时500+0us 函数定义
17 void delay0ms(void)
18 {
19 1 unsigned char i,j;
20 1 for(i=99;i>0;i--)
21 1 for(j=1;j>0;j--);
22 1 }
23 //延时1000000+3us 函数定义
24 void delay1000ms(void)
25 {
26 1 unsigned char i,j,k;
27 1 for(i=254;i>0;i--)
28 1 for(j=14;j>0;j--)
29 1 for(k=139;k>0;k--);
30 1 }
31 main()
32 {
33 1 unsigned int i;
34 1
35 1 temp=0xff;
36 1 P0=P3=0x00;
37 1
38 1 while(1)
39 1 {
40 2 p=&arry;
41 2 for(i=1;i<=128;i=i*2)
42 2 {
43 3 P3=i;//8行
44 3 temp=0xff-*p;
45 3 senddata_reg(1,temp);
46 3 p++;
47 3 temp=0xff-*p;
48 3 senddata_reg(3,temp);
49 3 p++;
50 3 delay0ms();
51 3 }
52 2 for(i=1;i<=128;i=i*2)
53 2 {
54 3 P0=i;
55 3 temp=0xff-*p;
C51 COMPILER V7.50 16·16 04/22/2009 22:08:09 PAGE 2
56 3 senddata_reg(2,temp);
57 3 p++;
58 3 temp=0xff-*p;
59 3 senddata_reg(4,temp);
60 3 p++;
61 3 delay0ms();
62 3 }
63 2 }
64 1 }
65 void senddata_reg(unsigned char select,unsigned char dat)
66 {
67 1 unsigned char i1,temp1;
68 1 bit j1;
69 1 if(select==1)
70 1 {
71 2
72 2 temp1=dat;
73 2 for(i1=0;i1<8;i1++)
74 2 {
75 3 CLK1=0;
76 3 j1=temp1&0x80;
77 3 DATA1=j1;
78 3 temp1=temp1<<1;
79 3 CLK1=1;
80 3 }
81 2 CLK1=0;
82 2 }
83 1 else if(select==2)
84 1 {
85 2
86 2 temp1=dat;
87 2 for(i1=0;i1<8;i1++)
88 2 {
89 3 CLK2=0;
90 3 j1=temp1&0x80;
91 3 DATA2=j1;
92 3 temp1=temp1<<1;
93 3 CLK2=1;
94 3 }
95 2 CLK2=0;
96 2 }
97 1 else if(select==3)
98 1 {
99 2
100 2 temp1=dat;
101 2 for(i1=0;i1<8;i1++)
102 2 {
103 3 CLK3=0;
104 3 j1=temp1&0x80;
105 3 DATA3=j1;
106 3 temp1=temp1<<1;
107 3 CLK3=1;
108 3 }
109 2 CLK3=0;
110 2 }
111 1 else if(select==4)
112 1 {
113 2
114 2 temp1=dat;
115 2 for(i1=0;i1<8;i1++)
116 2 {
117 3 CLK4=0;
C51 COMPILER V7.50 16·16 04/22/2009 22:08:09 PAGE 3
118 3 j1=temp1&0x80;
119 3 DATA4=j1;
120 3 temp1=temp1<<1;
121 3 CLK4=1;
122 3 }
123 2 CLK4=0;
124 2 }
125 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 354 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 36 2
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 + -