ex4-5.lst
来自「单片机实验代码包括A/D」· LST 代码 · 共 72 行
LST
72 行
C51 COMPILER V8.02 EX4_5 01/03/2008 21:04:02 PAGE 1
C51 COMPILER V8.02, COMPILATION OF MODULE EX4_5
OBJECT MODULE PLACED IN ex4-5.OBJ
COMPILER INVOKED BY: D:\keil c\files\C51\BIN\C51.EXE ex4-5.C BROWSE DEBUG OBJECTEXTEND
line level source
1 /*
2 标题:范例 4-5
3 版本:1.0
4 Target:89S51
5 程序描述:Port B 在正常状况下会输出跑马灯,
6 当INT0 引脚有+5V的脉冲出现时,8颗LED会一闪一灭4次。 */
7 /* ***************************************************** */
8 #include <REGX51.H>
9 void delay (void) { /* delay 函数 */
10 1 unsigned char i,j; /* 这个函数执行时间的延迟 */
11 1 for (i=0;i<255;i++)
12 1 for(j=0;j<255;j++)
13 1 ;
14 1 }
15 void delay_4isr (void) { /* delay_4isr 函数 */
16 1 unsigned char i,j; /* 这个函数执行时间的延迟 */
17 1 for (i=0;i<255;i++)
18 1 for(j=0;j<255;j++)
19 1 ;
20 1 }
21 static void xint0_isr(void) interrupt IE0_VECTOR
22 {
23 1 unsigned char i,j=0XFF; /* 变量 j */
24 1 for(i=0;i<16;i++)
25 1 {
26 2 j=~j;
27 2 P1 = j; /* 将数值输出到 LED 输出埠 */
28 2 delay_4isr ();
29 2 }
30 1 }
31 void main (void) {
32 1 unsigned char j=0XFF; /* 变量 j */
33 1 EA=0; /* 设定系统不接受所有的中断 */
34 1 EX0=1; /* 设定接受INT0的中断 */
35 1 PX0=1;
36 1 EA=1; /* 设定系统接受中断 */
37 1 while (1) /* 无穷循环 */
38 1 /* 依次让LED 0,1,2,3,4,5,6,7闪烁 */
39 1 {
40 2 j=(j<<1) | 0x01;
41 2 if(j==0XFF) j=0XFE;
42 2 P1 = j; /* 将数值输出到 LED 输出端口 */
43 2 delay(); /* 调用 delay 函数*/
44 2 }
45 1 }
46
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 98 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
C51 COMPILER V8.02 EX4_5 01/03/2008 21:04:02 PAGE 2
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?