📄 display2x6.lst
字号:
C51 COMPILER V7.09 DISPLAY2X6 07/22/2007 13:27:08 PAGE 1
C51 COMPILER V7.09, COMPILATION OF MODULE DISPLAY2X6
OBJECT MODULE PLACED IN D:\22研发~1\云兴宇~2\软件调试\终稿\显示程序\DISPLAY2X6.OBJ
COMPILER INVOKED BY: C:\Keil\C51\BIN\C51.EXE D:\22研发~1\云兴宇~2\软件调试\终稿\显示程序\DISPLAY2X6.C DB SB OE
line level source
1 /******************************************************************/
2 /**文件名: display2x6.c **/
3 /** **/
4 /**文件描述: 若外部RAM在写操作时,则LED屏清屏 **/
5 /** 在非清屏的情况下,读取外部RAM的数据,并显示在LED屏上 **/
6 /** 在非清屏的情况下,若全屏引脚为低时,显示屏全亮 **/
7 /** **/
8 /**创建人: 陈芸 时间:2007年7月17日 **/
9 /** **/
10 /**版本号: 01 **/
11 /**修改记录 **/
12 /******************************************************************/
13 #include<reg52.h>
14 #include<absacc.h>
15 #include<def_pin.h>
16 #include<def_para.h>
17
18 void WDFeed(void);
19 void nnDisp8x12_1(void);
20 void nnDisp8x12_2(void);
21 void nnDisp8x12_3(void);
22 void nnDisp8x12_4(void);
23
24 void main(void)
25 {
26 1 uint data i=0,j=0,k=0,tp=0;
27 1 bit f_rdram=1;
28 1
29 1 /******************初始化**********************/
30 1 //片内扩展DATA设置
31 1 CHPENR=0x87;
32 1 CHPENR=0x59;
33 1 CHPCON|=0x10;//片内外部存储器写允许 //CHPCON=0x00; ----则片内外部存储器写禁止
34 1 while(1)
35 1 {
36 2 WDFeed();
37 2 if(pin_wrram==0)
38 2 {
39 3 if(f_rdram==1)
40 3 {
41 4 f_rdram=0;
42 4 for(i=0;i<256;i++)
43 4 {
44 5 CHPCON=0x00;
45 5 ce_ram=0;
46 5 tp=nDispRam[i];
47 5 ce_ram=1;
48 5 CHPCON|=0x10;
49 5 tt[i]=tp;
50 5 }
51 4 WDFeed();
52 4 for(i=0;i<128;i++)
53 4 {
54 5 CHPCON=0x00;
55 5 ce_ram=0;
C51 COMPILER V7.09 DISPLAY2X6 07/22/2007 13:27:08 PAGE 2
56 5 tp=nDispRam[256+i];
57 5 ce_ram=1;
58 5 ttt[i]=tp;
59 5 }
60 4 CHPCON|=0x10;
61 4 }
62 3 nnDisp8x12_1();
63 3 nnDisp8x12_2();
64 3 nnDisp8x12_3();
65 3 nnDisp8x12_4();
66 3 }
67 2 else
68 2 {
69 3 ce1_138=1;
70 3 ce2_138=1;
71 3 ce3_138=1;
72 3 ce4_138=1;
73 3 f_rdram=1;
74 3 ce_ram=1;
75 3 }
76 2 }
77 1 }
78
79 /*****************************/
80 /**函数名: 喂狗程序
81 /**参数 : 无
82 /*****************************/
83 void WDFeed(void)
84 {
85 1 wdi=0;
86 1 wdi=1;
87 1 }
88
89 /*****************************/
90 /**函数名: 第一个8行显示程序
91 /**参数 : 无
92 /*****************************/
93 void nnDisp8x12_1(void)
94 {
95 1 uchr serialcnt=0,columncnt=0,linecnt=0,tp=0;
96 1 uint tmp=0;
97 1 for(linecnt=0;linecnt<8;linecnt++) //8行
98 1 {
99 2 for(columncnt=0;columncnt<12;columncnt++) //j个595串联
100 2 {
101 3 tmp=linecnt*12+columncnt;
102 3 tp=tt[tmp];
103 3 for(serialcnt=0;serialcnt<8;serialcnt++)//单个595
104 3 {
105 4 sck=0;
106 4 ser=tp&0x80;
107 4 tp=tp*2;
108 4 sck=1;
109 4 }
110 3 }
111 2 P3=P3&0x80|0x70|linecnt;
112 2 rck=0;
113 2 rck=1;
114 2 }
115 1 }
116
117 /*****************************/
C51 COMPILER V7.09 DISPLAY2X6 07/22/2007 13:27:08 PAGE 3
118 /**函数名: 第二个8行显示程序
119 /**参数 : 无
120 /*****************************/
121 void nnDisp8x12_2(void)
122 {
123 1 uchr serialcnt=0,columncnt=0,linecnt=0,tp=0;
124 1 uint tmp=0;
125 1 for(linecnt=0;linecnt<8;linecnt++) //8行
126 1 {
127 2 for(columncnt=0;columncnt<12;columncnt++) //j个595串联
128 2 {
129 3 tmp=96+linecnt*12+columncnt;
130 3 tp=tt[tmp];
131 3 for(serialcnt=0;serialcnt<8;serialcnt++)//单个595
132 3 {
133 4 sck=0;
134 4 ser=tp&0x80;
135 4 tp=tp*2;
136 4 sck=1;
137 4 }
138 3 }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -