tst.lst
来自「菜鸟,详细NRF24E1运用,程序,电路」· LST 代码 · 共 184 行
LST
184 行
C51 COMPILER V9.00 TST 11/13/2010 14:57:40 PAGE 1
C51 COMPILER V9.00, COMPILATION OF MODULE TST
OBJECT MODULE PLACED IN tst.OBJ
COMPILER INVOKED BY: D:\Program Files\KEIL C V4\C51\BIN\C51.EXE tst.c BROWSE DEBUG OBJECTEXTEND
line level source
*** WARNING C500 IN LINE 1 OF TST.C: LICENSE ERROR (R208: RENEW LICENSE ID CODE (LIC))
1 /*****************************************
2 / nRF24LE1驱动12864液晶显示程序
3 *****************************************/
4 #include "reg24le1.h"
5 #include "intrins.h"
6 /*****************************************/
7 sbit CS =P0^2;
8 sbit E_CLK =P0^1;
9 sbit RW_SID =P0^0;
10 /*****************************************/
11 #define Enableint do{EA=1;}while(0)
12 #define Disableint do{EA=1;}while(0)
13 /*****************************************/
14 typedef enum YON{false,true}bool;
15 /*****************************************/
16 typedef unsigned char uchar;
17 typedef unsigned int uint ;
18 /*****************************************/
19 uchar code tab[]={
20 "这是一个液晶测试"
21 "小江编写,仅供简"
22 "程序,由南华大学"
23 "当测试,谢谢支持"
24 };
25 /***************************************
26 /
27 /nRF24LE1的I/O口初始化
28 /
29 ***************************************/
30 void IOCNFG()
31 {
32 1 P0DIR&=0XF0; /*设置P0.0~P0.3为输出*/
33 1 }
34 /***************************************
35 /
36 /nRF24LE1工作时钟设置
37 /
38 ***************************************/
39 void WorkClkSet()
40 {
41 1 CLKCTRL = 0x28;
42 1 CLKLFCTRL = 0x01;
43 1 }
44 /*****************************************
45 /
46 /延时函数
47 /
48 *****************************************/
49 void delay(uint n)
50 {
51 1 uint i;
52 1 for(i=0; i<n; i++);
53 1 }
54 /*****************************************
C51 COMPILER V9.00 TST 11/13/2010 14:57:40 PAGE 2
55 /
56 /串行发送一字节数据
57 /
58 ******************************************/
59 void SendByte(uchar dat)
60 {
61 1 unsigned char i;
62 1 CS=1;
63 1 for(i=0;i<8;i++)
64 1 {
65 2 E_CLK=0;
66 2 if(dat&0x80)
67 2 {
68 3 RW_SID=1;
69 3 }
70 2 else
71 2 {
72 3 RW_SID=0;
73 3 }
74 2 _nop_();
75 2 _nop_();
76 2 E_CLK=1;
77 2 dat=dat<<1;
78 2 _nop_();
79 2 _nop_();
80 2 }
81 1 CS=0;
82 1 }
83
84 /*****************************************
85 /
86 /写控制命令
87 /
88 ******************************************/
89 void SendCMD(uchar dat)
90 {
91 1 SendByte(0xF8);
92 1 SendByte(dat&0xF0);
93 1 SendByte((dat&0x0F)<<4);
94 1 }
95
96 /*****************************************
97 /
98 /发送一个数据
99 /
100 ******************************************/
101 void SendDat(uchar dat)
102 {
103 1 SendByte(0xFA);
104 1 SendByte(dat&0xF0);
105 1 SendByte((dat&0x0F)<<4);
106 1 }
107 /*****************************************
108 /
109 /LCD初始化函数
110 /
111 ******************************************/
112 void initlcm(void)
113 {
114 1 delay(100);
115 1 SendCMD(0x30);/*功能设置,一次送8位数据,基本指令集 */
116 1 SendCMD(0x0C);/* 开显示 */
C51 COMPILER V9.00 TST 11/13/2010 14:57:40 PAGE 3
117 1 SendCMD(0x01);/* 清DDRAM */
118 1 SendCMD(0x02);/* DDRAM地址归位 */
119 1 SendCMD(0x80);/* 设定DDRAM */
120 1 delay(100);
121 1 }
122 /******************************************
123 /
124 /显示汉字或字符
125 /
126 *******************************************/
127 void chn_disp (uchar code *chn)
128 {
129 1 uchar i,j;
130 1 SendCMD(0x80);
131 1 for (j=0;j<4;j++)
132 1 {
133 2 for (i=0;i<16;i++)
134 2 {
135 3 SendDat(chn[j*16+i]);
136 3 }
137 2 }
138 1 }
139 /******************************************
140 /
141 /主函数部分
142 /
143 *******************************************/
144 void main(void)
145 {
146 1 WorkClkSet();
147 1 IOCNFG();
148 1 initlcm(); /*12864初始化程序 */
149 1 while(1)
150 1 {
151 2 chn_disp(tab);
152 2 delay(1000);
153 2 }
154 1 }
MODULE INFORMATION: STATIC OVERLAYABLE
CODE SIZE = 222 ----
CONSTANT SIZE = 65 ----
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 + -
显示快捷键?