main.lst
来自「菜鸟,详细NRF24E1运用,程序,电路」· LST 代码 · 共 171 行
LST
171 行
C51 COMPILER V9.00 MAIN 11/13/2010 14:58: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 ***********************************/
4 #include "reg24le1.h"
5 #include "intrins.h "
6 /**********************************/
7 #define SPI_CLK P00
8 #define SPI_DATA P01
9 #define CS_DA P02
10 #define LED P03
11 #define Disableint do{EA=0;}while(0)
12 #define Enableint do{EA=1;}while(0)
13 /**********************************/
14 typedef unsigned int uint;
15 typedef unsigned char uchar;
16 /**********************************/
17 code uint DA_data[256]= {
18 0x1FF,0x20C,0x218,0x225,0x231,0x23E,0x24A,0x256,
19 0x263,0x26F,0x27B,0x287,0x293,0x29F,0x2AB,0x2B7,
20 0x2C3,0x2CE,0x2DA,0x2E5,0x2F0,0x2FB,0x306,0x311,
21 0x31B,0x326,0x330,0x33A,0x343,0x34D,0x357,0x360,
22 0x369,0x371,0x37A,0x382,0x38A,0x392,0x39A,0x3A1,
23 0x3A8,0x3AF,0x3B6,0x3BC,0x3C2,0x3C8,0x3CD,0x3D3,
24 0x3D8,0x3DC,0x3E1,0x3E5,0x3E8,0x3EC,0x3EF,0x3F2,
25 0x3F5,0x3F7,0x3F9,0x3FB,0x3FC,0x3FD,0x3FE,0x3FE,
26 0x3FE,0x3FE,0x3FE,0x3FD,0x3FC,0x3FB,0x3F9,0x3F7,
27 0x3F5,0x3F2,0x3EF,0x3EC,0x3E8,0x3E5,0x3E1,0x3DC,
28 0x3D8,0x3D3,0x3CD,0x3C8,0x3C2,0x3BC,0x3B6,0x3AF,
29 0x3A8,0x3A1,0x39A,0x392,0x38A,0x382,0x37A,0x371,
30 0x369,0x360,0x357,0x34D,0x343,0x33A,0x330,0x326,
31 0x31B,0x311,0x306,0x2FB,0x2F0,0x2E5,0x2DA,0x2CE,
32 0x2C3,0x2B7,0x2AB,0x29F,0x293,0x287,0x27B,0x26F,
33 0x263,0x256,0x24A,0x23E,0x231,0x225,0x218,0x20C,
34 0x1FF,0x1F2,0x1E6,0x1D9,0x1CD,0x1C0,0x1B4,0x1A8,
35 0x19B,0x18F,0x183,0x177,0x16B,0x15F,0x153,0x147,
36 0x13B,0x130,0x124,0x119,0x10E,0x103,0x0F8,0x0ED,
37 0x0E3,0x0D8,0x0CE,0x0C4,0x0BB,0x0B1,0x0A7,0x09E,
38 0x095,0x08D,0x084,0x07C,0x074,0x06C,0x064,0x05D,
39 0x056,0x04F,0x048,0x042,0x03C,0x036,0x031,0x02B,
40 0x026,0x022,0x01D,0x019,0x016,0x012,0x00F,0x00C,
41 0x009,0x007,0x005,0x003,0x002,0x001,0x000,0x000,
42 0x000,0x000,0x000,0x001,0x002,0x003,0x005,0x007,
43 0x009,0x00C,0x00F,0x012,0x016,0x019,0x01D,0x022,
44 0x026,0x02B,0x031,0x036,0x03C,0x042,0x048,0x04F,
45 0x056,0x05D,0x064,0x06C,0x074,0x07C,0x084,0x08D,
46 0x095,0x09E,0x0A8,0x0B1,0x0BB,0x0C4,0x0CE,0x0D8,
47 0x0E3,0x0ED,0x0F8,0x103,0x10E,0x119,0x124,0x130,
48 0x13B,0x147,0x153,0x15F,0x16B,0x177,0x183,0x18F,
49 0x19B,0x1A8,0x1B4,0x1C0,0x1CD,0x1D9,0x1E6,0x1F2};
50 /**************************************
51 /
52 /用模拟SPI接口给TLC5615发数据
53 /
54 ***************************************/
C51 COMPILER V9.00 MAIN 11/13/2010 14:58:06 PAGE 2
55 void DA_TLC_5615(uint Dat)
56 {
57 1 uchar i;
58 1 Dat<<=6;
59 1 SPI_CLK=0; /*时钟低 */
60 1 CS_DA=0; /*片选有效 */
61 1 for (i=0;i<12;i++)
62 1 {
63 2 if((Dat&0x8000)==0)
64 2 {
65 3 SPI_DATA=0;
66 3 }
67 2 else
68 2 {
69 3 SPI_DATA=1;
70 3 }
71 2 SPI_CLK=1; /*时钟高 */
72 2 Dat<<=1; /*左移一位 */
73 2 SPI_CLK=0; /*时钟低 */
74 2 }
75 1 CS_DA=1;
76 1 }
77 /****************************************
78 /
79 /nRF24LE1时钟设置函数
80 /
81 ****************************************/
82 void WorkClkSet()
83 {
84 1 CLKCTRL=0X28;
85 1 CLKLFCTRL = 0x01;
86 1 }
87 /****************************************
88 /
89 /初始化nRF24LE1的I/O口
90 /
91 ****************************************/
92 void IOCNFG()
93 {
94 1 P0DIR&=0xF0;/*设置控制器的P0.0~P0.3为输出*/
95 1 P0DIR =0X00;
96 1 CS_DA=1; /*DA芯片不被选择*/
97 1 }
98 /****************************************
99 /
100 /设置一个状态LED
101 /
102 ****************************************/
103 void Light_LED()
104 {
105 1 static uint Cnt=0;
106 1 if(Cnt!=10000)
107 1 {
108 2 Cnt++;
109 2 }
110 1 else
111 1 {
112 2 Cnt=0;
113 2 LED=!LED;
114 2 }
115 1 }
116 /****************************************
C51 COMPILER V9.00 MAIN 11/13/2010 14:58:06 PAGE 3
117 /
118 /主函数
119 /
120 *****************************************/
121 void main(void)
122 {
123 1 uint k;
124 1 Disableint;
125 1 WorkClkSet();
126 1 IOCNFG();
127 1 Enableint;
128 1 while(1)
129 1 {
130 2 k++;
131 2 if(k>=256)
132 2 {
133 3 k=0;
134 3 }
135 2 DA_TLC_5615(DA_data[k]);
136 2 Light_LED();
137 2 }
138 1 }
139 /****************************************
140 / 程序结束 /
141 ****************************************/
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 146 ----
CONSTANT SIZE = 512 ----
XDATA SIZE = ---- ----
PDATA SIZE = ---- ----
DATA SIZE = 2 ----
IDATA SIZE = ---- ----
BIT SIZE = ---- ----
END OF MODULE INFORMATION.
C51 COMPILATION COMPLETE. 1 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?