main.lst
来自「菜鸟,详细NRF24E1运用,程序,电路」· LST 代码 · 共 161 行
LST
161 行
C51 COMPILER V9.00 MAIN 11/13/2010 14:43:06 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 /SRAM配置成数据存储空间,默认地址是从0x0000到0x03FF,
4 /下面的程序将对这个1KB的XDATA进行测试。
5 ********************************************************************/
6 #include "reg24le1.h"
7 /*******************************************************************
8 /建立一个全局数组,可以存储500个int类型的变量
9 ********************************************************************/
10 int xdata dat[500]={0x00};
11 /********************************************************************
12 /函数名称:delay()
13 /函数功能:根据输入的参数的大小控制软件延时的长度
14 /传入参数:x,延时的时间数
15 /返回参数:无
16 ********************************************************************/
17 void delay(unsigned int x)
18 {
19 1 unsigned char di;
20 1 for(;x>0;x--)
21 1 for(di=175;di>0;di--)
22 1 {
23 2 ;
24 2 }
25 1 }
26
27 /********************************************************************
28 /函数名称:IO_cof()
29 /函数功能:初始化nRF24LE1的I/O口和工作时钟
30 /传入参数:无
31 /返回参数:无
32 ********************************************************************/
33 void IO_cof()
34 {
35 1 CLKCTRL=0X28;
36 1 CLKLFCTRL = 0x01;
37 1
38 1 P0CON=0X00;
39 1 P0DIR=0X00;
40 1
41 1 P1DIR=0X00;
42 1 P1CON=0X00;
43 1 }
44 /*******************************************************************
45 /函数名称:uart_init()
46 /函数功能:nRF24LE1的串口初始化
47 /传入参数:无
48 /返回参数:无
49 ********************************************************************/
50 void uart_init()
51 {
52 1 P0DIR &= 0xF7; /* 配置P0.3 (TXD)为输出 */
53 1 P0DIR |= 0x10; /* 设置P0.4 (RXD)为输入 */
54 1 P0 |=0x18;
C51 COMPILER V9.00 MAIN 11/13/2010 14:43:06 PAGE 2
55 1
56 1 S0CON = 0x50;
57 1 PCON |= 0x80; /*配置波特率倍增 */
58 1 WDCON |= 0x80; /*选择使用内部波特率发生器*/
59 1
60 1 S0RELL = 0xF3; /*设置波特率为38400 */
61 1 S0RELH = 0x03;
62 1 }
63 /********************************************************************
64 /函数名称:send()
65 /函数功能:串口发送一个字符
66 /传入参数:ch,发送的字符
67 /返回参数:无
68 *********************************************************************/
69 void send(char ch)
70 {
71 1
72 1 S0BUF=ch;
73 1 while(!TI0);
74 1 TI0=0;
75 1 }
76 /********************************************************************
77 /函数名称:puts()
78 /函数功能:串口发送一个字符串
79 /传入参数:s,指向想发送的字符串的指针
80 /返回参数:无
81 ********************************************************************/
82 void puts(unsigned char* s)
83 {
84 1 while(*s!='\0')
85 1 {
86 2 send(*s++);
87 2 }
88 1 }
89 /*******************************************************************
90 /函数名称:datainit()
91 /函数功能:初始化数组dat的500个数组成员
92 /传入参数:无
93 /返回参数:无
94 ********************************************************************/
95 void datainit(void)
96 {
97 1 int inum=0;
98 1 for(inum=0;inum<500;inum++)
99 1 dat[inum]=inum*2;
100 1 }
101 /********************************************************************
102 /主函数
103 ********************************************************************/
104 void main(void)
105 {
106 1 int num;
107 1 IO_cof();
108 1 uart_init();
109 1 datainit();
110 1 delay(100);
111 1 puts("************************This Is A nRF24LE1 \
112 1 Ram Test Program***********************");
113 1 send('\n');
114 1 delay(100);
115 1 for(num=0;num<500;num++) /*利用循环在串口上显示dat的成员数据*/
116 1 {
C51 COMPILER V9.00 MAIN 11/13/2010 14:43:06 PAGE 3
117 2 if((num%50)==0)
118 2 {
119 3 send('\n');
120 3 }
121 2 send(((dat[num]/100)+'0')); /*显示dat数组成员的百位 */
122 2 delay(1);
123 2 send(((dat[num]%100)/10+'0')); /*显示dat数组成员的千位 */
124 2 delay(1);
125 2 send((dat[num]%10)+'0'); /*显示dat数组成员的个位 */
126 2 delay(1);
127 2 puts(" "); /*显示每个dat数组成员之间的间隔 */
128 2 }
129 1 while(1); /*程序进入等待 */
130 1 }
131
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 363 ----
CONSTANT SIZE = 87 ----
XDATA SIZE = 1000 ----
PDATA SIZE = ---- ----
DATA SIZE = ---- 5
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?