?? main.lst
字號:
C51 COMPILER V9.00 MAIN 11/13/2010 14:59:17 PAGE 1
C51 COMPILER V9.00, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: D:\Program Files\KEIL C V4\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
line level source
*** WARNING C500 IN LINE 1 OF MAIN.C: LICENSE ERROR (R208: RENEW LICENSE ID CODE (LIC))
1 /***********************************
2 /源代碼部分
3 ***********************************/
4 #include "reg24le1.h"
5 /**********************************/
6 #define true 1
7 #define false 0
8 #define Senser P00 /*連接傳感器*/
9 #define BUZZER P01 /*連接蜂鳴器*/
10 #define LED P02 /*連接LED燈 */
11 #define Disableint do{EA=0;}while(0)
12 #define Enableint do{EA=1;}while(0)
13 typedef unsigned int uint;
14 typedef unsigned char uchar;
15 /***********************************
16 /延時函數
17 ************************************/
18 void Delay(uint x)
19 {
20 1 uchar l;
21 1 for(;x>0;x--)
22 1 for(l=120;l>0;l--)
23 1 {}
24 1 }
25 /***********************************
26 /nRF24LE1工作時鐘設置
27 ************************************/
28 void SetWorkClk()
29 {
30 1 CLKCTRL=0X28;
31 1 CLKLFCTRL = 0x01;
32 1 }
33 /***********************************
34 /串口波特率初始化為9600,8-n-1方式
35 ************************************/
36 void Uartinit(uint baud)
37 {
38 1 P0DIR &= 0xF7; /* P0.3 (TxD)輸出*/
39 1 P0DIR |= 0x10; /* P0.4 (RxD)輸入*/
40 1 S0CON = 0x50;
41 1 PCON |= 0x80; /* 波特率倍增 */
42 1 WDCON |= 0x80; /* 選定內部波特率發生器*/
43 1 if(baud==38400)
44 1 {
45 2 S0RELL = 0xF3; /* 波特率38400 */
46 2 S0RELH = 0x03;
47 2 }
48 1 else if(baud==9600)
49 1 {
50 2 S0RELL = 0xCC; /* 波特率9600*/
51 2 S0RELH = 0x03;
52 2 }
53 1 }
54 /***********************************
C51 COMPILER V9.00 MAIN 11/13/2010 14:59:17 PAGE 2
55 /nRF24LE1的I/O口初始化
56 ************************************/
57 void Ioinit()
58 {
59 1 P0DIR|=BIT_0;
60 1 Senser=0;
61 1 BUZZER=0;
62 1 }
63 /***********************************
64 /紅外初始化函數
65 ************************************/
66 bit Polling()
67 {
68 1 bit flag=0;
69 1 if(Senser)
70 1 {
71 2 Delay(20);
72 2 if(Senser)
73 2 {flag=1; }
74 2 }
75 1 return flag;
76 1 }
77 /**********************************
78 /定時器0初始化
79 ***********************************/
80 void Timer0init()
81 {
82 1 TMOD=0X01;
83 1 TH0=(65536-1000)/256;
84 1 TL0=(65536-1000)%256;
85 1 ET0=1;
86 1 }
87 /**********************************
88 /定時器中斷服務函數
89 **********************************/
90 void TIMERISR() interrupt INTERRUPT_TF0
91 {
92 1 TR0=0;
93 1 TH0=(65536-1000)/256;
94 1 TL0=(65536-1000)%256;
95 1 BUZZER=!BUZZER;
96 1 TR0=1;
97 1 }
98 /***********************************
99 /主函數
100 ************************************/
101 void main()
102 {
103 1 Disableint;
104 1 SetWorkClk();
105 1 Uartinit(9600);
106 1 Ioinit();
107 1 Timer0init();
108 1 Enableint;
109 1 while(1)
110 1 {
111 2 if(Polling())
112 2 TR0=1;
113 2 else
114 2 TR0=0;
115 2 }
116 1
C51 COMPILER V9.00 MAIN 11/13/2010 14:59:17 PAGE 3
117 1 }
118 /********************************
119 / 程序到此結束 /
120 *********************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 173 ----
CONSTANT SIZE = ---- ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = ---- ----
IDATA SIZE = ---- ----
BIT SIZE = ---- 1
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -