📄 frequency.lst
字号:
C51 COMPILER V8.02 FREQUENCY 04/26/2009 16:31:58 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE FREQUENCY
OBJECT MODULE PLACED IN frequency.OBJ
COMPILER INVOKED BY: E:\Program Files\keil\C51\BIN\C51.EXE frequency.c ROM(SMALL) BROWSE DEBUG OBJECTEXTEND
line level source
1 #include<regx52.h>
2 #include<intrins.h>
3 #define uint unsigned int
4 #define uchar unsigned char
5 unsigned char code dispbit[8]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};//共阴数码管
6 unsigned char code dispcode[10]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};//显示0-9
7 unsigned char count[8]={0,0,0,0,0,0,0,0};
8 unsigned int T0count=0;
9 unsigned char time1tick=0;
10 unsigned char i=0;
11 unsigned long x;//该开始定义unsigned int,结果超出了范围,因为int的最大是65536
12 void pulse_init(void)
13 {
14 1 TMOD=0x16;//T0工作在方式2,计数器模式
15 1 TH0=0x00;
16 1 TL0=0x00;
17 1 TH1=0xb1;//20ms中断一次
18 1 TL1=0xe0;
19 1 ET0=1;
20 1 ET1=1;
21 1 EA=1;
22 1
23 1 }
24 void delay(uint ms)
25 {
26 1 unsigned char i,j;
27 1 for(i=0;i<ms;i++)
28 1 for(j=0;j<250;j++)
29 1 {
30 2 _nop_();
31 2 _nop_();
32 2 _nop_();
33 2 _nop_();
34 2 }
35 1 }
36 static void time0_int(void) interrupt 1 using 0
37 {
38 1
39 1 T0count++; //T0为计数器模式
40 1 }
41
42 void t1(void) interrupt 3 using 0
43 {
44 1
45 1 time1tick++;
46 1 TH1=0xb1;//20ms中断一次
47 1 TL1=0xe0;
48 1 if(time1tick==50)//定时1s
49 1 {
50 2 time1tick=0;
51 2 TR0=0;
52 2 TR1=0;//T1为定时器模式
53 2 EA=0;
54 2 }
55 1
C51 COMPILER V8.02 FREQUENCY 04/26/2009 16:31:58 PAGE 2
56 1
57 1 }
58
59 void display(void)
60 {
61 1 x=256*T0count+TL0; //转换成10进制
62 1 i=7;//数码管的显示高位表示数据的低位
63 1 while(x)//赋值
64 1 {
65 2 count[i]=x%10;
66 2 x=x/10;
67 2 i--;
68 2 }
69 1 count[i]=x;
70 1 for(i=0;i<8;i++)
71 1 {
72 2 P0=dispbit[i];
73 2 P1=dispcode[count[i]];
74 2 delay(1);
75 2 }
76 1 }
77 void main()
78 {
79 1 pulse_init();
80 1 TR1=1;//开启timer
81 1 TR0=1;
82 1 while(1)display();
83 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 228 ----
CONSTANT SIZE = 18 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 16 ----
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 + -