📄 74hc595c51.lst
字号:
C51 COMPILER V7.20 74HC595C51 04/13/2008 22:17:22 PAGE 1
C51 COMPILER V7.20, COMPILATION OF MODULE 74HC595C51
OBJECT MODULE PLACED IN 74hc595c51.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE 74hc595c51.c BROWSE DEBUG OBJECTEXTEND
line level source
1 //定时器晶体振荡器11.0592M.
2
3 #include "reg51.h"
4 #include "INTRINS.H"
5 #define uint unsigned int
6 #define uchar unsigned char
7 #define nop() _nop_();_nop_();
8
9 sbit CLK=P1^0;
10 sbit DAT=P1^1;
11 sbit RCLK=P1^2;
12 //sbit CS=P2^3;
13
14
15 uchar code tab[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90,0xbf,0xff};//根据使用595的个数,如1个5
-95就是以上的代码,如2个0xc0c0,3个0xc0c0c0 .......
16
17
18
19 void sendbyte(uchar byte)
20 {
21 1 uchar num,c;
22 1 num=tab[byte];
23 1
24 1 for(c=0;c<8;c++) //如:1个595 i=8*1,如2个595 i=8*2=16,3个595 i=8*3=24;..................
25 1 {
26 2 CLK=0;
27 2 DAT=num&0x80;
28 2 num=num<<1;
29 2
30 2 CLK=1;
31 2 }
32 1 // RCLK=0;
33 1 // nop();
34 1 // nop();
35 1 // RCLK=1;
36 1
37 1 }
38
39 void out595(void)
40 {
41 1 RCLK=0;
42 1 nop();
43 1 RCLK=1;
44 1 }
45
46 void display(uchar word)
47 {
48 1 uchar i,j;
49 1 i=word/10;
50 1 j=word-10*i;
51 1 sendbyte(j);
52 1 sendbyte(i);
53 1 out595();
54 1 }
C51 COMPILER V7.20 74HC595C51 04/13/2008 22:17:22 PAGE 2
55
56
57 main()
58 {
59 1 while(1)
60 1 {
61 2 display(19);
62 2 display(86);
63 2 }
64 1 while(1);
65 1
66 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 72 ----
CONSTANT SIZE = 12 ----
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 + -