📄 main.lst
字号:
C51 COMPILER V8.08 MAIN 11/13/2008 00:14:55 PAGE 1
C51 COMPILER V8.08, COMPILATION OF MODULE MAIN
OBJECT MODULE PLACED IN main.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE main.c BROWSE DEBUG OBJECTEXTEND
line level source
1 #include <string.h>
2 #include <AT89X52.h>
3 #include <intrins.h>
4 #include "nRF2401.H"
5
6 #define INT8U unsigned char
7 #define INT16U unsigned int
8
9 #define FOSC 24000000
10 #define BAUD 9600
11 #define TIMER1 0XFD //256-(110592/(12*32*96))
12 #define TIMER0H (65535-3*FOSC/12/1000)/256
13 #define TIMER0L (65535-3*FOSC/12/1000)%256 //定时3MSVR
14
15 #define time0h (65535-3000)/256
16 #define time0l (65535-3000)%256 //定时3MS
17
18
19
20
21 sbit LED1 = P1^4;
22 sbit LED2 = P1^5;
23 sbit key1 = P1^6;
24 sbit key2 = P1^7;
25 sbit key3 = P3^2;
26 sbit key4 = P3^3;
27 sbit key5 = P3^4;
28 sbit key6 = P3^5;
29 sbit key7 = P3^6;
30 sbit key8 = P3^7;
31
32 bit ledcon ;
33 INT16U delay=0;
34 INT8U timer[2]; //超时计数器
35 //unsigned char Address[5] = {0x00,0x00,0x00,0x00,0x01};
36 unsigned char SendBuf[5] = {0x01,0x02,0x03,0x04,0x05};
37 unsigned char Address[4] = {0x00,0x00,0x01,0xFF};
38 const unsigned char SoundData[32] = {
39 0xFF,0xFF,0x6D,0x00,0x2D,0x01,0x3D,0x01,0x43,0x00,0x08,0xFF,0xAA,0xFE,0x5E,0xFF,
40 0x0F,0x00,0x68,0xFF,0x76,0xFD,0x17,0xFC,0x8C,0xFD,0x29,0x02,0x61,0x07,0x45,0x09,
41
42
43 };
44 /*****************************************************************************************
45 //函数名:UartInit()
46 //输入:无
47 //输出:无
48 //功能描述:串口初始化程序
49 /*****************************************************************************************/
50 void UartInit(void)
51 {
52 1 SCON = 0x50; //串口方式1,允许接收
53 1 TMOD = 0x21; //定时器1工作方式2,定时器0工作方式1
54 1 TH1 = 0xf3;
55 1 TL1 = 0xf3;
C51 COMPILER V8.08 MAIN 11/13/2008 00:14:55 PAGE 2
56 1 PCON=PCON|0x80;
57 1 TR1 = 1; //启动定时器1
58 1 }
59
60
61 /*****************************************************************************************
62 //函数名:SendCh(ch)
63 //输入:无
64 //输出:无
65 //功能描述:串口发送一个字符
66 /*****************************************************************************************/
67 void SendCh(INT8U ch)
68 {
69 1 SBUF = ch;
70 1 while(!TI);
71 1 TI = 0;
72 1 }
73
74
75 /*****************************************************************************************
76 //函数名:void SendStr(INT8U *arr)
77 //输入:发送的字符串
78 //输出:无
79 //功能描述:发送一个字符串
80 /*****************************************************************************************/
81 void SendStr(INT8U *arr)
82 {
83 1 INT8U i;
84 1
85 1 i = 0;
86 1 while(arr[i] != '\0')
87 1 {
88 2 SendCh(arr[i]);
89 2 i++;
90 2 }
91 1 }
92 /********************************************************************************/
93 /* 含回车换行的字符串输出函数 */
94 int Puts(char *s)
95 {
96 1
97 1 while (*s)
98 1 {
99 2 SendCh(*s);
100 2 s++;
101 2 }
102 1 SendCh(0x0a);//回车换行
103 1 SendCh(0x0d);
104 1 // Putstr("\n");
105 1
106 1 return 1;
107 1 }
108
109 void hexASCII(unsigned char *dat,unsigned char len)
110 {
111 1 const unsigned char tabel[]="0123456789ABCDEF";
112 1 unsigned char i,temp;
113 1 //SendStr("HEX->ASCII字符串输出len=");
114 1
115 1 for (i=len;i>0;i--)
116 1 {
117 2 SendCh(0x20);
C51 COMPILER V8.08 MAIN 11/13/2008 00:14:55 PAGE 3
118 2 SendCh(0x30);
119 2 SendCh(0x78);
120 2 temp=dat[len-i]&0xf0;
121 2 temp=temp>>4;
122 2 SendCh(tabel[temp]);
123 2 temp=dat[len-i]&0x0f;
124 2 SendCh(tabel[temp]);
125 2
126 2 }
127 1 SendCh(0x0a);//回车换行
128 1 SendCh(0x0d);
129 1 }
130 /*****************************************************************************************
131 //函数名:void TimerInit(void)
132 //输入:无
133 //输出:无
134 //功能描述:定时器0初始化程序
135 /*****************************************************************************************/
136 void TimerInit(void)
137 {
138 1 TH0 = TIMER0H;
139 1 TL0 = TIMER0L;
140 1 ET0 = 1; //定时器0中断允许
141 1 TF0 = 0;
142 1 TR0 = 1; //启动定时器0
143 1 EA = 1; //开全局中断
144 1 }
145
146
147
148
149
150 /*****************************************************************************************
151 //函数名:ResetTimer(INT8U n)
152 //输入:要复位的计时器
153 //输出:无
154 //功能描述:复位计时器
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -